![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
SQL в TQuery [D7, XP]
mih © (2007-01-05 19:26:00)Здравствуйте! Помогите написать запрос. Есть запрос в TQuery:
Query1.sql.text:='Select NAME_DET,ZAKUP from DETALI where NAME_DET like ''%2003%''';
не получается исправить запрос так чтоб вместо %2003% было что-то типа Edit1.Text , из поля ввода на форме.
mih (2007-01-09 22:04:00) [1]Все работает спасибо !
sniknik (2007-01-09 21:59:00) [2]Query1.Parambyname('zapros').AsString:='%'+Edit1.Text+'%';
mih (2007-01-09 21:51:00) [3]С количеством апострофов это я не скопировал ( на самом деле он есть ).
Применил ParamByName , но по запросу получаю пустую строку.
Query1.active:=false;
Query1.sql.text:='Select NAME_DET,ZAKUP from DETALI where NAME_DET like :zapros';
Query1.Parambyname('zapros').AsString:='''%'' + Edit1.Text + ''%''';
Query1.active:=true;
Подскажите что не так.
Anatoly Podgoretsky (2007-01-06 12:08:00) [4]> mih (06.01.2007 10:52:04) [4]
Естественно такого токена нет, теперь считай количество апострофов в запросе и балансируй их, или лучше поступить как не нормальные пацаны - использовать параметры, ну или хотя бы QuotedStr. Да и зачем тебе кроме неверного количества апострофов еще и двойные кавычки? Никак понять не могу.
Нескромный вопрос, ты документацию по SQL читал или нет?
Steep (2007-01-06 11:58:00) [5]
> Select NAME_DET,ZAKUP from "DETALI" where NAME_DET like
> ''''%''+Edit1.Text+''%''''';
Query1.sql.text:='Select NAME_DET,ZAKUP from DETALI where NAME_DET like ''%'++Edit1.Text+'%'''
Ну а если нармально делать то смотри 3
mih (2007-01-06 10:52:00) [6]Спасибо всем за подсказки! Запрос поправил. начал работать вот в таком виде Select NAME_DET,ZAKUP from "DETALI" where NAME_DET like ''''%''+Edit1.Text+''%''''';но заканчивается все ошибкой 'Token not found.Token:"
try (2007-01-05 19:49:00) [7]изучай Params
Ученик чародея (2007-01-05 19:49:00) [8]кури
ParamByName('имя параметра').ASтип
Palladin (2007-01-05 19:28:00) [9]изучай оператор +