ScyllaDB University Live | Free Virtual Training Event
Learn more
ScyllaDB Documentation Logo Documentation
  • Server
  • Cloud
  • Tools
    • ScyllaDB Manager
    • ScyllaDB Monitoring Stack
    • ScyllaDB Operator
  • Drivers
    • CQL Drivers
    • DynamoDB Drivers
  • Resources
    • ScyllaDB University
    • Community Forum
    • Tutorials
Download
ScyllaDB Docs Scylla Rust Driver Data Types Bool, Tinyint, Smallint, Int, Bigint, Float, Double

Caution

You're viewing documentation for an unstable version of Scylla Rust Driver. Switch to the latest stable version.

Bool, Tinyint, Smallint, Int, Bigint, Float, Double¶

Bool¶

Bool is represented as rust bool

use futures::TryStreamExt;

// Insert a bool into the table
let to_insert: bool = true;
session
    .query_unpaged("INSERT INTO keyspace.table (a) VALUES(?)", (to_insert,))
    .await?;

// Read a bool from the table
let mut iter = session.query_iter("SELECT a FROM keyspace.table", &[])
    .await?
    .rows_stream::<(bool,)>()?;
while let Some((bool_value,)) = iter.try_next().await? {
    println!("{:?}", bool_value);
}

Tinyint¶

Tinyint is represented as rust i8

use futures::TryStreamExt;

// Insert a tinyint into the table
let to_insert: i8 = 123;
session
    .query_unpaged("INSERT INTO keyspace.table (a) VALUES(?)", (to_insert,))
    .await?;

// Read a tinyint from the table
let mut iter = session.query_iter("SELECT a FROM keyspace.table", &[])
    .await?
    .rows_stream::<(i8,)>()?;
while let Some((tinyint_value,)) = iter.try_next().await? {
    println!("{:?}", tinyint_value);
}

Smallint¶

Smallint is represented as rust i16

use futures::TryStreamExt;

// Insert a smallint into the table
let to_insert: i16 = 12345;
session
    .query_unpaged("INSERT INTO keyspace.table (a) VALUES(?)", (to_insert,))
    .await?;

// Read a smallint from the table
let mut iter = session.query_iter("SELECT a FROM keyspace.table", &[])
    .await?
    .rows_stream::<(i16,)>()?;
while let Some((smallint_value,)) = iter.try_next().await? {
    println!("{}", smallint_value);
}

Int¶

Int is represented as rust i32

use futures::TryStreamExt;

// Insert an int into the table
let to_insert: i32 = 12345;
session
    .query_unpaged("INSERT INTO keyspace.table (a) VALUES(?)", (to_insert,))
    .await?;

// Read an int from the table
let mut iter = session.query_iter("SELECT a FROM keyspace.table", &[])
    .await?
    .rows_stream::<(i32,)>()?;
while let Some((int_value,)) = iter.try_next().await? {
    println!("{}", int_value);
}

Bigint¶

Bigint is represented as rust i64

use futures::TryStreamExt;

// Insert a bigint into the table
let to_insert: i64 = 12345;
session
    .query_unpaged("INSERT INTO keyspace.table (a) VALUES(?)", (to_insert,))
    .await?;

// Read a bigint from the table
let mut iter = session.query_iter("SELECT a FROM keyspace.table", &[])
    .await?
    .rows_stream::<(i64,)>()?;
while let Some((bigint_value,)) = iter.try_next().await? {
    println!("{:?}", bigint_value);
}

Float¶

Float is represented as rust f32

use futures::TryStreamExt;

// Insert a float into the table
let to_insert: f32 = 123.0;
session
    .query_unpaged("INSERT INTO keyspace.table (a) VALUES(?)", (to_insert,))
    .await?;

// Read a float from the table
let mut iter = session.query_iter("SELECT a FROM keyspace.table", &[])
    .await?
    .rows_stream::<(f32,)>()?;
while let Some((float_value,)) = iter.try_next().await? {
    println!("{:?}", float_value);
}

Double¶

Double is represented as rust f64

use futures::TryStreamExt;

// Insert a double into the table
let to_insert: f64 = 12345.0;
session
    .query_unpaged("INSERT INTO keyspace.table (a) VALUES(?)", (to_insert,))
    .await?;

// Read a double from the table
let mut iter = session.query_iter("SELECT a FROM keyspace.table", &[])
    .await?
    .rows_stream::<(f64,)>()?;
while let Some((double_value,)) = iter.try_next().await? {
    println!("{:?}", double_value);
}

Was this page helpful?

PREVIOUS
Data Types
NEXT
Ascii, Text, Varchar
  • Create an issue
  • Edit this page

On this page

  • Bool, Tinyint, Smallint, Int, Bigint, Float, Double
    • Bool
    • Tinyint
    • Smallint
    • Int
    • Bigint
    • Float
    • Double
Scylla Rust Driver
  • main
    • main
    • v1.1.0
    • v1.0.0
  • Scylla Rust Driver
  • Quick Start
    • Creating a project
    • Connecting and running a simple query
    • Running Scylla using Docker
  • Connecting to the cluster
    • Compression
    • Authentication
    • TLS
  • Executing CQL statements - best practices
    • Unprepared statement
    • Statement values
    • Query result
    • Prepared statement
    • Batch statement
    • Paged query
    • USE keyspace
    • Schema agreement
    • Lightweight transaction (LWT) statement
    • Request timeouts
    • Timestamp generators
  • Execution profiles
    • Creating a profile and setting it
    • All options supported by a profile
    • Priorities of execution settings
    • Remapping execution profile handles
  • Data Types
    • Bool, Tinyint, Smallint, Int, Bigint, Float, Double
    • Ascii, Text, Varchar
    • Counter
    • Blob
    • Inet
    • Uuid
    • Timeuuid
    • Date
    • Time
    • Timestamp
    • Duration
    • Decimal
    • Varint
    • List, Set, Map
    • Tuple
    • User defined types
    • Vector
  • Load balancing
    • DefaultPolicy
  • Retry policy configuration
    • Fallthrough retry policy
    • Default retry policy
    • Downgrading consistency retry policy
  • Speculative execution
    • Simple speculative execution
    • Percentile speculative execution
  • Driver metrics
  • Migration guides
    • Adjusting code to changes in serialization API introduced in 0.11
    • Adjusting code to changes in deserialization API introduced in 0.15
  • Logging
  • Query tracing
    • Tracing a simple/prepared/batch query
    • Tracing a paged query
    • Tracing Session::prepare
    • Query Execution History
  • Schema
Docs Tutorials University Contact Us About Us
© 2025, ScyllaDB. All rights reserved. | Terms of Service | Privacy Policy | ScyllaDB, and ScyllaDB Cloud, are registered trademarks of ScyllaDB, Inc.
Last updated on 08 May 2025.
Powered by Sphinx 7.4.7 & ScyllaDB Theme 1.8.6