oracle主鍵的自動生成

2021-08-11 06:25:37 字數 946 閱讀 2978

oracle資料庫中不能設定主鍵自增,通過「序列sequence+觸發器trigger」實現主鍵自增

1. 建立序列

create sequence chml_sequence    --建立序列chml_sequence

minvalue 1

--最小值

maxvalue 99

--最大值

start with

1--從1開始計數

increment by 1

--增量

建立了序列後得建立觸發器才會在插入資料時自動觸發這個序列自動增長

2. 建立觸發器

create

orreplace

trigger tri_chml_no --建立觸發器tri_chml_no

before

insert

on chml_chemical_list --chml_chemical_list 是表名

foreach

rowdeclare

nextid number;

begin

if :new.row_no is

null

or :new.row_no=0

then --row_no是列名(主鍵)

select chml_sequence.nextval --chml_sequence正是剛才建立的序列

into nextid

from sys.dual;

:new.row_no:=nextid;

endif;end tri_chml_no;

oracle中實現主鍵自動生成

id是主健,實現插入乙個name,id自動增加 sql create table t1 id number,name varchar2 10 sql create sequence t1id seq 2 minvalue 1 3 maxvalue 999999 4 start with 1 5 in...

oracle插入時如何自動生成主鍵

笑月天狼 2017 05 12 10 55 oracle中自動生成主鍵方式例子如下 1 先建立表 create table student sno int not null,sname varchar 20 char 4 constraint pk sno primary key sno 2 建立序...

IBatis 自動生成主鍵

insert id insertproduct oracle parameterclass product selectkey resultclass int type pre keyproperty id select stockidsequence.nextval as value from d...