zoukankan      html  css  js  c++  java
  • oracle 自动增长

    在SQLSERVER和MYSQL里面自动增长字段直接设置就可以。在ORACLE里面就复杂多了。特别是我这样的初学者,不过网络是最好的老师,看了很多相关介绍,本人使用的是使用触发器。具体如下:

          首先要创建序列

     CREATE SEQUENCE my_seq          ----以my_seq为名创建序列
    START WITH 1                  ----从1开始递增,可以是其他数字
    INCREMENT BY 1                   ----步进为1
    MAXVALUE 99999999999 [NOMAXVALUE]  ----递增的最大值,NOMAXVALUE没有最大值
    NOCYCLE                   ----CYCLE在有最大值时,达到最大值99999999999后循环从1开始再次递增,NOCYCLE不循环
    CACHE 20;                  ----缓存,默认为20

         创建触发器

    create or replace trigger t_name
    before insert
    on tablename
    for each row
    declare
    newid number(18,0);
    begin
    select stu.nextval into newid from dual;
    :new.tableid:=newid;
    end;

        触发器一般语句

    CREATE [OR REPLACE] TRIGGER trigger_name
    {BEFORE | AFTER }
    {INSERT | DELETE | UPDATE [OF column [, column …]]}
    [OR {INSERT | DELETE | UPDATE [OF column [, column …]]}...]
    ON [schema.]table_name | [schema.]view_name 
    [REFERENCING {OLD [AS] old | NEW [AS] new| PARENT as parent}]
    [FOR EACH ROW ]
    [WHEN condition]
    PL/SQL_BLOCK | CALL procedure_name;
    


         查看、删除、修改序列

    select sequence_name from user_sequences  -----查看

    DROP SEQUENCE name; ---- 删除
    ALTER SEQUENCE emp_sequence ---修改 INCREMENT BY 10 MAXVALUE 10000 CYCLE -- 到10000后从头开始 NOCACHE ;
  • 相关阅读:
    词法定界
    Lua 多维表的遍历中的赋值
    mac虚拟机parallels 无法启动 "Windows 7" 虚拟机
    MAC下Android的Eclipse开发环境的搭建
    Lua 的函数库 01
    mac 安装lua并配置Subline Text2 的lua开发环境
    Sublime Text2 注册码 汉化 配置lua开发环境
    js 月历 时间函数 月份第一天 星期的判断
    android 判断app是否处于前台
    android 更新下载apk
  • 原文地址:https://www.cnblogs.com/macil/p/3314121.html
Copyright © 2011-2022 走看看