Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема с генераторами в IB->Delphi / 3 сообщений из 3, страница 1 из 1
26.08.2002, 12:15
    #32045830
bPavel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с генераторами в IB->Delphi
создал генератор, триггер:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
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" (поле ID соответственно PRIMARY KEY), т.е. триггер не запускается, как лечить?
...
Рейтинг: 0 / 0
26.08.2002, 13:28
    #32045863
Gold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с генераторами в IB->Delphi
Если хочешь всё-же триггером ключ создать, то надо свойство Required соответств. поля в наборе установить в false. Но лучше по этому поводу значение генератора самому из базы получать и при вставке (напр. по OnNewRecord) это значение полю присваивать. Тогда обновление правильно происходить будет.
А значение вытащить можно простым запросом типа:
SELECT FIRST 1 GEN_ID(<Генератор>,1) FROM <Любая таблица>
...
Рейтинг: 0 / 0
03.09.2002, 16:17
    #32047828
DikiyRobot
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с генераторами в IB->Delphi
Я в операторе insert в фразе values на место такого поля ставлю 0
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема с генераторами в IB->Delphi / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]