日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

SQL Server 2012 開發新功能 序列對象(Sequenc

系統 2885 0

??? 眾所周知,在之前的sqlserver版本中,一般采用GUID或者identity來作為標示符,但是identity是一個表對象,只能保證在一張表里面的序列,當我們遇到以下情況時,

表1

ID 訂單類型 價格
1 火車票 200
4 飛機票 2000
5 船票 600

?

表2

ID 訂單類型 價格
2 酒店 400
3 公園門票 170
6 租車費用 300

?

如上圖,我們需要在多表之間,實現ID的一致性,在sqlserver里面就會有一定的麻煩,通常我們會使用額外使用一張temp表來映射這些ID的關系然后再從中取序列來完成。

sequence在oracle中其實很早就存在了,sqlserver 2012的sequence功能和那個相似,是一個基于schema的對象,所以可以被多表調用。

sequence語法如下:

[html] view plaincopyprint?
  1. CREATE SEQUENCE [schema_name . ] sequence_name?
  2. ??? [ AS [ built_in_integer_type | user-defined_integer_type ] ]?
  3. ??? [ START WITH < constant > ]?
  4. ??? [ INCREMENT BY < constant > ]?
  5. ??? [ { MINVALUE [ < constant > ] } | { NO MINVALUE } ]?
  6. ??? [ { MAXVALUE [ < constant > ] } | { NO MAXVALUE } ]?
  7. ??? [ CYCLE | { NO CYCLE } ]?
  8. ??? [ { CACHE [ < constant > ] } | { NO CACHE } ]?
  9. ??? [ ; ]?
    CREATE SEQUENCE [schema_name . ] sequence_name

    [ AS [ built_in_integer_type | user-defined_integer_type ] ]

    [ START WITH <constant> ]

    [ INCREMENT BY <constant> ]

    [ { MINVALUE [ <constant> ] } | { NO MINVALUE } ]

    [ { MAXVALUE [ <constant> ] } | { NO MAXVALUE } ]

    [ CYCLE | { NO CYCLE } ]

    [ { CACHE [ <constant> ] } | { NO CACHE } ]

    [ ; ]


  

start with 設置起始值

increment by 設置增長間隔

min和max分別設置最小和最大值

cycle設置是否循環

cache指定緩存的設置

SQL Server 2012 開發新功能 序列對象(Sequence)


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!??!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 都安| 平遥县| 凤翔县| 安龙县| 竹北市| 辰溪县| 英吉沙县| 宁强县| 镇康县| 淳安县| 临城县| 台北市| 阿尔山市| 禹州市| 务川| 渝北区| 丘北县| 平定县| 涿州市| 宣威市| 启东市| 夹江县| 花垣县| 胶州市| 二连浩特市| 浑源县| 泰顺县| 遂川县| 济源市| 延川县| 咸丰县| 航空| 三穗县| 铁岭市| 山丹县| 启东市| 安国市| 上林县| 辉县市| 山阳县| 双峰县|