ADOQuery1.SQL.Text := 'SELECT * FROM Certif WHERE (id_s = ' + IntToStr(Edit1.Text) + ')';
ADOQuery1.Open;
if not ADOQuery1.Eof then begin
ADOQuery2.SQL.Text := 'SELECT * FROM Org WHERE (id_s = ' + IntToStr(Edit1.Text) + ')';
ADOQuery2.Open;
if not ADOQuery2.Eof then begin
ADOQuery2.Edit;
ADOQuery2['kach_rez'] := ADOQuery1['kach_rez'];
ADOQuery2['delrep_rez'] := ADOQuery1['delrep_rez']
ADOQuery2.Post;
end;
ADOQuery2.Close;
end;
ADOQuery1.Close;
Нужна помощь Delphi + Access!
У меня есть две таблицы Org и Certif обе в Access, в таблице Certif есть поле id_s это поле содержит такие же данные как и в Org (соответственно оно также и называеться)... таблица Certif содержит данные об аттестации организации, эта аттестация идёт по двум показателям качество и деловая репутация (значения kach_rez и delrep_rez), в таблице Org также есть эти два поля... нужно сделать так, чтобы происходило обновление таблицы Org по показателям качества и репутации, которые были присвоены организации в аттестации...
Пробовать стандартными методами ADOTable не стал (просто не разобрался)... т.к. больше знаком с SQL, решил сделать обновление записи через запрос...
UpdateQuery - компонент запроса ADOQuery
kachestvo - тип integer, вычисляется по ходу выполнения проги
reputaciya - тип integer, вычисляется по ходу выполнения проги
DBEdit1.Text - в это поле заносяться данные из id_s
Обновление делаю следующим образом:
UpdateQuery.SQL.Add('UPDATE org SET kach_rez=kachestvo,delrep_rez=reputaciya WHERE id_s=DBEdit1.Text');
При компиляции прога выдаёт ошибку, что параметр kachestvo\reputaciya не являеться значением по умолчанию.... Я уже просто не знаю, что и делать... :(
Может кто подскажет и посоветует, как можно решить данный вопрос?
на форме ADOQuery1, ADOQuery2 соединения которых настроены на твою базу...
.....(id_s = ' + IntToStr(Edit1.Text) + ')';
а именно на параметр IntToStr... :(
var
x:integer;
begin
x:=StrToInt(DBEdit1.Text);
.......
....(id_s = ' + IntToStr(x) + ')';
Теперь на IntToStr, не ругаеться (знаю, был мой косяк)... но проблема осталась....
так и выводит, что "Параметр id_s не имеет значение по умолчанию"...
что это вообще может значить???
да и ещё, когда значения которые нужно обновить прописываешь в ручную....
UpdateQuery.SQL.Add('UPDATE org SET kach_rez=3,delrep_rez=3 WHERE id_s=1');
То выдаёт ошибку, что "Текущий проводник не поддерживает возврат нескольких наборов записей в результате одной операции".
Я уже просто запутался... :(
Код:
...
ADOQuery2.Edit;
ADOQuery2['id_s'] := ADOQuery1['id_s'];
ADOQuery2['kach_rez'] := ADOQuery1['kach_rez'];
ADOQuery2['delrep_rez'] := ADOQuery1['delrep_rez'];
ADOQuery2.Post;
...
ADOQuery2.Edit;
ADOQuery2['id_s'] := ADOQuery1['id_s'];
ADOQuery2['kach_rez'] := ADOQuery1['kach_rez'];
ADOQuery2['delrep_rez'] := ADOQuery1['delrep_rez'];
ADOQuery2.Post;
...
Все обновляет на Ура.. :)
)))).... ну, блин... одобрил бы тогда сообщение чтоли.... :)
Я говорю, спасибо за помощь!!... :)
под картинкой пользователя есть такая иконка.... на весы похожая... )))
Не вопрос.... Одобрил :)