免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
informix中的序列sequence
    informix自10開始可以產(chǎn)生序列(sequence)。序列(sequence)有時(shí)候也被叫做序列產(chǎn)生器(sequencegenerator)或序列對象(sequence object)。它產(chǎn)生一個(gè)單調(diào)增或單調(diào)減的整數(shù)序列。
創(chuàng)建序列:
   CREATE SEQUENCE seq_2
    INCREMENT BY1 
    START WITH 1
    MAXVALUE30 
    MINVALUE 0
   NOCYCLE 
    CACHE10 
    ORDER;
  上面示例中創(chuàng)建了一個(gè)名為seq_2的序列,該序列產(chǎn)生從1到30的單調(diào)遞增1的整數(shù),如果大小超過30則報(bào)8313(超過最大值)錯(cuò)誤。這里的NOCYCLE選項(xiàng)表示如果產(chǎn)生的整數(shù)大于最大值后則停止生成整數(shù),若設(shè)為CYCLE則將從開始值重新開始生成數(shù)據(jù)。
改變序列:
ALTERSEQUENCE seq_2 RESTART WITH 5 INCREMENT by 2 MAXVALUE300;該實(shí)例修改seq_2為產(chǎn)生從5開始,最大值300,每次遞增2的序列

重命名序列:
rename sequence seq_2 to seq_3
該語句修改seq_2的名字為seq_3,但功能不變。

刪除序列:
DROP SEQUENCE seq_2;
該語句刪除序列seq_2。

使用序列
CREATE TABLE tab1 (col1 int, col2int); 
INSERT INTO tab1 (col1, col2) VALUES (seq_2.NEXTVAL, seq_2.NEXTVAL)    --用序列seq_2的下一個(gè)值和當(dāng)前值插入表tab1 
SELECT * FROM tab1; 
            col1 col2 
                1
ALTER SEQUENCE seq_2 RESTART WITH 5 INCREMENT by 2 MAXVALUE 300;--修改序列 
INSERT INTO tab1 (col1, col2) VALUES (seq_2.NEXTVAL, seq_2.NEXTVAL)--再次插入數(shù)據(jù)
SELECT * FROM tab1;        
            col1 col2 
                1
                5
當(dāng)序列產(chǎn)生的值超過最大值時(shí),則會(huì)出現(xiàn)如下錯(cuò)誤:8313: Sequence (informix.seq_2) exceeds itsMAXVALUE.

要注意的是:

①第一次nextval返回的是初始值;隨后的nextval會(huì)自動(dòng)增加你定義的incrementby值,然后返回增加后的值。
  currval總是返回當(dāng)前sequence的值,但是在第一次nextval初始化之后才能使用currval,否則會(huì)出錯(cuò)。
   一次nextval會(huì)增加一次sequence的值。但是如果你在同一個(gè)條SQL語句里面針對同一個(gè)sequence使用多次nextval,其值都是一樣的。
②如果指定cache值,就可以預(yù)先在內(nèi)存里面放置一些sequence,這樣存取的快些。cache里面的取完后,自動(dòng)再取一組到cache。使用cache或許會(huì)跳號, 比如數(shù)據(jù)庫突然不正常down掉(shutdown abort),cache中的sequence就會(huì)丟失.所以可以在create sequence的時(shí)候用nocache防止這種情況

總之,使用序列(sequence)可以快速的插入有序的不重復(fù)數(shù)據(jù),這對于某些需要產(chǎn)生大量不重復(fù)整數(shù)的環(huán)境中十分有用,但序列只能產(chǎn)生有序的整數(shù)數(shù)據(jù),也因此限制了該用法的使用場景。但不管怎樣,有了序列總能使我們的一些操作變得輕松便利
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
從不sequential的sequence
Oracle中序列(SEQUENCE)的使用一例
SEQUENCE
DB2和Oracle創(chuàng)建序列和查詢的區(qū)別
使用navicat創(chuàng)建postgres如何設(shè)置主鍵自增序列
不通過刪除重建方式重置序列值得簡單方式。
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服