The Rust driver’s session.execute seems to have a prepared values limited of 16. How does one use prepared statements to insert/update tables with numerous columns? For reference please see the update function below which includes 16 values. If I add one additional column, error[E0277] is surfaced.
pub async fn create(session: &Session, user: &User) -> Result<()> {
let query = "INSERT INTO users (user_id, username, default_group_id, email, first_name, is_deleted, is_email_verified, is_phone_verified, is_public_profile, is_vendor, last_name, phone, profile_image, time_zone_id, create_on, last_seen_on, updated_on) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
let prepared = session.prepare(query).await?;
session
.execute(
&prepared,
(
user.user_id,
&user.username,
user.default_group_id,
&user.email,
&user.first_name,
user.is_deleted,
user.is_verified,
user.is_public_profile,
user.is_vendor,
&user.last_name,
&user.phone,
&user.profile_image,
user.time_zone_id,
&user.create_on,
&user.last_seen_on,
&user.updated_on,
),
)
.await?;
Ok(())
}