pub fn extract_table_operations(
dialect: &dyn Dialect,
sql: &str,
) -> Result<Vec<Result<TableOperation, Error>>, Error>Expand description
Convenience function to extract table-level operations from SQL using
the dialect defaults (no catalog, dialect-derived casing). For a
catalog or a casing override, use
extract_table_operations_with_options.
ยงExample
use sql_insight::sqlparser::dialect::GenericDialect;
use sql_insight::extractor::{extract_table_operations, StatementKind};
let dialect = GenericDialect {};
let result = extract_table_operations(&dialect, "SELECT * FROM users").unwrap();
let ops = result[0].as_ref().unwrap();
assert_eq!(ops.statement_kind, StatementKind::Select);
assert_eq!(ops.reads.len(), 1);
assert_eq!(ops.reads[0].reference.name.value, "users");
assert!(ops.writes.is_empty());