Oracle自动生成id的方法
2009-06-10 17:32
363 查看
在ORACLE中,没有能自动增长的ID列定义,而是采用另一种方法,即创建SEQUENCE。
如:
/*--1、创建各使用地区编码表--*/
drop table LT_AREA;
create table LT_AREA
(
area_id number(5,0) NOT NULL, /*地区编码*/
area_name varchar2(20) NOT NULL, /*地区名称*/
constraint PK_LT_AREA PRIMARY KEY(area_id)
);
/*--2、创建SEQUENCE,将列area_id 类ID化--*/
drop sequence SEQ_LT_AREA;
create sequence SEQ_LT_AREA increment by 1 /*该SEQUENCE以1的步长递增*/
start with 1 maxvalue 99999; /*从1开始,最大增长到99999*/
/*--3、实际操作时引用SEQUENCE的下一个值--*/
insert into LT_AREA(area_id, area_name) values(SEQ_LT_AREA.NEXTVAL, '深圳');
insert into LT_AREA(area_id, area_name) values(SEQ_LT_AREA.NEXTVAL, '广州');
insert into LT_AREA(area_id, area_name) values(SEQ_LT_AREA.NEXTVAL, '北京');
/*--4、新插入连续三条记录后,下一条语句运行后,‘上海’地区的area_id为4--*/
insert into LT_AREA(area_id, area_name) values(SEQ_LT_AREA.NEXTVAL, '上海');
如:
/*--1、创建各使用地区编码表--*/
drop table LT_AREA;
create table LT_AREA
(
area_id number(5,0) NOT NULL, /*地区编码*/
area_name varchar2(20) NOT NULL, /*地区名称*/
constraint PK_LT_AREA PRIMARY KEY(area_id)
);
/*--2、创建SEQUENCE,将列area_id 类ID化--*/
drop sequence SEQ_LT_AREA;
create sequence SEQ_LT_AREA increment by 1 /*该SEQUENCE以1的步长递增*/
start with 1 maxvalue 99999; /*从1开始,最大增长到99999*/
/*--3、实际操作时引用SEQUENCE的下一个值--*/
insert into LT_AREA(area_id, area_name) values(SEQ_LT_AREA.NEXTVAL, '深圳');
insert into LT_AREA(area_id, area_name) values(SEQ_LT_AREA.NEXTVAL, '广州');
insert into LT_AREA(area_id, area_name) values(SEQ_LT_AREA.NEXTVAL, '北京');
/*--4、新插入连续三条记录后,下一条语句运行后,‘上海’地区的area_id为4--*/
insert into LT_AREA(area_id, area_name) values(SEQ_LT_AREA.NEXTVAL, '上海');
相关文章推荐
- oracle自动生成主键id
- asp.net Web Form 中获得服务器控件自动生成ID的方法
- oracle 如何实现主键id自增,或自动生成
- php根据数据id自动生成编号的实现方法
- php根据数据id自动生成编号的实现方法
- MAC地址根据EUI-64规范自动生成IPV6接口ID的方法
- ORACLE 中,数据的id号自动生成,利用触发器的实现
- Oracle 自动生成标识列, 比如订单编号,学生ID
- java自动生成ID号的方法
- oracle主键自动增长的实现 Oracle Sequence oracle maxid自动生成--ORA-00001: 违反唯一约束条件 (NAME.SYS_C005547)产生的原因之一(select * from all_cons_columns w
- 哪位知道在oracle客户端PL/SQL里怎么自动生成某个表的id
- oracle的SequenceGenerator为主键Id自动产生的序列号不是按顺序生成的解决办法
- asp.net Web Form 中获得服务器控件自动生成ID的方法
- oracle中利用trigger,sequence自动生成ID
- android 项目中的res 资源 不能在R.java自动生成ID 的解决方法
- rails自动生成大量记录的方法
- JUnit4---实践二:拓展之运行指定类的某些测试方法-自动生成该文件
- 在数据库中自动生成编号的实现方法分享
- Oracle 用户自动被锁解决方法
- MyBatis自动生成代码】根据数据库生成对应实体类,SQL方法等