Delphi admite declaraciones SQL parametrizadas, pero rara vez uso los atributos de parámetros/parámetros, y generalmente construyo SQL por mí mismo.
Use sql.text: = 'select * from ..where id =' ''+edit1.Text+'' '' ';
Sin embargo, este método requiere ataques de inyección SQL cuidadosos.
Hoy, cambié a la propiedad de parámetros del control de Adoquery. Dado que solo uso un control de Adoquery, y las declaraciones y parámetros SQL en las declaraciones a menudo cambian, primero usé el siguiente código en el programa:
............
Adoq.Parameters.Clear;
Adoq.Parameters.CreateParameter (...);
Adoq.Parameters.CreateParameter (...);
Adoq.sql.Clear;
Adoq.sql.assign (memo1.Text);
............
Una vez ejecutado, a veces es normal, a veces se informa, y se dice que algo es una configuración incorrecta de parámetros incorrectos (se usa para acceder).
Después de dos días de lanzamiento, descubrí que se debe usar el siguiente código (es realmente extraño):
............
Adoq.Parameters.Clear;
Parami: = Adoq.Parameters.addparameter;
Parami.name: = ...;
Parami: = Adoq.Parameters.addparameter;
Parami.name: = ...;
//Adoq.sql.clear;
Adoq.sql.assign (memo1.Text);
............