нужна помощь по вставке нового контакта в доступ MDB от Delphi - PullRequest
0 голосов
/ 30 ноября 2009

Я хочу написать приложение, которое является адресной книгой и использует файл доступа .mdb. Я знаю, как вставить новый контакт в базу данных, но я не знаю, как редактировать контакт. Я поместил свой тестовый проект здесь AddressBookTest.zip . Любая помощь приветствуется

Ответы [ 2 ]

1 голос
/ 30 ноября 2009

Ваш код для INSERT должен сделать это:

      qryAux.SQL.Text:='INSERT INTO tblContacts(FirstName, LastName) VALUES( ' +
        QuotedStr(frmEd.edFirstName.Text) + ',' +
        QuotedStr(frmEd.edLastName.Text) + ')';

Здесь верно для вставки двух значений.

В режиме редактирования для получения значений из БД необходимо выполнить Open , а не ExecSQL . И после выполнения Open вы должны проверить, найдена ли запись. Смотрите этот код:

   qryAux.Open;

   // Finded?
   if not (qryAux.Eof) then begin
     frmEd.edFirstName.Text:=qryAux.FieldByName('FirstName').AsString;
     frmEd.edLastName.Text:=qryAux.FieldByName('LastName').AsString;
   end;

Привет.


Нефтали-Герман Эстевес-

0 голосов
/ 30 ноября 2009

Похоже, вы используете команды SQL вместо Edit / Insert / Post. Поэтому вам нужна команда UPDATE:

UPDATE tblContacts
SET FirstName = '''+frmEd.edFirstName.Text+''''
WHERE ID=10

Чтобы добавить более одного значения, разделяйте их запятыми, например.

SET FirstName = 'John', LastName = 'Smith'
...