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

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

系統 2855 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條評論
主站蜘蛛池模板: 斗六市| 民县| 宁波市| 元氏县| 互助| 长垣县| 安陆市| 蚌埠市| 安多县| 芜湖市| 大邑县| 桦南县| 贵州省| 全州县| 达孜县| 额尔古纳市| 建德市| 岳阳市| 韩城市| 张家口市| 黔西| 界首市| 永丰县| 寻乌县| 诸暨市| 周口市| 肥城市| 扶绥县| 安龙县| 盐源县| 思南县| 连江县| 海兴县| 福海县| 清新县| 乌拉特后旗| 精河县| 诸城市| 中超| 富平县| 新干县|