oracle 建表id自增长_Oracle创建表设置自动增长列范例

1、创建一个用户表t_sys_user,其中有id,login_name,login_pwd三个字段,ID为自动增长列:

create table t_sys_user

(

id number(6) not null primary key,

login_name varchar2(50) not null,

login_pwd varchar2(50) not null

);

2、创建序列:

create sequence seq_user

increment by 1--指定序列号之间的间隔,该值可为正的或负的整数,但不可为0。序列为升序。忽略该子句时,缺省值为1。

start with 1--指定生成的第一个序列号。在升序时,序列可从比最小值大的值开始,缺省值为序列的最小值。对于降序,序列可由比最大值小的值开始,缺省值为序列的最大值。

maxvalue 9999--指定序列可生成的最大值。

cycle nocache--一直累加,不循环

3、创建触发器:

create or replace trigger tri_user

before insert on t_sys_user for each row

begin

select seq_user.nextval into:new.id from dual; --这里是最容易出错的地方

end;

/

4、测试:

insert into t_sys_user (login_name,login_pwd) values ('zhanggc','123456');

5、更改序列:

create sequence seq_user

increment by 1

start with 1

maxvalue 9999

cycle nocache

分享到:

2011-03-10 12:04

浏览 5075

分类:数据库

评论

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值