Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

InterBase [D5, IB6.x]


Sergey-ZZZ ©   (2002-08-26 15:03:00) 

Генератор не устонавливает значения в поле для автоинкримента.
Намисал запрос для создания базы -
CREATE TABLE ZVANIE (
ZV_ID INTEGER,
ZVANIE VARCHAR (15) character set WIN1251 collate WIN1251);
написал генератор -
CREATE GENERATOR GEN_ZVANIE FOR ZVANIE

написал триггер -
CREATE TRIGGER TR_AF_INS_ZVANIE FOR ZVANIE
ACTIVE AFTER INSERT
AS
BEGIN
new.ZV_ID = GEN_ID( GEN_ZVANIE,1);
END
Все нормально создалось, но при Insert в DBGRID поле ZV_ID данными не заполняется, хотя переменная генератора увеличивается. Помогите.


Romkin   (2002-08-26 15:42:00) [1]

А ты думаешь, AFTER INSERT при откате не откатиться? :-))
А значения ZV_ID не обязаны идти по порядку, а если запись удалят?


Reindeer Moss Eater   (2002-08-26 15:18:00) [2]

Забыть про это и все. Или забить на это.


Sergey-ZZZ   (2002-08-26 15:15:00) [3]

Для Reindeer Moss Eater. Спасибо, но если я сделаю откат транзакции, то генератор на следующую вставку выдаст уже не следующее число, а через 1. Как быть?


Reindeer Moss Eater   (2002-08-26 15:10:00) [4]

BEFORE INSERT


Наверх

Титульная страница Поиск, карта сайта Написать письмо