![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TQuery vs. TUpdateSQL
mrcat © (2002-04-17 11:01:00)Помогите разобраться, плиз. После выполнения запроса выходит AV.
Есть, конечно, компонент Update.SQL, но разве нельзя здесь обойтись без него? или я что-то не правильно делаю?
Есть следующий код:
var
qS: TQuery;
...
with qS.SQL do begin
Clear;
Add("UPDATE "CISC.DB" SET Name="N#1, Phone="P#1", WHERE ID =
"ID#1"");
end;
qS.ExecSQL; // Error: Invalid use of keyword. TOKEN: UPDATE
Anatoly Podgoretsky (2002-04-17 14:43:00) [1]Что то не видать где создается qS, не в этом ли проблема?
evgeg (2002-04-17 12:33:00) [2]Проверьте, задан ли DatabaseName у TQuery. Уберите кавычки с "CISC.DB".
mrcat (2002-04-17 11:50:00) [3]EDBEngineError происходит при вызове ExecSQL
Wasp (2002-04-17 11:44:00) [4]Так что за ошибка: Access Violation (если я правильно понял AV) или в UPDATE?
mrcat (2002-04-17 11:43:00) [5]Нет, ну ту же сторку забиваю в UpdateSQL - и все работает...
var
qS: TUpdateSQL;
...
with qS.ModifySQL do begin
Clear;
Add("UPDATE "CISC.DB" SET Name="N#1", Phone="P#1" WHERE
ID="ID#1"");
end;
qS.ExecSQL(ukModify);
// Ошибки нет!
Wasp (2002-04-17 11:36:00) [6]Так что за ошибка: Access Violation (если я правильно понял AV) или в UPDATE?
Turalyon (2002-04-17 11:35:00) [7]>mrcat ©
А можно поподробнее про то что у обозначено ...
Может проблемы какие там. А вообще согласен с Wasp AV возникает не от неверного синтаксиса SQL... ИМО
mrcat (2002-04-17 11:30:00) [8]Динамически, статически. Пробовал по разному - результат один...
Wasp (2002-04-17 11:26:00) [9]Насколько я понимаю, Access Violation никак не связана с БД и SQL, надо искать ошибку в другом месте. Вы создаете объект qS динамически?
mrcat (2002-04-17 11:17:00) [10]:) очепятка, на самом деле:
UPDATE "CISC.DB" SET Name="N#1", Phone="P#1" WHERE ID = "ID#1""
Wasp (2002-04-17 11:13:00) [11]Перед WHERE не нужна запятая и проверьте кавычки на парность.