Oracle 創(chuàng)建主鍵自增表示例代碼
前言
本篇文章給大家主要介紹的是在oracle中如果創(chuàng)建自增長表的方法,這里要用到序列。下面話不多說,我們來看示例代碼。
示例代碼
create table tb_student ( id NUMBER(10) not null, createtime DATE not null, constraint PK_tb_student primary key (id) ); comment on table "tb_student" is '學(xué)生表'; comment on column "tb_student"."id" is '主鍵id'; comment on column "tb_student"."createtime" is '創(chuàng)建時間'; --創(chuàng)建序列 create sequence seq_tb_student minvalue 1 nomaxvalue start with 1 increment by 1 nocycle --一直累加,不循環(huán) nocache; --創(chuàng)建觸發(fā)器,如果insert語句不指定ID自動插入增長值 CREATE OR REPLACE TRIGGER tr_tb_student BEFORE INSERT ON tb_student FOR EACH ROW WHEN (new.id is null) begin select seq_tb_student.nextval into:new.id from dual; end;
注意:觸發(fā)器是非必須的,可以從業(yè)務(wù)上嚴格要求指定插入值。
注意oracle限制對象名的字符長度不能超過30個字符,所以表名要控制在一定的長度否則后面創(chuàng)建序列可能會超過限制,建議表名控制在27個字符以下。
總結(jié)
以上就是Oracle創(chuàng)建主鍵自增表的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者使用Oracle帶來一定的幫助,如果有疑問大家可以留言交流,小編會盡快給大家回復(fù)的。
相關(guān)文章
CentOS 6.4下安裝Oracle 11gR2詳細步驟(多圖)
這篇文章主要介紹了2013-11-11Oracle 11g數(shù)據(jù)庫使用expdp每周進行數(shù)據(jù)備份并上傳到備份服務(wù)器
這篇文章主要介紹了Oracle 11g數(shù)據(jù)庫使用expdp每周進行數(shù)據(jù)備份并上傳到備份服務(wù)器,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06Oracle給用戶授權(quán)truncatetable的實現(xiàn)方案
這篇文章主要介紹了Oracle給用戶授權(quán)truncatetable的實現(xiàn)方案,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-05-05oracle行轉(zhuǎn)列與列轉(zhuǎn)行的幾種方式匯總
最近項目需要進行行轉(zhuǎn)列,經(jīng)過上網(wǎng)查找到了一些解決方法,分享給大家,這篇文章主要給大家介紹了關(guān)于oracle行轉(zhuǎn)列與列轉(zhuǎn)行的幾種方式,文中通過圖文以及實例代碼介紹的非常詳細,需要的朋友可以參考下2023-05-05在Oracle數(shù)據(jù)庫表中加載多個數(shù)據(jù)文件的方法詳解
這篇文章主要給大家介紹了在Oracle數(shù)據(jù)庫表中加載多個數(shù)據(jù)文件的方法,本文中,我將展示 SQL 加載器 + Unix 腳本實用程序的強大功能,其中 SQL 加載器可以使用自動 shell 腳本加載多個數(shù)據(jù)文件,需要的朋友可以參考下2024-01-01