oracle添加主键自动递增
版权声明:
本文为博主原创文章,转载请声明原文链接...谢谢。o_0。
更新时间:
2020-02-25 13:28:27
温馨提示:
学无止境,技术类文章有它的时效性,请留意文章更新时间,如发现内容有误请留言指出,防止别人"踩坑",我会及时更新文章
前言
oracle里是没有自动递增功能的。下面是使用触发器和序列来生成一个递增id添加上去,另外请注意oracle中查询的时候字段/列如果没有引号的号默认为按大写去查询,所以最好加上引号
创建表
创建如下文章表,主键为article_id
创建一个序列
create sequence seq_article minvalue 1 nomaxvalue start with 1 increment by 1 nocycle nocache;
创建触发器
在有插入操作的时候如果主键为null就生成一个序列添加上去
CREATE OR REPLACE TRIGGER tr_article BEFORE INSERT ON "kl_article" FOR EACH ROW WHEN (NEW."article_id" is null) begin select seq_article.nextval into:NEW."article_id" from SYS.dual; end;