zoukankan      html  css  js  c++  java
  • SQL学习中(一)序列

      序列可以理解数值序列生成器,通俗的说是按照已经设定的规则自动产生数据的方案对象。--SQL SERVER不支持

      个人认为序列类似于SQLSERVER中的identity(1,1),可以用于在表中添加数据时,能够自动在上一个记录的字段上自动加1等。

      创建序列的语法:

        CREATE SEQUENCE<序列名> AS <数据类型>

        START WITH<起始值>

        INCEREMENT BY<递增值>

        [MAXVALUE <最大值>]

        [MINVIEW<最小值>]

        [[NO] CYCLE];

      如果需要取序列中的值,则如下调用:

        NEXT VALUE FOR <序列名>

      在某些情况下,我们需要对序列进行重置,此时需要使用一下语句修改可选子句或重置序列计数:

        ALERT SEQUENEC <序列名>

        RESTART WITH <起始值>;--重置计数

      如果需要删除序列,则:

        DROP SQUENEC <序列名>;

      注意:尽管序列作为数据库的一类特征性正在被越来越多的数据库产品所接受,但是这一现象应该被避免,因为序列属于非关系化的一种扩展。它的操作方式并不是基于集合的操作方式,而是更接近于序列文件或过程函数的使用方式。

      例:

        CREATE SEQUENCE USE_CMS
        START WITH 1
        INCREMENT BY 1
        MAXVALUE 999999999
        NO CYCLE;

      SQL SERVER中的解决方式:

      ALTER TABLE <表名> ADD <列名> <数据类型> identity(1,1)

      例:  ALTER TABLE Users ADD UserId int identity(1,1)

  • 相关阅读:
    将博客搬至CSDN
    第一章 spring起步
    动态规划-最长非降子序列
    硬币问题-动态规划详解
    哲学家就餐
    java并发编程(十九)障碍器CyclicBarrier
    java并发编程(十八)阻塞队列和阻塞栈
    java并发编程(十七)Executor框架和线程池
    java并发编程(十七)内存操作总结
    java并发编程(十六)happen-before规则
  • 原文地址:https://www.cnblogs.com/xtt321/p/3199648.html
Copyright © 2011-2022 走看看