oracle中的ID號(hào)實(shí)現(xiàn)自增長(zhǎng)的方法
更新時(shí)間:2014年05月26日 17:22:03 作者:
這篇文章主要介紹了oracle中的ID號(hào)如何實(shí)現(xiàn)自增長(zhǎng),利用序列產(chǎn)生主鍵值,需要的朋友可以參考下
利用序列產(chǎn)生主鍵值。
序列(Sequence)是一種可以被多個(gè)用戶(hù)使用的用于產(chǎn)生一系列唯一數(shù)字的數(shù)據(jù)庫(kù)對(duì)象。序列定義存儲(chǔ)在數(shù)據(jù)字典中,通過(guò)提供唯一數(shù)值的順序表來(lái)簡(jiǎn)化程序設(shè)計(jì)工作,可以使用序列自動(dòng)產(chǎn)生主鍵的鍵值。當(dāng)一個(gè)序列第一次被查詢(xún)調(diào)用時(shí),它將返回一個(gè)預(yù)定值。在隨后的每次查詢(xún)中,序列將產(chǎn)生一個(gè)按指定的增量增長(zhǎng)的值。序列可以循環(huán),或者是連續(xù)增加的,直到指定的最大值為止。
--創(chuàng)建sequence
create sequence seq_on_test
increment by 1
start with 1
nomaxvalue
nocycle
nocache;
--建表
drop table test;
create table test(
ID integer
,stu_name nvarchar2(4)
,stu_age number
);
--插入數(shù)據(jù)
insert into test values(seq_on_test.nextval,'Mary',15);
insert into test values(seq_on_test.nextval,'Tom',16);
select * from test;
--結(jié)果
/*
1 Mary 15
2 Tom 16
*/
--seq的兩個(gè)方法
select seq_on_test.currval from dual;
select seq_on_test.nextval from dual;
--結(jié)果
/*
2
3
*/
序列(Sequence)是一種可以被多個(gè)用戶(hù)使用的用于產(chǎn)生一系列唯一數(shù)字的數(shù)據(jù)庫(kù)對(duì)象。序列定義存儲(chǔ)在數(shù)據(jù)字典中,通過(guò)提供唯一數(shù)值的順序表來(lái)簡(jiǎn)化程序設(shè)計(jì)工作,可以使用序列自動(dòng)產(chǎn)生主鍵的鍵值。當(dāng)一個(gè)序列第一次被查詢(xún)調(diào)用時(shí),它將返回一個(gè)預(yù)定值。在隨后的每次查詢(xún)中,序列將產(chǎn)生一個(gè)按指定的增量增長(zhǎng)的值。序列可以循環(huán),或者是連續(xù)增加的,直到指定的最大值為止。
復(fù)制代碼 代碼如下:
--創(chuàng)建sequence
create sequence seq_on_test
increment by 1
start with 1
nomaxvalue
nocycle
nocache;
--建表
drop table test;
create table test(
ID integer
,stu_name nvarchar2(4)
,stu_age number
);
--插入數(shù)據(jù)
insert into test values(seq_on_test.nextval,'Mary',15);
insert into test values(seq_on_test.nextval,'Tom',16);
select * from test;
--結(jié)果
/*
1 Mary 15
2 Tom 16
*/
--seq的兩個(gè)方法
select seq_on_test.currval from dual;
select seq_on_test.nextval from dual;
--結(jié)果
/*
2
3
*/
您可能感興趣的文章:
- 深入Mysql,SqlServer,Oracle主鍵自動(dòng)增長(zhǎng)的設(shè)置詳解
- Oracle創(chuàng)建主鍵自增表(sql語(yǔ)句實(shí)現(xiàn))及觸發(fā)器應(yīng)用
- oracle刪除主鍵查看主鍵約束及創(chuàng)建聯(lián)合主鍵
- Oracle與Mysql主鍵、索引及分頁(yè)的區(qū)別小結(jié)
- Oracle 數(shù)據(jù)庫(kù)針對(duì)表主鍵列并發(fā)導(dǎo)致行級(jí)鎖簡(jiǎn)單演示
- Oracle學(xué)習(xí)記錄之使用自定義函數(shù)和觸發(fā)器實(shí)現(xiàn)主鍵動(dòng)態(tài)生成
- Oracle數(shù)據(jù)庫(kù)中創(chuàng)建自增主鍵的實(shí)例教程
- oracle 數(shù)據(jù)按主鍵刪除慢問(wèn)題的解決方法
- 簡(jiǎn)單三步輕松實(shí)現(xiàn)ORACLE字段自增
- Oracle 創(chuàng)建主鍵自增表示例代碼
相關(guān)文章
Microsoft SQL Server 安全問(wèn)題
Microsoft SQL Server 安全問(wèn)題...2007-03-03Oracle執(zhí)行Update語(yǔ)句的幾種方式
這篇文章介紹了Oracle執(zhí)行Update語(yǔ)句的幾種方式,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05通過(guò)sql準(zhǔn)確查出一天數(shù)據(jù)的方法
之前做一個(gè)項(xiàng)目的時(shí)候想用sql查出某人一天做的數(shù)據(jù),但怎么查都沒(méi)有準(zhǔn)確查出。最近通過(guò)查閱萬(wàn)卷書(shū)籍終于知道了如何準(zhǔn)確查出一天的數(shù)據(jù)。所以想著總結(jié)出來(lái)分享給大家,或許對(duì)有需要的朋友們能帶來(lái)一定的幫助,下面來(lái)一起看看吧。2016-12-12Oracle數(shù)據(jù)庫(kù)批量變更字段類(lèi)型的實(shí)現(xiàn)步驟
我有個(gè)項(xiàng)目使用Oracle數(shù)據(jù)庫(kù),運(yùn)行幾年后數(shù)據(jù)量較大,需要對(duì)數(shù)據(jù)庫(kù)做一次優(yōu)化,其中有些字段類(lèi)型類(lèi)型需要調(diào)整,這里分享一下實(shí)現(xiàn)步驟,感興趣的朋友可以參考下2024-02-02Oracle查看邏輯讀、物理讀資源占用排行的SQL語(yǔ)句
這篇文章主要介紹了Oracle查看邏輯讀、物理讀資源占用排行的SQL語(yǔ)句,需要的朋友可以參考下2014-10-10如何解決ORA-01843與NLS_DATE_FORMAT問(wèn)題
本文將詳細(xì)介紹如何解決ORA-01843與NLS_DATE_FORMAT問(wèn)題,需要的朋友可以參考下2012-11-11Win Oracle 監(jiān)聽(tīng)文件配置參考代碼實(shí)例
這篇文章主要介紹了Win Oracle 監(jiān)聽(tīng)文件配置參考代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-10-10