execute method

  1. @override
Future<int> execute(
  1. String sql, [
  2. dynamic values
])
override

Queues a command for execution, and when done, returns the number of rows affected by the SQL command.

Implementation

@override
Future<int> execute(String sql, [values]) async {
  if (_closed)
    throw StateError("Closed: ${_getErrorMessage(sql, values)}");

  final tmPreSlow = _startSql();
  try {
    _onExecute?.call(sql, values);

    final result = await conn.execute(sql, values);
    _checkSlowSql(sql, values);
    return result;

  } catch (ex, st) {
    if (_shallLogError(this, sql, ex))
      _logger.severe("Failed to execute: ${_getErrorMessage(sql, values)}", ex, st);
    rethrow;

  } finally {
    tmPreSlow?.cancel();
  }
}