Oracle数据库设置表中自增字段
前言
今天遇到一个特别2B的问题,在项目中做了一个数据库插入的操作,然后报错“ORA-00001 违反唯一约束条件”,大家看到这个,绝对会骂,这么傻逼的错误,都能报,只能怪博主太SB,其实也是,很明显的一个主键不能重复的问题(当时建表的时候,没考虑太多,上周做测试从没遇到过,没想到今天跑了一遍,就报了这个错)。。。遇到这个问题,我的第一想法,当然就是重新设置主键,确保其唯一性,为了省去很多麻烦,于是,我决定在表中加上一个id字段,将其设置为自增,这样,就可以解决我的问题了。。。
由于,我在学校期间,使用的数据一般都是MySQL这种小型数据库,偶尔接触一下SQL Server,在这两个里面,给表中一个字段设置自增,就是AUTO_INCREMENT,于是,我惯性的以为,就想用这个,然……然后就傻了。。。
Oracle中实现字段自增
在Oracle中,要实现一个字段的自增,相比MySQL、SQL Server等来说,要复杂一点,不过也还好,其实就三步,完了,就一切OK。。。
Step one
首先,当然得创建一张表了(随便建个表吧,今天在公司写的忘带回来了),如下:
CREATE TABLE USER(
ID NUMBER(10) NOT NULL ,
NAME VARCHAR2(25),
SEX CHAR(2),
AGE NUMBER(6),
PRIMARY KEY(ID)
);