![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Кавычки в текстовых полях SQL-запросов
Егоров А.Н. © (2007-01-25 10:41:00)Подскажите, пожалуйста, как написать кавычки в текстовом поле таблицы (Delphi 7, ADO, провайдер VFPOLEDB v.8, базы FoxPro 3.x). Запрос на изменение записи:
with ADOQuery.SQL do
begin
Clear;
Add('Update "C:\table_1.dbf"');
Add(' set name="ООО ""Предприятие"""');
Add(' where code="000001"');
end;
ADOQuery.ExecSQL;
выдает ошибку "Command contains unrecognized phrase/keyword", которая связана с
' set name="ООО ""Предприятие"""'.
Johnmen (2007-01-25 17:51:00) [21]
> Makcim © (25.01.07 17:48) [4]
> Если хочеш что б SQL не видел кавычек используй #39, это
> таже самая кавычка, только SQL не определит её как конец
> запроса !
А какую определит?
Makcim (2007-01-25 17:48:00) [22]Если хочеш что б SQL не видел кавычек используй #39, это таже самая кавычка, только SQL не определит её как конец запроса !
zdm (2007-01-25 17:47:00) [23]
> Егоров А.Н. (25.01.07 10:41)
Параметры это лучшее решение. Но если нравятся кавычки поюзай QuotedStr('dddddd')
ЮЮ (2007-01-25 10:54:00) [24]Надеюсь твоя прога поддерживает весь известный перечень предприятий? :) Или пользователю тяжело 'ООО' набрать? Зачем это в коде программы?
ADOQuery.SQL.Text := 'Update "C:\table_1.dbf" set name= :name where code = :code';
ADOQuery.Parameters[0].Value := NameEdit.Text;
ADOQuery.Parameters[1].Value := ...
P.S. Update запрос и само ADO может сформировать и выполнить. Достаточно в TDBEdite исправить значение поля name.
stone (2007-01-25 10:46:00) [25]
> Егоров А.Н. (25.01.07 10:41)
Сколько раз уже обсуждалось - пользуйся параметрами.