• oracle设置自增字段,oracle序列


    如果没有表可以先创建个表

    Sql代码 复制代码
    1. ###建表###   
    2.   
    3. CREATE TABLE "NWVIDEO"."DEVICE"  
    4. (   
    5. "DID" NUMBER NOT NULL,   
    6. "TYPE" NUMBER(3) NOT NULL,   
    7. "BODY" VARCHAR2(100) NOT NULL,    
    8. "HITS" NUMBER(10) DEFAULT 0 NOT NULL,    
    9. PRIMARY KEY("ID")   
    10. )  

     然后是设置序列

    Sql代码 复制代码
    1. ###创建序列###    
    2.   
    3. CREATE SEQUENCE "NWVIDEO"."NWVIDEO_DEVICE_DID_SEQ"    
    4. INCREMENT BY 1     --每次加1个   
    5. START WITH 1           --从1开始计数   
    6. NOMAXVALUE            --不设置最大值   
    7. MINVALUE 1                --最小值为1   
    8. NOCYCLE                    --一直累加,不循环   
    9. CACHE 50                   --设置缓存为50  

     建立触发器

    Sql代码 复制代码
    1. ###建自动更新的触发器###   
    2.   
    3. CREATE OR REPLACE TRIGGER "NWVIDEO"."NWVIDEO_DEVICE_DID_TRIGGER"  
    4. BEFORE INSERT  
    5. ON "NWVIDEO"."DEVICE"  
    6. FOR EACH ROW   
    7. DECLARE  
    8. next_did NUMBER;   
    9. BEGIN  
    10. --Get the next id number from the sequence   
    11. SELECT NWVIDEO_device_did_seq.NEXTVAL   
    12. INTO next_did   
    13. FROM dual;   
    14. --Use the sequence number as the primary key   
    15. --for the record being inserted.   
    16. :new.did := next_did;   
    17. END;  

     如果did字段是主键的话

    可以建一个主键保护器

    Sql代码 复制代码
    1. ###建保护PRIMARYKEY的触发器###    
    2.   
    3. CREATE OR REPLACE TRIGGER "TEST"."NWVIDEO_DID_UPDATE_TRIGGER"  
    4. BEFORE UPDATE OF "DID" ON "NWVIDEO"."DEVICE"  
    5. FOR EACH ROW   
    6. BEGIN  
    7. RAISE_APPLICATION_ERROR (-20000,'vwvideo_device_did_update_trigger:Updates of the DID field'||'are not allowed.');    
    8. END;  
  • 相关阅读:
    ThinkPHP框架 做个简单表单 添加数据例子__ACTION__ __SELF__
    ThinkPHP框架 系统规定的方法查询数据库内容!!同时也支持原生的SQL语句!
    ThinkPHP框架 基础 链接数据库
    ThinkPHP框架 3.2.2 获取系统常量信息 连接数据库 命名空间的理解
    ThinkPHP框架 自定义 Empty 方法保护本地信息不被暴露!!!
    Smarty模板保留缓存
    this指向
    phpcms v9 的表单向导功能的使用方法 附多个案例
    phpcms标签整理_当前栏目调用
    转载]PhpCms V9调用指定栏目子栏目文章的两种方法
  • 原文地址:https://www.cnblogs.com/mxh691/p/1811854.html
Copyright © 2020-2023  润新知