oracle中如何指定表欄位自增
背景介紹:
SQL SERVER可以在int型別的欄位後加上identity(1,1),該欄位就會從1開始,按照+1的方式自增,將這個欄位設定為主鍵,有利於我們進行資料的插入操作。MySql中可以使用“auto_increment”即可。但是oracle有點麻煩,需要使用序列和觸發器達到目的。
--學校表
create table school(sid number(4),sname varchar2(400 char), check_status number(1) default 0 check( check_status in(0,1)),accountant varchar2(20 char),pwd varchar2(20 char),email varchar2(30 char),photo_path varchar2(800 char),constraint pk_t_school primary key(sid));
-- 序列 (序列與觸發器實現school表中sid欄位的自動增長)
create sequence shool_sid_autoinc
minvalue 1
maxvalue 9999999999999999999999999999
start with 1
increment by 1
nocache;
--觸發器 (序列與觸發器實現school表中sid欄位的自動增長)
create or replace trigger insert_shool_sid_autoinc
before insert on school
for each row
begin
select shool_sid_autoinc.nextval into :new.sid from dual;
end;
/
-- 測試結果
SQL> insert into school values(100,'a',0,001,001,'964955634@qq.com',66666);
1 row created.
SQL> insert into school values(100,'aaaaaaaaaaaaaaaaaaaaa',0,001,001,'964955634@qq.com',66666);
1 row created.
SQL> select sid from school;
SID
----------
1
2
Ok,結束。 轉載請標明出處
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31383567/viewspace-2131063/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Laravel Tips:指定自增欄位起始值Laravel
- SQLServer中如何刪除欄位的自增標識SQLServer
- oracle和mysql設定自增欄位OracleMySql
- ORACLE9I中建立自增欄位的方法(轉)Oracle
- Oracle 基本操作之 建立自增欄位方法-ORACLE SEQUENCEOracle
- oracle刪除表欄位和oracle表增加欄位Oracle
- SQL Server 自增欄位重置SQLServer
- ORACLE 模擬資料之 從指定表中的指定欄位時隨機出一個值Oracle隨機
- 觸發器—一個表插入資料時其他欄位同步自增長欄位觸發器
- Oracle建立自增欄位方法-ORACLE SEQUENCE的簡單介紹Oracle
- Oracle獲取所有表名資訊和獲取指定表名欄位資訊Oracle
- SQL Server中根據某個欄位,ID欄位自動增長的實現SQLServer
- 如何在Oracle資料庫中查詢表和欄位說明Oracle資料庫
- oracle中lob欄位Oracle
- Oracle建立自增欄位方法-ORACLE SEQUENCE的簡單介紹(轉帖)Oracle
- MySQL 表的自增欄位 預判功能innodb_autoinc_lock_modeMySql
- MyBatis實現MySQL表欄位及結構的自動增刪MyBatisMySql
- 如何在水晶報表中動態新增欄位
- SQL Server複製的表中如何修改欄位SQLServer
- 一文詳解MySQL如何同時自增自減多個欄位MySql
- Oracle中檢視所有表和欄位以及表註釋.欄位註釋Oracle
- Oracle中的Rownum 欄位Oracle
- Oracle中的大欄位Oracle
- sql server 修改欄位名,檢視指定表是否存在SQLServer
- oracle 修改表欄位的長度Oracle
- Oracle-給表刪除欄位Oracle
- mysql 如何替換資料表欄位字串中指定單詞的內容MySql字串
- SQL Server 自增欄位歸零等問題SQLServer
- oracle中判斷欄位是否存在和新增表結構Oracle
- 匯出Oracle中的所有表和欄位的註釋Oracle
- Oracle dblink比較兩個庫中的表欄位Oracle
- Linux 中 awk命令如何擷取指定欄位的前幾個字元Linux字元
- SQL Server 中調整自增欄位的當前初始值zzSQLServer
- mysql獲取指定表當前自增id值MySql
- 巧用欄位對映實現指定欄位的搜尋
- MySQL 按照指定的欄位排序MySql排序
- Oracle 建表時LOB欄位語法Oracle
- [MySQLFAQ]系列–如何為一個欄位指定字符集MySql