您的位置:首页 > 数据库 > Oracle

oracle中创建自增主键的方法

2011-10-30 13:54 281 查看
下面用一个例子来说明自增主键的创建:

1、建表

drop table users

create table users(

userid int primary key, /*主键*/

username varchar2(20),

password varchar2(20)

);

2、创建自增序列

create sequence users_seq

nomaxvalue /*不设置最大值*/

nocycle /*一直累加,不循环*/

nocache /*不建缓冲区*/

start with 1 /*从1开始计数*/

increment by 1; /*步长为1*/

3、创建触发器

create or replace trigger users_trig

before insert on users /*触发条件:当向表users执行插入操作时触发此触发器*/

for each row /*对每一行都检测是否触发*/

begin /*触发器开始*/

select users_seq.nextval into :new.userid from dual; /*触发器主题内容,即触发后执行的动作,在此是取得序列users_seq的下一个值插入到表users中的userid字段中*/

end;

4、提交

现在就完成了自增主键的设定,搞定!可以检测一下。

insert into users(username,password) values ('ynz','123');

commit; /*提交*/

提示“已创建一行”,表示成功。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: