利用PL/SQL Developer 新增表及设置序列

一、新增表PERSONS

代码如下:

1 ---- EG.PERSONS表
2 CREATE TABLE PERSONS(
3 ID NUMBER(14) NOT NULL PRIMARY KEY ,
4 LASTNAME VARCHAR2(200),
5 FIRSTNAME VARCHAR2(200),
6 ADDRESS VARCHAR2(1000),
7 CITY VARCHAR(200)
8 );

 

在PL/SQL Deveplover中展示如下

 

二、在ORACLE中设置表自增主键(触发器),需分两步完成。

1.设置序列,如图所示:

  利用PL/SQL Developer建立序列 PRO_SEQ

 

相对应的SQL语句如下所示:

1 -- Create sequence    
2 create sequence PRO_SEQ              ----索引名称
3 minvalue 1                           ----最小值
4 maxvalue 999999                      ---最大值
5 start with 1                         ---起始值
6 increment by 1                       ---自增
7 cache 200;                           ---缓存

 2.为表设置自增事件触发器

 

需新增的信息:

1 select pid.nextval into :new.pid from dual;    
2 ---第一个pid就是之前序列的名称,改成自己的即可。 
3 ---第二个pid就是表里需要自增的字段。

第二步的完整版代码如下:

1 create or replace trigger SEQ_ID
2   before insert
3   on PERSONS 
4   for each row
5 declare
6   -- local variables here
7 begin
8   SELECT PRO_SEQ.NEXTVAL INTO:NEW.ID FROM DUAL;
9 end SEQ_ID;

 

三、测试自增触发器效果

插入时不指定ID列

1 INSERT INTO PERSONS(LASTNAME,FIRSTNAME,ADDRESS,CITY)VALUES('ALLEN','WALK','PUMING','SHANGHAI');   ----插入时不指定ID列
2 INSERT INTO PERSONS(LASTNAME,FIRSTNAME,ADDRESS,CITY)VALUES('HARRY','JADE','PUMING','SHANGHAI');
3 SELECT * FROM PERSONS;

 

 

posted on 2021-05-06 17:26  顾念啊  阅读(281)  评论(0编辑  收藏  举报