Pass Validation Parameters
Validation parameters let QueryLens compare the placeholders used in SQL text with the values you expect to pass at execution time.
What Matches
- Named parameters like
@Id - Named parameters like
:status - SQLite positional placeholders with
?, which behave differently
Extraction Rules
- Parameters inside string literals are ignored
- Parameters inside comments are ignored
- System variables beginning with
@@are ignored
Example
var statement = new SqlQuery(
"SELECT * FROM dbo.orders WHERE order_id = @Id AND status = @Status",
validationParameters: new { Id = 42 });
Assert.Contains(statement.Errors, issue => issue.Code == "QL0030");