哦,不好意思,刚才发贴的时候没贴完,是这样的
-- Before insert trigger ""tib_users"" for table ""users""
create trigger "tib_users" before insert
on "users" for each row
declare
integrity_error exception;
errno integer;
errmsg char(200);
dummy integer;
found boolean;begin
-- Column ""user_id"" uses sequence Seq_13_users
select Seq_13_users.NEXTVAL INTO :new."user_id" from dual;-- Errors handling
exception
when integrity_error then
raise_application_error(errno, errmsg);
end;
/
-- Before insert trigger ""tib_users"" for table ""users""
create trigger "tib_users" before insert
on "users" for each row
declare
integrity_error exception;
errno integer;
errmsg char(200);
dummy integer;
found boolean;begin
-- Column ""user_id"" uses sequence Seq_13_users
select Seq_13_users.NEXTVAL INTO :new."user_id" from dual;-- Errors handling
exception
when integrity_error then
raise_application_error(errno, errmsg);
end;
/
CREATE OR REPLACE TRIGGER order_info_insert
INSTEAD OF INSERT ON order_info
DECLARE
duplicate_info EXCEPTION;
PRAGMA EXCEPTION_INIT (duplicate_info, -00001);
BEGIN
INSERT INTO customers
(customer_id, cust_last_name, cust_first_name)
VALUES (
:new.customer_id,
:new.cust_last_name,
:new.cust_first_name);
INSERT INTO orders (order_id, order_date, customer_id)
VALUES (
:new.order_id,
:new.order_date,
:new.customer_id);
EXCEPTION
WHEN duplicate_info THEN
RAISE_APPLICATION_ERROR (
num=> -20107,
msg=> 'Duplicate customer or order ID');
END order_info_insert;
/
要是想实现序列自动增长的功能该怎么写呢?
select a.status from user_triggers a where a.trigger_name='TIB_USERS'
看看状态是不是disabled
楼主解决了吗?能告诉我是怎么做的呀?