我們都知道,在mysql中,要實現主鍵的自動遞增非常簡單.只需要在主鍵定義的後面加上auto_increment即可,
但是在oracle中就不是這樣,需要分幾步來完成
1.建立乙個表
create table 戶口本 (
戶號 integer not null,
戶別 char(20) not null,
戶主姓名 char(20) not null,
住址 char(200) not null,
承辦人 char(20) not null,
日期 date not null,
constraint pk_戶口本 primary key (戶號));
2.建立乙個sequence序列:
create sequence book_sequence
increment by 1 -- 每次加幾個
start with 1 -- 從1開始計數
nomaxvalue -- 不設定最大值
nocycle ; -- 一直累加,不迴圈
3.建立乙個觸發器:
create trigger book_increase before
insert on 戶口本 for each row
begin
select book_sequence.nextval into:new.戶號 from dual;
end;
這樣就可以了,以後在插入戶口本表的時候主鍵輸入null,就可以實現自動遞增.
有乙個地方需要強調,就是可以有些初學者喜歡用中文命名這樣非常的麻煩..而且也不符合國際化的思想,不過sequence必須用英文..
Oracle主鍵自動增長
oracle主鍵自動增長 這幾天搞oracle,想讓表的主鍵實現自動增長,查網路實現如下 create table simon example id number 4 not null primary key,name varchar2 25 建立序列 create sequence create ...
Oracle實現主鍵自動增長
我們都知道,在mysql中,要實現主鍵的自動遞增非常簡單.只需要在主鍵定義的後面加上auto increment即可,但是在oracle中就不是這樣,需要分幾步來完成 1.建立乙個表,這個就不多說了,如果這個都不會,相信我,回頭是岸啊 create table 戶口本 戶號 integer not ...
資料庫的自動增長的主鍵查詢
預約表和預約詳情表是兩種關聯表,預約表的主鍵id是預約詳情表的外來鍵,當新增預約表的時候,我們會有好幾條預約詳情表的資料需要新增,這個時候我們需要獲取預約表的主鍵id,但是我們的預約表中的主鍵id是自增長的,在插入預約表的時候我們並不能獲取插入資料的主鍵。當我們想實現在插入預約表的時候,將預約詳情表...