Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.16;
Скачать: CL | DM;

Вниз

Проблема с генераторами в IB->Delphi   Найти похожие ветки 

 
MyVeryShortLogin ©   (2002-08-26 12:13) [0]

создал генератор, триггер:
CREATE GENERATOR "IDNO_GEN";

CREATE TRIGGER "CREATE_ID" FOR "TEST"
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
NEW.ID = GEN_ID(IDNO_GEN, 1);
END

если вставка происходит SQL запросом (insert into...), то все ОК,
а если через TDBGid в Delphi, то вылетает еггог-а "Field "ID" must have value", т.е. триггер не запускается, как лечить?


 
Reindeer Moss Eater   (2002-08-26 12:18) [1]

Триггер запускается.
Установи свойство Required для этого TField в False


 
Leran2002 ©   (2002-08-26 12:22) [2]

Отрывок из статьи на www.ibase.ru:
использование хранимой процедуры не всегда удобно - BDE может решить, что процедура вероятно изменяет какие-то данные на сервере, и в режиме autocommit завершит текущую транзакцию, что вызовет перечитывание данных TTable и TQuery. Более простым способом является получение значения генератора при помощи запроса:
SELECT GEN_ID(NEWCLIENT, 1) FROM RDB$DATABASE

При этом, если запрос помещен например в Query2, текст в BeforePost будет следующим:

begin
if DataSource.State = dsInsert then
begin
Query2.Open;
ClientTable.FieldByName("CLIENT_ID").asInteger:=
Query2.Fields[0].asInteger;
Query2.Close;
end;
end;



 
MyVeryShortLogin ©   (2002-08-26 13:16) [3]

2 Reindeer Moss Eater поле ID у меня NOT NULL PRIMARY KEY
2 Leran2002 сенкс, заработало, только приращивает с шагом 2, но это мелочи, хотя если знаешь в чем дело, то буду благодарен.



Страницы: 1 вся ветка

Текущий архив: 2002.09.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
3-50642
Kurt
2002-08-26 22:53
2002.09.16
Вопрос о компоненте QRBand! а точнее со свойством ColumnHeader


1-50770
Шурик Ш
2002-09-06 10:35
2002.09.16
Открытие двух форм


1-50712
reach
2002-09-02 12:41
2002.09.16
Как получить версию ActiveX компонента


3-50601
Ivanov Sergey
2002-08-22 20:31
2002.09.16
Пользователи и их права


1-50727
billybons
2002-09-05 15:51
2002.09.16
как запретить форме закрываться по Alt-F4 ?