http://grid123.livejournal.com/ (
grid123.livejournal.com
) wrote
in
dil
2005-11-09 10:53 am (UTC)
no subject
В таком случае триггер нужно писать так
BEGIN
IF :new.id IS NULL OR :new.id = 0 THEN
SELECT SEQUENCE_NAME.nextval INTO foo FROM dual;
:new.id := foo;
END IF;
END;
тогда сиквенс будет генерироваться только в том случае, когда значение первичного ключа
отсутствует либо равно 0.
В Infomix-е для автоинкрементируемых полей такое поведение было по-умолчанию.
(
9 comments
)
Post a comment in response:
From:
Anonymous
This account has disabled anonymous posting.
OpenID
Identity URL:
Log in?
Dreamwidth account
Account name
Password
Log in?
If you don't have an account you can
create one now
.
Subject
HTML doesn't work in the subject.
Formatting type
Casual HTML
Markdown
Raw HTML
Rich Text Editor
Message
[
Home
|
Post Entry
|
Log in
|
Search
|
Browse Options
|
Site Map
]
no subject
BEGIN
IF :new.id IS NULL OR :new.id = 0 THEN
SELECT SEQUENCE_NAME.nextval INTO foo FROM dual;
:new.id := foo;
END IF;
END;
тогда сиквенс будет генерироваться только в том случае, когда значение первичного ключа
отсутствует либо равно 0.
В Infomix-е для автоинкрементируемых полей такое поведение было по-умолчанию.