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

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

Как составить ХП [IB6.x]


Ш-К ©   (2003-03-28 17:53:00) 

Есть таблица:

CREATE TABLE EVENTS (
EVENTNO INTEGER NOT NULL,
FITMENT INTEGER,
DATA INTEGER
);
ALTER TABLE EVENTS ADD PRIMARY KEY (EVENTNO);

К ней триггер:

CREATE TRIGGER EVENTS_SETPRIMARYKEY FOR EVENTS
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
NEW.EVENTNO = GEN_ID(EVENTNO_GEN, 1);
END

Как составить ХП типа такой:

BEGIN
INSERT INTO EVENTS (FITMENT, DATA)
VALUES (:FITMENT, :DATA);
END

но, чтоб она ещё возвращала значение EVENTNO?


zacho   (2003-03-28 20:48:00) [1]

Почитай http://www.ibase.ru/devinfo/generator.htm
Там все подробно расписано.


Rad   (2003-03-28 19:55:00) [2]

Можешь.
Добавь в процедуру возвращаемый параметр, а внутри нее и пиши до вставки:
:EVENTNO = GEN_ID(EVENTNO_GEN, 1);
Правда, тогда триггер логично будет выключить.


Ш-К   (2003-03-28 19:30:00) [3]

Объясняю подробнее.
Имеется таблица, одно из полей которой генерируется в триггере перед вставкой.
Я запускаю хранимую процедуру, в которой делаю примитивную вставку в таблицу. Триггер автоматически заполняет пустое поле. Могу ли я получить значение этого поля непосредственно в теле ХП?


JibSkeart   (2003-03-28 18:39:00) [4]

ХП - Это что такое ??
Extended Stored procedure ?
у меня как то других ассоциаций не возникает
пишите по конкретнией пожалуйста ...


Наверх

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