isSelectQuery static method

bool isSelectQuery(
  1. String sql
)

SELECT, read-only WITH/PRAGMA/EXPLAIN — dijalankan lewat jalur query berpaginasi, bukan executeStatement.

Implementation

static bool isSelectQuery(String sql) {
  final trimmed = sql.trim();
  if (trimmed.isEmpty) return false;

  if (RegExp(r'^\s*select\b', caseSensitive: false).hasMatch(trimmed)) {
    return true;
  }
  if (RegExp(r'^\s*explain\b', caseSensitive: false).hasMatch(trimmed)) {
    return true;
  }
  if (RegExp(r'^\s*pragma\b', caseSensitive: false).hasMatch(trimmed)) {
    return _isReadOnlyPragma(trimmed);
  }
  if (RegExp(r'^\s*with\b', caseSensitive: false).hasMatch(trimmed)) {
    return _isReadOnlyWithQuery(trimmed);
  }
  return false;
}