亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > Oracle > 正文

兩種oracle創建字段自增長的實現方式

2024-08-29 13:58:24
字體:
來源:轉載
供稿:網友

這篇文章介紹了兩種oracle創建字段自增長的實現方式,一是序列+觸發器,二是序列+顯示調用序列,需要的朋友可以參考下

mysql等其他數據庫中有隨著記錄的插入而表ID自動增長的功能,而oracle卻沒有這樣的功能,我們有以下兩種方式可以解決字段自增長的功能。

因為兩種方式都需要通過創建序列來實現,這里先給出序列的創建方式。

 

 
  1. CREATE SEQUENCE 序列名 
  2. [INCREMENT BY n] 
  3. [START WITH n] 
  4. [{MAXVALUE/ MINVALUE n|NOMAXVALUE}] 
  5. [{CYCLE|NOCYCLE}] 
  6. [{CACHE n|NOCACHE}]; 

解析:

1)INCREMENT BY用于定義序列的步長,如果省略,則默認為1,如果出現負值,則代表Oracle序列的值是按照此步長遞減的。

2)START WITH 定義序列的初始值(即產生的第一個值),默認為1。

3)MAXVALUE 定義序列生成器能產生的最大值。選項NOMAXVALUE是默認選項,代表沒有最大值定義,這時對于遞增Oracle序列,系統能夠產生的最大值是10的27次方;對于遞減序列,最大值是-1。

4)MINVALUE定義序列生成器能產生的最小值。選項NOMAXVALUE是默認選項,代表沒有最小值定義,這時對于遞減序列,系統能夠產生的最小值是?10的26次方;對于遞增序列,最小值是1。

5)CYCLE和NOCYCLE 表示當序列生成器的值達到限制值后是否循環。CYCLE代表循環,NOCYCLE代表不循環。如果循環,則當遞增序列達到最大值時,循環到最小值;對于遞減序列達到最小值時,循環到最大值。如果不循環,達到限制值后,繼續產生新值就會發生錯誤。

6)CACHE(緩沖)定義存放序列的內存塊的大小,默認為20。NOCACHE表示不對序列進行內存緩沖。對序列進行內存緩沖,可以改善序列的性能。

解決方式一、序列+觸發器

具體實現方式如下:

第一步,創建sequence

 

 
  1. -- Create sequence 
  2. create sequence SEQ_T_RECV 
  3. minvalue 1 
  4. maxvalue 9999999 
  5. start with 1 
  6. increment by 1 
  7. cache 50; 

第二步,創建表

 

 
  1. -- Create table 
  2. create table RECV_MSG 
  3. id NUMBER, 
  4. messageid VARCHAR2(32), 
  5. contents VARCHAR2(2000), 
  6. app_flg VARCHAR2(100), 
  7. phonenumber VARCHAR2(2000), 
  8. updatetime DATE default sysdate 
  9. ); 

第三步,建立觸發器

 

 
  1. CREATE OR REPLACE TRIGGER "recv_trig" 
  2. BEFORE INSERT ON recv_msg 
  3. REFERENCING OLD AS OLD NEW AS NEW FOR EACH ROW 
  4. DECLARE 
  5. BEGIN 
  6. SELECT SEQ_T_RECV.NEXTVAL INTO :NEW.ID FROM DUAL; 
  7. END recv_trig; 

第四步,測試并確認

向表中插入一條數據,查看id字段是否自動增長了。

解決方式二、序列+顯示調用序列

一、創建sequence

 

 
  1. create sequence seq_on_test  
  2. increment by 1  
  3. start with 1  
  4. nomaxvalue  
  5. nocycle  
  6. nocache; 

二、建表

 

 
  1. --建表  
  2. drop table test;  
  3. create table test(  
  4. ID integer 
  5. ,stu_name nvarchar2(4)  
  6. ,stu_age number  
  7. ); 

三、插入數據(顯示調用序列的下一個值插入)

 

 
  1. --插入數據  
  2. insert into test values(seq_on_test.nextval,'Mary',15);  
  3. insert into test values(seq_on_test.nextval,'Tom',16);  

四、查看

 

 
  1. select * from test;  
  2.  
  3. --結果  
  4. /*  
  5. 1 Mary 15  
  6. 2 Tom 16  
  7. */ 

附帶:查看序列當前值和下一個值的查看方式

 

 
  1. --seq的兩個方法  
  2. select seq_on_test.currval from dual;  
  3. select seq_on_test.nextval from dual;  
  4.  
  5. --結果  
  6. /*  
  7.  
  8.  
  9. */  

總結

通過觸發器直接添加的方式比顯示調用方便一下,我們不需要哪個字段要通過哪個序列還獲取下一個值,而通過觸發器進行執行的添加。

