方法:1、用“create sequence 序列名 minvalue …”创建序列;2、利用“create or replace trigger 触发器名 before insert on message.表名…”创建触发器即可。
本教程操作环境:Windows10系统、Oracle 11g版、Dell G3电脑。
oracle怎么实现主键自增
oracle在创建表的时候不能像mysql那样可以直接选择自增,但是在oracle中我们可以通过给表结构添加序列和触发器,去实现主键自增。
这是PolarDB数据库,但是和Oracle的用法还是很像。
这是新建的表结构,id为主键。
第一步:创建序列
create sequence sms_idminvalue 1nomaxvalue increment by 1 start with 1nocache;
登录后复制
序列其他使用方法
查询序列
select sms_id.currval from dual //查询当前id是第几
登录后复制
删除序列
DROP SEQUENCE sms_id;
登录后复制
第二步:创建触发器
create or replace trigger sms_tg_insertIdbefore insert on message.oa_doc_smsinfo for each row beginselect sms_id.Nextval into:new.id from dual;end;
登录后复制
触发器其他使用方法
删除触发器
drop trigger sms_tg_insertId
登录后复制
第三步:添加数据测试
运行了三次,id自动增长。
推荐教程:《Oracle视频教程》
以上就是oracle怎么实现主键自增的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2069442.html