zoukankan      html  css  js  c++  java
  • sqlserver中的序列

    序列是由用户定义的绑定到架构的对象。序列依据定义的间隔按升序或降序生成,并可配置为用尽时重新启动(循环)。序列不与特定表关联。序列与表之间的关系由应用程序进行控制。

    创建序列的语法:

    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 } ]
    [ ; ]
    

    序列可定义为任何整数类型,若未提供任何类型,则将bingint数据类型作为默认类型。

    START WITH <常量>

    序列的起始值

    INCREMENT BY <常量>

    如果为负数则递减,否则递增。不能为0

    [ MINVALUE <常量> | NO MINVALUE ]

    指定序列对象的边界。 新序列对象的默认最小值是序列对象的数据类型的最小值。

    [ MAXVALUE <常量> | NO MAXVALUE

    指定序列对象的边界。 新序列对象的默认最大值是序列对象的数据类型的最大值。

    [ CYCLE | NO CYCLE ]

    此属性指定当超过序列对象的最小值或最大值时,序列对象是应从最小值(对于降序序列对象,则为最大值)重新开始,还是应引发异常。 新序列对象的默认循环选项是 NO CYCLE。

    [ CACHE [<常量> ] | NO CACHE ]

    通过最大限度地减少生成序列编号所需的磁盘 IO 数,可以提高使用序列对象的应用程序的性能。设置缓存后,在第一获取序列后,在服务器的缓存中缓存当前序号和设置的缓存值(缓存个数*增量)。这样以后再次请求时,除非要获取的序号大于缓存值,才将缓存值更新到磁盘中的系统表。

    可以使用NEXT VALUE FOR查询序列获得生成的序列号

    sys.sequences视图可以查看序列信息;也可以使用可视化的方式如下:

  • 相关阅读:
    Android Lock Screen Orientation
    android studio修改新项目package名称
    DevExpress控件GridView挂下拉控件无法对上值
    Datawindow.net+access数据窗口制作方法
    LR11中web_save_timestamp_param
    LR自带网站飞机订票系统 启动
    MySQL ODBC驱动安装和配置数据源
    【笔记】LR配置ODBC连接数据库进行参数化(mysql )未完待续
    【笔记】LR录制方式和常用函数
    【笔记】http1.1支持的7种请求方法
  • 原文地址:https://www.cnblogs.com/goodlucklzq/p/4692502.html
Copyright © 2011-2022 走看看