数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

如何在MySQL&Oracle下创建自动递增字段


发布日期:2019年11月07日
 
如何在MySQL&Oracle下创建自动递增字段

如何在MySQL&Oracle下创建自动递增字段

在MySQL下创建自动递增字段

create table article //先创建一个表

(

id int primary key auto_increment //设置该字段为自动递增字段

title varchar()

);

insert into article values (nulla); //向数据库中插入数据

select * from article; 结果如下

Id

Title

a

insert into article values (nullb);

insert into article values (nullc);

insert into article (title) values (d);

select * from article; 结果如下

Id

Title

a

b

c

d

但是oracle没有这样的功能但是通过触发器(trigger)和序列(sequence)可以实现

假设关键字段为id建一个序列代码为

create sequence seq_test_ids

minvalue

maxvalue

start with

increment by

nocache

order;

<![if !supportLineBreakNewLine]>

<![endif]>

建解发器代码为

create or replace trigger tri_test_id

before insert on test_table

for each row

declare

nextid number;

begin

IF :newid IS NULLor :newid= THEN

select seq_test_idnextval

into nextid

from sysdual;

:newid:=nextid;

end if;

end tri_test_id;

OK上面的代码就可以实现自动递增的功能了

               

上一篇:oracle11G空表默认不导出解决

下一篇:常用的查看数据库的SQL