PRF019
Database query in loop
Object Pascal — Delphi & Free Pascal
Warning
Performance
Executing SQL in a loop multiplies database round-trips and degrades throughput
executing SQL in a loop multiplies database round-trips and degrades throughput.
Why this severity
executing SQL in a loop multiplies database round-trips and degrades throughput.
Known false positives
loops that must issue distinct queries against different databases.
Remediation example
Query.SQL.Text := 'SELECT * FROM orders WHERE id IN (:ids)';
Query.ParamByName('ids').AsString := IdList;
Query.Open;Related Performance rules