FAQ
Is QueryLens a runtime safety tool?
No. QueryLens is a test-time validation tool.
Does QueryLens execute SQL?
No. It validates SQL text and metadata, but does not run the statement.
Do I need a database connection?
Not for Level 1 or Level 2. You only need one when loading a schema snapshot for Level 3.
Do I need Dapper?
No. QueryLens works with Dapper, ADO.NET, or any code that stores SQL as text.
Can I validate SQL without choosing a dialect?
Yes. That is Level 1 generic validation.
Can I override the dialect on one statement?
Yes. Statement constructors accept an optional per-statement dialectProfile.
Can I use QueryLens in parallel tests?
Yes, but configure the global runtime before validation begins.
Why does QueryLens freeze after first validation?
To keep cached validation deterministic and safe.
What databases are supported for dialect validation?
Generic SQL, SQL Server, PostgreSQL, MySQL, SQLite, and Oracle profiles are currently exposed.
What databases are supported for schema loading today?
Schema loading is currently SQL Server-backed.
Can QueryLens scan assemblies?
Yes. Use ValidateAssembly(...) or RetrieveSqlStatementsFromAssembly(...).
Can QueryLens validate stored procedures?
Yes. SqlStoredProc supports schema-backed stored procedure existence checks.
Example
var proc = new SqlStoredProc("EXEC dbo.usp_sync_orders @BatchId = @BatchId");
Assert.True(proc.IsValid || proc.Errors.Count >= 0);