zoukankan      html  css  js  c++  java
  • oracle数据库中序列使用讲解

    oracle数据库中序列使用讲解
    定义:
       序列(SEQUENCE)是序列号生成器,可以为表中的行自动生成序列号,产生一组等间隔的数值(类型为数字)。
       其主要的用途是生成表的主键值,可以在插入语句中使用,也可以通过查询检查当前值,或使序列增至下一个值。
       创建序列需要使用CREATE SEQUENCE系统权限,序列的创建方法:
          create sequence 序列名
          [increment by n]
          [start with n]
          [{maxvalue/minvalue n|nomaxvalue}]
          [{cycle/nocycle}]
          [{cache n|nocache}];
    释义:
       increment by:用于定义序列的步长,若果省略,则默认为1,若果出现负值,则代表序列的值是按照此步长递减的。
       start with:定义序列的初始值(即产生的第一个值),默认为1
       maxvalue:定义序列的最大值。minvalue:定义序列的最小值。nomaxvalue:表示默认选项,没有最大值定义。
       cycle/nocycle:表示当序列生成器的值达到限制值后是否循环,cycle表示循环,nocycle表示不循环。
       cache/nocache:定义存放序列的内存块儿的大小,默认为20。nocache:表示不对序列进行内存缓冲。对序列进行内
                   存缓冲可以改善缓存的性能。
    删除序列的语法:
       drop sequence 序列名;
    序列的使用:
       currval和nextval来引用序列:
       调用mextval将生成序列中的下一个序列号,调用时指出序列名,即用以下方法:
       序列名.nextval;
       currval用于产生序列的当前值,无论调用多少次都不会产生序列的下一个值,如果序列还没有通过调用nextval产生
       过序列的下一个值,先引用currval将没有意义。
    调用currval的方法如下:
       序列名.currval;
       第一次调用nextval会产生序列的初始值。
    将序列作为表的主键的方法:
       在向表中插入数据时调用nextval方法
       insert into 表名 values (序列名.nextval,值1,值2,...);
     
     
  • 相关阅读:
    轻松构建微服务之分布式事物
    Java和操作系统交互细节
    网络内核之TCP是如何发送和接收消息的
    最全的微服务知识科普
    【译】TCP Implementation in Linux
    轻松构建微服务之分库分表
    OSX的一些基本知识
    Delphi中使用比较少的一些语法
    热烈祝贺我的博客开通
    Windows 服务快捷启动命令
  • 原文地址:https://www.cnblogs.com/zja001/p/10145229.html
Copyright © 2011-2022 走看看