Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.05.2010, 10:10   #1
kmvteam
Пользователь
 
Регистрация: 28.04.2010
Сообщений: 21
По умолчанию Проблема с Update через AdoQuery

Добрый день.
Необходимо обновить данные в таблице, при попытке выполнить код обновления вываливается ошибка:"текущий поставщик не поддерживает возврат нескольких наборов записей в результате выполнения одной
операций"
Имеется форма 3 на ней AdoQuery1
Имеется форма 11 на ней данный код:

Цитата:
procedure TForm11.Button1Click(Sender: TObject);
begin
Form3.adoquery1.close;
Form3.adoquery1.sql.text:='UPDATE Картотека SET Инструктаж=:Инструктаж'; //,Медосмотр=:Медосмотр
if CheckBox3.Checked then
Begin
/// Form3.adoquery1.Parameters.ParamByN ame('Медосмотр').value:='да';
// Form3.adoquery1.Parameters.ParamByN ame('Дата_медосмотра').value:=DateT oStr(DateTimePicker1.Date);
End
Else
Begin
// Form3.adoquery1.Parameters.ParamByN ame('Медосмотр').value:='нет';
End;
//
if CheckBox4.Checked then
Begin
Form3.adoquery1.Parameters.ParamByN ame('Инструктаж').value:='да';
// Form3.adoquery1.Parameters.ParamByN ame('Дата_инструктажа').value:=Date ToStr(DateTimePicker4.Date);
End
Else
Begin
Form3.adoquery1.Parameters.ParamByN ame('Инструктаж').value:='нет';
End;
Form3.ADOQuery1.ExecSQL;
Form3.Show; //Открываем картотеку
Form3.adoquery1.open;
Form11.Close; //закрываем Форму добовления сотрудника
end;
Кто может подсказать в чем ошибка?
kmvteam вне форума Ответить с цитированием
Старый 12.05.2010, 10:27   #2
kmvteam
Пользователь
 
Регистрация: 28.04.2010
Сообщений: 21
По умолчанию

Разобрался эта строчка была лишней:
//Form3.adoquery1.open;

Теперь другой вопрос у записывается весь столбец, а необходимо только одну строчку в таблице картотека
kmvteam вне форума Ответить с цитированием
Старый 12.05.2010, 10:38   #3
Dark_Spirit
Форумчанин
 
Аватар для Dark_Spirit
 
Регистрация: 05.02.2009
Сообщений: 324
По умолчанию

Код:
 Form3.adoquery1.sql.text:='UPDATE Картотека SET Инструктаж=:Инструктаж'+#13+where <условие>;
Тяжело быть бестолковым.....
Dark_Spirit вне форума Ответить с цитированием
Старый 12.05.2010, 10:58   #4
kmvteam
Пользователь
 
Регистрация: 28.04.2010
Сообщений: 21
По умолчанию

Цитата:
Сообщение от Dark_Spirit Посмотреть сообщение
Код:
 Form3.adoquery1.sql.text:='UPDATE Картотека SET Инструктаж=:Инструктаж'+#13+where <условие>;
На форме 3 есть DbGrid как привязать к нему?
То есть выбрана строчка два в DbGrid, как изменять только её?
kmvteam вне форума Ответить с цитированием
Старый 12.05.2010, 11:26   #5
Dark_Spirit
Форумчанин
 
Аватар для Dark_Spirit
 
Регистрация: 05.02.2009
Сообщений: 324
По умолчанию

1. нужно узнать id (ну или что-то в этом роде выделенной записи)
например:
Код:
 id:=form3.dbgrid1.DataSource.DataSet.FieldByName(<поле_с_id>).Value
2.
Код:
 Form3.adoquery1.sql.text:='UPDATE Картотека SET Инструктаж=:Инструктаж'+#13+'where <имя_поля_с_id>='+inttostr(id);
Тяжело быть бестолковым.....
Dark_Spirit вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с авторизацией через IdHttp ]Wowan[ Работа с сетью в Delphi 13 20.01.2011 02:42
Извлечь данные из access через AdoQuery kmvteam БД в Delphi 11 05.05.2010 09:43
Проблема с вводом через cin.get [С++] Subtile Помощь студентам 4 10.03.2010 16:55
[delphi] ADOQuery Проблема sPan4eZ БД в Delphi 14 17.09.2009 15:44