SqliteDatabaseMixin mixin
Methods
-
close()
→ Future<void>
-
inherited
-
computeWithDatabase<T>(Future<T> compute(CommonDatabase db))
→ Future<T>
-
Run a function within a database isolate, with direct synchronous access
to the underlying database.
inherited
-
execute(String sql, [List<Object?> parameters = const []])
→ Future<ResultSet>
-
Execute a write query (INSERT, UPDATE, DELETE) and return the results (if any).
inherited
-
executeBatch(String sql, List<List<Object?>> parameterSets)
→ Future<void>
-
Execute a write query (INSERT, UPDATE, DELETE) multiple times with each
parameter set. This is faster than executing separately with each
parameter set.
inherited
-
get(String sql, [List<Object?> parameters = const []])
→ Future<Row>
-
Execute a read-only (SELECT) query and return a single result.
inherited
-
getAll(String sql, [List<Object?> parameters = const []])
→ Future<ResultSet>
-
Execute a read-only (SELECT) query and return the results.
inherited
-
getAutoCommit()
→ Future<bool>
-
Returns true if auto-commit is enabled. This means the database is not
currently in a transaction. This may be true even if a transaction lock
is still held, when the transaction has been committed or rolled back.
inherited
-
getOptional(String sql, [List<Object?> parameters = const []])
→ Future<Row?>
-
Execute a read-only (SELECT) query and return a single optional result.
inherited
-
initialize()
→ Future<void>
-
Wait for initialization to complete.
-
isolateConnectionFactory()
→ IsolateConnectionFactory<CommonDatabase>
-
A connection factory that can be passed to different isolates.
-
noSuchMethod(Invocation invocation)
→ dynamic
-
Invoked when a nonexistent method or property is accessed.
inherited
-
onChange(Iterable<String>? tables, {Duration throttle = const Duration(milliseconds: 30), bool triggerImmediately = true})
→ Stream<UpdateNotification>
-
Create a Stream of changes to any of the specified tables.
inherited
-
readLock<T>(Future<T> callback(SqliteReadContext tx), {Duration? lockTimeout, String? debugContext})
→ Future<T>
-
Takes a read lock, without starting a transaction.
inherited
-
readTransaction<T>(Future<T> callback(SqliteReadContext tx), {Duration? lockTimeout})
→ Future<T>
-
Open a read-only transaction.
inherited
-
refreshSchema()
→ Future<void>
-
Ensures that all connections are aware of the latest schema changes applied (if any).
Queries and watch calls can potentially use outdated schema information after a schema update.
inherited
-
toString()
→ String
-
A string representation of this object.
inherited
-
watch(String sql, {List<Object?> parameters = const [], Duration throttle = const Duration(milliseconds: 30), Iterable<String>? triggerOnTables})
→ Stream<ResultSet>
-
Execute a read query every time the source tables are modified.
inherited
-
withAllConnections<T>(Future<T> block(SqliteWriteContext writer, List<SqliteReadContext> readers))
→ Future<T>
-
Locks all underlying connections making up this database, and gives
block
access to all of them at once.
This can be useful to run the same statement on all connections. For instance,
ATTACHing a database, that is expected to be available in all connections.
-
writeLock<T>(Future<T> callback(SqliteWriteContext tx), {Duration? lockTimeout, String? debugContext})
→ Future<T>
-
Takes a global lock, without starting a transaction.
inherited
-
writeTransaction<T>(Future<T> callback(SqliteWriteContext tx), {Duration? lockTimeout})
→ Future<T>
-
Open a read-write transaction.
inherited