pub struct Session<T = Bound>(/* private fields */);
Expand description
A session object is used to execute queries and maintains cluster state through the control connection. The control connection is used to auto-discover nodes and monitor cluster changes (topology and schema). Each session also maintains multiple /pools of connections to cluster nodes which are used to query the cluster.
Instances of the session object are thread-safe to execute queries.
Implementations§
Source§impl<S> Session<S>where
S: SessionScope,
impl<S> Session<S>where
S: SessionScope,
Sourcepub fn statement(&self, query: impl AsRef<str>) -> Statement<S>
pub fn statement(&self, query: impl AsRef<str>) -> Statement<S>
Creates a statement with the given query.
Sourcepub async fn execute(&self, query: impl AsRef<str>) -> Result<CassResult>
pub async fn execute(&self, query: impl AsRef<str>) -> Result<CassResult>
Executes a given query.
Sourcepub fn batch(&self, batch_type: BatchType) -> Batch<S>
pub fn batch(&self, batch_type: BatchType) -> Batch<S>
Creates a new batch that is bound to this session.
Sourcepub fn get_schema_meta(&self) -> SchemaMeta
pub fn get_schema_meta(&self) -> SchemaMeta
Gets a snapshot of this session’s schema metadata. The returned snapshot of the schema metadata is not updated. This function must be called again to retrieve any schema changes since the previous call.
Sourcepub fn get_metrics(&self) -> SessionMetrics
pub fn get_metrics(&self) -> SessionMetrics
Gets a copy of this session’s performance/diagnostic metrics.