Тема: БД ACCESS ADO
Показать сообщение отдельно
  #3  
Старый 13.04.2009, 10:19
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Цитата:
Сообщение от Aduard
не пашет автоинкремент
Надо писать процедуру в базе и вызывать ее в TStoredProc перед Post;
Вот процедура в базе:
Код:
SET TERM ^ ;

CREATE PROCEDURE "Имя_процедуры"
RETURNS(
  NID INTEGER)
AS
BEGIN
  NID = GEN_ID(Имя_генератора, 1);
END^

SET TERM ; ^

А вот в обработчике BeforePost у Table :
Код:
IBStoredProc.StoredProcName:='Имя_процедуры';
IBStoredProc.ExecProc;
IB_Table.FieldByName('ID').asInteger:=IBStoredProc.Params[0].asInteger;

Тут для InterBase, но для ADO по аналогии... Не уверен точно как в аксессе сформировать такую процедуру, возможно в аксессе это делается как- то по другому...
Ответить с цитированием