![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Параметризованные запросыDelphi , Базы данных , SQLПараметризованные запросыКак мне передать переменную в запрос? Сначала вы должны создать запрос, использующий переменную. Select Test."FName", Test."Salary Of Employee" From Test Where Test."Salary of Employee" > :valПримечание: Если вы просто пишете имя поля как "Salary of Employee", вы получите ошибку "Capability Not Supported". Это должно быть просто Test."Salary of Employee". В нашем случае имя переменной "val", но это может быть любое другое (естественно). Затем вы переходите к свойству TQuery's params и устанавливаете параметр "val" в зависимости от требуемого типа. В нашем примере мы используем тип integer. Затем вы должны создать код, устанавливающий значение параметра. Для задания значения мы будем использовать компонент TEdit.
Примечание: рекомендуем в качестве меры предосторожности разместить приведенный выше код в блоке try..except. Если в своем запросе вы хотите использовать ключевое слово LIKE, то вы можете сделать это так: Примечание: Следующий код использует таблицу пользователя, расположенную в каталоге \delphi\demos\data. При этом также возможно использование псевдонима DBDEMOS. Код SQL для свойства TQuery.SQL: SELECT * FROM CUSTOMER WHERE Company LIKE :CompanyName Код Delphi:
Альтернативный способ передачи параметра (с последующим использованием ParamByName) - params[TheParameterNumber]. Вот демонстрация такого способа:
или, в качестве альтернативы:
Хитрость шаблона - в конкатенирующем знаке процента в конце параметра. Параметризованные запросы в Delphi позволяют передавать переменные в запрос, создавая параметры в запросе и устанавливающими их значение с помощью компонентов TQuery или TEdit. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |