Oracle中主鍵增長

2021-05-05 19:52:33 字數 999 閱讀 4112

大家程式設計的時候想讓相應的主鍵值自動增長,免得在插入語句的時候每次要插入主鍵值,所以設定主鍵自動增長是乙個非常好的程式設計習慣。能夠數量應用主鍵自動增長以及觸發器在資料庫程式設計中是非常重要的。

下面分享下我在設定主鍵自動增長上的一些見解:高手指教。

首先要建立乙個序列,來指定對於那個主鍵進行增長。

注意:序列名不能和主鍵名同名;要符合命名規範,一般是sq_相應表(主鍵)英文所寫

如 sq_studentid 學生編號序列。建立好序列後就建立觸發器,觸發器命名要符合命名規範。我將不再囉嗦。

建立序列語法:

create sequence sq_studentid

minvalue 1                        --最小值

maxvalue 10000             --最大值

increment by 1                 --主鍵每次增長1

start with 1                        --主鍵從1開始新增

cache 20                          --設定cpu快取 20

order;     

--建立觸發器

create trigger tr_into_studentinf            --相對與studentinfo表

before                                       --在執行語句前,還是後。

insert  on studentinfo for each row          --執行插入操作

begin                                        --開始執行語句

select sq_studentid.nextval into :new.student_id from dual; --該句我的理解是將查詢到的下乙個主鍵值即自動增長的值插入到學生編號列上。 新增的id在臨時表dual中存放。

end

Oracle中實現主鍵自增長

注 本人於2017 04 08 11 30 43部落格 在oracle資料庫中實現主鍵的自增長並沒有其他資料庫如mysql那麼便捷,在mysql中只需在主鍵定義後加auto increment即可。在oracle中實現主鍵的自增長需要除本身表以外,還需建立序列及觸發器。以test表位例 1,建立資料...

Oracle主鍵自動增長

oracle主鍵自動增長 這幾天搞oracle,想讓表的主鍵實現自動增長,查網路實現如下 create table simon example id number 4 not null primary key,name varchar2 25 建立序列 create sequence create ...

oracle 自增長主鍵

1 首先,你要有一張表!create table example id number 4 not null primary key,name varchar 25 phone varchar 10 address varchar 50 2 然後,你需要乙個自定義的sequence create se...