query method

Future<Rows> query(
  1. String sql, {
  2. String? queryId,
  3. String? quotaKey,
  4. Map<String, Object?>? settings,
  5. Map<String, String>? parameters,
  6. void onProgress(
    1. Progress
    )?,
  7. Duration? timeout,
  8. List<ExternalTable>? externalTables,
  9. List<Object?>? args,
})

Implementation

Future<Rows> query(
  String sql, {
  String? queryId,
  String? quotaKey,
  Map<String, Object?>? settings,
  Map<String, String>? parameters,
  void Function(Progress)? onProgress,
  Duration? timeout,
  List<ExternalTable>? externalTables,
  List<Object?>? args,
}) async {
  final conn = await _acquire();
  try {
    final rows = await conn.query(sql,
        queryId: queryId,
        quotaKey: quotaKey,
        settings: settings,
        parameters: parameters,
        onProgress: onProgress,
        timeout: timeout,
        externalTables: externalTables,
        args: args);
    rows.setOnClose(() => _release(conn));
    return rows;
  } catch (e) {
    _release(conn, isError: true);
    rethrow;
  }
}