IOdbcService class abstract

Interface for ODBC service operations.

Allows decorators and alternative implementations to be used interchangeably via dependency injection.

Implementers

Constructors

IOdbcService()

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

asyncCancel(int requestId) Future<Result<void>>
asyncFree(int requestId) Future<Result<void>>
asyncGetResult(int requestId, {int? maxBufferBytes}) Future<Result<QueryResult>>
asyncPoll(int requestId) Future<Result<int>>
beginTransaction(String connectionId, {IsolationLevel? isolationLevel, SavepointDialect? savepointDialect, TransactionAccessMode? accessMode, Duration? lockTimeout}) Future<Result<int>>
bulkInsert(String connectionId, String table, List<String> columns, List<int> dataBuffer, int rowCount) Future<Result<int>>
bulkInsertParallel(int poolId, String table, List<String> columns, List<int> dataBuffer, int rowCount, {int parallelism = 0}) Future<Result<int>>
cancelStatement(String connectionId, int stmtId) Future<Result<void>>
cancelStream(int streamId) Future<Result<void>>
catalogColumns(String connectionId, String table) Future<Result<QueryResult>>
catalogForeignKeys(String connectionId, String table) Future<Result<QueryResult>>
catalogIndexes(String connectionId, String table) Future<Result<QueryResult>>
catalogPrimaryKeys(String connectionId, String table) Future<Result<QueryResult>>
catalogTables({required String connectionId, String catalog = '', String schema = ''}) Future<Result<QueryResult>>
catalogTypeInfo(String connectionId) Future<Result<QueryResult>>
clearAllStatements() Future<Result<void>>
clearAuditEvents() Future<Result<void>>
clearMetadataCache() Future<Result<void>>
clearStatementCache() Future<Result<void>>
closeStatement(String connectionId, int stmtId) Future<Result<void>>
commitTransaction(String connectionId, int txnId) Future<Result<void>>
connect(String connectionString, {ConnectionOptions? options}) Future<Result<Connection>>
createSavepoint(String connectionId, int txnId, String name) Future<Result<void>>
detectDriver(String connectionString) Future<String?>
disconnect(String connectionId) Future<Result<void>>
dispose() → void
executeAsyncStart(String connectionId, String sql) Future<Result<int>>
executePrepared(String connectionId, int stmtId, List? params, StatementOptions? options) Future<Result<QueryResult>>
executePreparedNamed(String connectionId, int stmtId, Map<String, Object?> namedParams, StatementOptions? options) Future<Result<QueryResult>>
executeQuery(String sql, {List? params, String? connectionId}) Future<Result<QueryResult>>
executeQueryDirectedParams(String connectionId, String sql, List<DirectedParam> params) Future<Result<QueryResult>>
Like executeQueryParams for OUT / INOUT (DRT1 on the wire).
executeQueryMulti(String connectionId, String sql) Future<Result<QueryResult>>
executeQueryMultiFull(String connectionId, String sql) Future<Result<QueryResultMulti>>
executeQueryMultiParams(String connectionId, String sql, List params) Future<Result<QueryResultMulti>>
Executes a parameterised batch SQL and returns all multi-result items.
executeQueryNamed(String connectionId, String sql, Map<String, Object?> namedParams) Future<Result<QueryResult>>
executeQueryParams(String connectionId, String sql, List params) Future<Result<QueryResult>>
getAuditEvents({int limit = 0}) Future<Result<List<Map<String, Object?>>>>
getAuditStatus() Future<Result<Map<String, Object?>>>
getConnectionDbmsInfo(String connectionId) Future<Result<DbmsInfo>>
getDriverCapabilities(String connectionString) Future<Result<Map<String, Object?>>>
getMetrics() Future<Result<OdbcMetrics>>
getPreparedStatementsMetrics() Future<Result<PreparedStatementMetrics>>
getVersion() Future<Result<Map<String, String>>>
initialize() Future<Result<void>>
isInitialized() bool
metadataCacheEnable({required int maxEntries, required int ttlSeconds}) Future<Result<void>>
metadataCacheStats() Future<Result<Map<String, Object?>>>
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
poolClose(int poolId) Future<Result<void>>
poolCreate(String connectionString, int maxSize, {PoolOptions? options}) Future<Result<int>>
poolGetConnection(int poolId) Future<Result<Connection>>
poolGetState(int poolId) Future<Result<PoolState>>
poolGetStateDetailed(int poolId) Future<Result<Map<String, Object?>>>
poolHealthCheck(int poolId) Future<Result<bool>>
poolReleaseConnection(String connectionId) Future<Result<void>>
poolSetSize(int poolId, int newMaxSize) Future<Result<void>>
prepare(String connectionId, String sql, {int timeoutMs = 0}) Future<Result<int>>
prepareNamed(String connectionId, String sql, {int timeoutMs = 0}) Future<Result<int>>
releaseSavepoint(String connectionId, int txnId, String name) Future<Result<void>>
rollbackToSavepoint(String connectionId, int txnId, String name) Future<Result<void>>
rollbackTransaction(String connectionId, int txnId) Future<Result<void>>
runInTransaction<T extends Object>(String connectionId, Future<Result<T>> action(int txnId), {IsolationLevel? isolationLevel, SavepointDialect? savepointDialect, TransactionAccessMode? accessMode, Duration? lockTimeout}) Future<Result<T>>
Runs action inside a transaction with automatic commit on success and rollback on any failure (returned Failure or thrown exception).
runInXaTransaction<T extends Object>(String connectionId, Xid xid, Future<Result<T>> action(XaTransactionHandle xa), {bool onePhase = false}) Future<Result<T>>
Runs action inside a distributed XA / 2PC branch on connectionId.
setAuditEnabled({required bool enabled}) Future<Result<void>>
setLogLevel(int level) Future<Result<void>>
streamPollAsync(int streamId) Future<Result<int>>
streamQuery(String connectionId, String sql) Stream<Result<QueryResult>>
streamQueryMulti(String connectionId, String sql) Stream<Result<QueryResultMultiItem>>
Streams a multi-result batch one item at a time. New in v3.3.0 (M8).
streamStartAsync(String connectionId, String sql, {int fetchSize = 1000, int chunkSize = 64 * 1024}) Future<Result<int>>
toString() String
A string representation of this object.
inherited
validateConnectionString(String connectionString) Future<Result<void>>

Operators

operator ==(Object other) bool
The equality operator.
inherited