我这里没问题,ORACLE 8.1.5
SQL> CREATE TABLE "ALERT" ("REC_NO" NUMBER(10) NOT NULL, "METER_NO" VARCHAR2(9 ) NOT NULL) ;
表已创建。
SQL> CREATE SEQUENCE "ZHANGID" INCREMENT BY 1 START WITH 1
2 MAXVALUE 1.0E28 MINVALUE 1 CYCLE
3 CACHE 20 ORDER;
序列已创建。
SQL> CREATE OR REPLACE TRIGGER "ALERT_RECNO_TRIGGER"
2 BEFORE INSERT ON ALERT
3 FOR EACH ROW
4 BEGIN
5 SELECT ZHANGID.NEXTVAL INTO :NEW.REC_NO FROM DUAL;
6 END;
7 /
触发器已创建
SQL> INSERT INTO ALERT VALUES(10,'A');已创建 1 行。SQL> SELECT * FROM ALERT; REC_NO METER_NO
--------- ---------
1 A
SQL> CREATE TABLE "ALERT" ("REC_NO" NUMBER(10) NOT NULL, "METER_NO" VARCHAR2(9 ) NOT NULL) ;
表已创建。
SQL> CREATE SEQUENCE "ZHANGID" INCREMENT BY 1 START WITH 1
2 MAXVALUE 1.0E28 MINVALUE 1 CYCLE
3 CACHE 20 ORDER;
序列已创建。
SQL> CREATE OR REPLACE TRIGGER "ALERT_RECNO_TRIGGER"
2 BEFORE INSERT ON ALERT
3 FOR EACH ROW
4 BEGIN
5 SELECT ZHANGID.NEXTVAL INTO :NEW.REC_NO FROM DUAL;
6 END;
7 /
触发器已创建
SQL> INSERT INTO ALERT VALUES(10,'A');已创建 1 行。SQL> SELECT * FROM ALERT; REC_NO METER_NO
--------- ---------
1 A
CREATE OR REPLACE TRIGGER "BGMANAGER"."ALERT_RECNO_TRIGGER"
BEFORE
INSERT ON "BGMANAGER"."ALERT"
FOR EACH ROW BEGIN
SELECT ZHANGID.NEXTVAL INTO :NEW.REC_NO FROM DUAL;
END;
触发器里写的太罗嗦了!