• 首页
  • 解决方案
  • 域名问题
  • 操作系统
  • 租用托管
  • 企业邮局
  • 云服务
  • 备案专题
  • 技术安全
  • 资料下载
  • 站内搜索:
    您的位置:首页 >> 技术安全 >> Windows安全
    内容页前
    Oracle里的自增字段设置
    发稿作者:管理员   ‖  发布时间:2017/4/6 17:54:38  ‖  查看2129次  ‖  

    大家都知道吧,这很坑,尤其是用惯了MySQL里的自增字段设置,结果Oracle里面没有的。oh,no

    我用的是Oracle 12c版本的,它有一个新特性,可以这样设置自增序列,在创建表是,把id设置为自增序列

    create table t

    (

    id   number generated by default as identity (start with 1 increment by 1),

    name   varchar2(20),

    password varchar2(20),

    Constraint Pk_T Primary Key ( Id )

    );

    很忧桑的是同伴用的是11g的,那只能通过序列+触发器来实现了;

    创建表

    -create table t

    (

    id   number,

    name   varchar2(20),

    password varchar2(20),

    Constraint Pk_T Primary Key ( Id )

    );

    CREATE SEQUENCE seq_t----------------/*序列名称*/

    INCREMENT BY 1 ----------------/*自增1*/

    START WITH 1 ----------------/*从1开始*/

    NOMAXVALUE ----------------/*没有最大值*/

    NOCYCLE

    NOCACHE;

    CREATE TRIGGER tri_t  BEFORE------------------/*创建触发器*/

    INSERT ON t  FOR EACH ROW WHEN (new.id is null)

    begin

    select seq_t.nextval into: new.id from dual;

    end;


                  
    上一篇: Oracle里的自增字段设置
    下一篇: 怎样才能有效防止数据和隐私泄露呢
      联系我们    关于我们    返回顶部↑

    天下数据拥有网站所有权