Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

adoQuery проблема с update данных [D7, MySQL]


alienka ©   (2003-12-08 18:08:00) 

Суть проблемы: при помощи adoQuery делается update данных в таблице.
qtest.sql.clear;
qtest.sql.text:="update users set fio="" + ccc+ "" where id_user=""" + ncont + """";
qtest.ExecSQL;

Все выполняется без ошибок. Но если попробовать после этого в Grid просмотреть данные, передвинуть курсор на другую запись конечно же ругается на изменение и несоответствие данных.
Добавила строчки для обновления:
adoqueryUsers.close;
adoqueryUsers.open;

На моменте открытия запроса - ругается "access violation".
Что делаю не так?

По моему похожий вопрос тут уже задавался, но в архиве его найти не смогла.


Silver Alex   (2003-12-08 23:50:00) [1]


> qtest.sql.text:="update users set fio="" + ccc+ "" where
> id_user=""" + ncont + """";

лучше написать так
qtest.sql.clear;
qtest.sql.text:="update users set fio=:fio where id_user=:id_user;
qtest.Parameters.ParamByName("fio").AsString:=ccc;
qtest.Parameters.ParamByName("id_user").AsString:=ncont;
qtest.ExecSQL;

а по поводу "access violation" надо бы больше узнать как там все у тебя делается, а еще лучше код глянуть


alienka   (2003-12-08 23:48:00) [2]

Прочитала на королевстве, что после добавления данных нужно обновить источник - ApplyUpdate, но это только для TQuery. Есть что-нибудь похожее для ADOQuery? Думаю, это ответ на мой вопрос с update!


alienka   (2003-12-08 18:55:00) [3]

Попробовала.
Иногда появляется та же самая ошибка, иногда - нет ошибок вообще.


Vick   (2003-12-08 18:14:00) [4]

попробуй делать

adoqueryUsers.close;

перед qtest.ExecSQL;


Наверх

Титульная страница Поиск, карта сайта Написать письмо