以上就是本文的全部內容,希望對大家掌握兩種oracle創建字段自增長的實現方式有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人免费网站在线看| 粉嫩老牛aⅴ一区二区三区| 91亚洲人电影| 国产在线一区二区三区| 亚洲国产日韩精品在线| 欧洲亚洲妇女av| 欧美激情图片区| 色与欲影视天天看综合网| 欧美精品一区二区三区国产精品| 亚洲美女喷白浆| 麻豆国产va免费精品高清在线| 中文字幕亚洲自拍| 欧美一级视频在线观看| 亚洲成色www8888| 成人在线视频福利| 欧美影院在线播放| 国产精品精品久久久| 96精品视频在线| 最近免费中文字幕视频2019| 日韩欧美国产视频| 夜夜嗨av色一区二区不卡| 中文字幕一精品亚洲无线一区| 久久久久久久香蕉网| 久久视频精品在线| 国产一区二区成人| 亚洲国产成人精品一区二区| 亚洲视频在线播放| 浅井舞香一区二区| 欧美日韩激情视频8区| 成人h片在线播放免费网站| 成人97在线观看视频| 国产欧美一区二区三区久久| 久久99国产精品久久久久久久久| 欧美国产日韩中文字幕在线| 最近免费中文字幕视频2019| 日韩欧美精品网址| 91探花福利精品国产自产在线| 成人h视频在线| 91久久精品久久国产性色也91| 97在线视频免费观看| 97久久精品人搡人人玩| 久久国产精品久久精品| 日韩有码在线播放| 青青久久av北条麻妃海外网| 国产精品久久久久av| 上原亚衣av一区二区三区| 日韩电影中文 亚洲精品乱码| 日韩在线一区二区三区免费视频| 欧美日韩成人在线播放| 亚洲香蕉伊综合在人在线视看| 亚洲人成网站在线播| 91在线免费观看网站| 欧美精品18videos性欧美| 96精品久久久久中文字幕| 国产成+人+综合+亚洲欧美丁香花| 欧美在线亚洲一区| 欧美日韩国产一区二区三区| 亚洲**2019国产| 亚洲xxxx在线| 青青草原一区二区| 91sao在线观看国产| 成人黄色免费在线观看| 国产成人+综合亚洲+天堂| 国产suv精品一区二区| 欧美亚洲另类制服自拍| 亚洲欧美日韩一区在线| 精品少妇一区二区30p| 92福利视频午夜1000合集在线观看| 久久韩国免费视频| 欧美精品制服第一页| 久久99热精品| 国产丝袜一区视频在线观看| 精品亚洲永久免费精品| 91精品啪aⅴ在线观看国产| 91高潮在线观看| 成人福利在线视频| 97婷婷涩涩精品一区| 欧美在线视频网站| 91精品国产高清| 国产日韩精品综合网站| 国产精品成av人在线视午夜片| 日韩欧美黄色动漫| 日本久久久久久久久| 国产精品青草久久久久福利99| 久久天天躁狠狠躁夜夜躁2014| 亚洲级视频在线观看免费1级| 亚洲伊人久久综合| 精品国产成人av| 亚洲国产私拍精品国模在线观看| 亚洲日本欧美中文幕| 亚洲最新av在线| 欧美一级大片视频| 欧洲亚洲免费视频| 日韩欧美黄色动漫| 国产亚洲视频在线观看| 久久精品青青大伊人av| 欧美日韩中国免费专区在线看| 成人免费在线视频网址| 日韩中文有码在线视频| 国产精品精品久久久久久| 日韩激情视频在线播放| 欧美国产日韩一区二区| 大荫蒂欧美视频另类xxxx| 日韩欧美在线视频日韩欧美在线视频| 日韩国产精品视频| 欧美日韩国产在线播放| 欧美性xxxxx| 久久久视频在线| 国产精品丝袜视频| 国内精品久久久久久影视8| 精品亚洲国产成av人片传媒| 欧美情侣性视频| 日韩中文字幕在线看| 国产精品91久久久| 亚洲电影免费观看高清完整版在线观看| 久久99久久亚洲国产| 亚洲人成在线播放| 日韩激情视频在线播放| 欧美精品激情在线观看| 欧美精品久久久久久久久| 久久久久久亚洲| 亚洲爱爱爱爱爱| 亚洲精品v天堂中文字幕| 久久精品国产欧美亚洲人人爽| 亚洲天堂精品在线| 久久久久久久网站| 国产精品久久婷婷六月丁香| 国产精品一二区| 久久精品国产亚洲精品| 国产精品一香蕉国产线看观看| 国产a∨精品一区二区三区不卡| 精品国产1区2区| 午夜精品久久久久久久男人的天堂| 国产欧美日韩丝袜精品一区| 国产一区二区免费| 97视频在线观看成人| 色综合久久88色综合天天看泰| 精品久久久久久国产91| 国产精品一区二区性色av| 日韩视频欧美视频| 91在线观看欧美日韩| 亚洲乱码一区av黑人高潮| 久久久久久亚洲精品| 国产成人黄色av| 国产精品久久久久久久久久久不卡| 久久免费福利视频| 欧美国产日韩视频| 懂色av一区二区三区| 88xx成人精品| 欧美精品久久久久久久免费观看| 国产日韩欧美黄色| 日韩久久免费电影| 国产99视频精品免视看7| 欧美高清videos高潮hd| 日韩国产精品视频| 久久资源免费视频| 日韩成人久久久| 亚洲精品www久久久| 国产视频久久久| www.色综合| 日本高清视频一区| 国产日韩综合一区二区性色av| 国产视频丨精品|在线观看| 日韩中文视频免费在线观看|