zoukankan      html  css  js  c++  java
  • Oracle(Sequence、Trigger、Procedure、Job) Mr

    1. 序列:sequence,实现功能,实现主键的自增长(sqlserver可直接设定),hibernate也做了实现

    Create sequence 
    create sequence SNIPER_TEST_SQS
    minvalue 1
    maxvalue 999999999999
    start with 1
    increment by 1
    cache 10;

      在表中的应用

    insert into sniper_test (id,name,degree,address) values (sniper_test_sqs.nextval,'张三','学士','山东');
    commit;

    2.触发器:trigger,用触发器的方式实现上边的内容

    CREATE OR REPLACE TRIGGER SNIPER_TEST_TRIG
    BEFORE INSERT ON SNIPER_TEST
    FOR EACH ROW
    BEGIN
    SELECT SNIPER_TEST_SEQUENCE_1.NEXTVAL INTO :NEW.ID FROM DUAL;
    END;

    3.存储过程:procedure

    create or replace procedure PC_SNIPER_TEST
        is
    begin
        insert into sniper.sniper_test (id,name,degree,address) values ('','张三','学士','山东');
        commit;
    end;

    4.定时器Job, 创建job,每隔一分钟定时执行,每隔一份中执行时,时间会有延迟,一般要63秒左右才能定时执行一次,目前没有好的解决方法*

    begin
    sys.dbms_job.submit(job => :job,
    what => 'PC_SNIPER_TEST;',
    next_date => to_date('13-08-2012 14:20:39', 'dd-mm-yyyy hh24:mi:ss'),
    interval => 'SYSDATE+1/(24*60)');
    commit;
    end;
    /
     
    Mr-sniper
    北京市海淀区
    邮箱:rafx_z@hotmail.com
  • 相关阅读:
    麦肯锡 问题分析与解决技巧
    JavaSe_IO流总结
    tcpdump
    interface
    phpexcel 合并单元格后的动态行高
    分布式事务锁的实现
    IntelliJ IDEA 实用快捷键
    Redis安装教程
    ng new my-app创建angular项目是卡住的解决办法
    SqlYog无法连接mysql数据库(包括docker环境)的解决方法
  • 原文地址:https://www.cnblogs.com/rafx/p/oraclePtpj.html
Copyright © 2011-2022 走看看