oracle不能实现字段数值的自增长。可以通过序列和触发器来实现一行数据在insert前实现某字段的自增。

首先随便建立一个表,menuId是需要自增的字段
create table menu( menuId number(10) not null primary key,
name varchar2(40) not null,
id_parent number(10) not null,
url varchar2(300) null);
然后建立一个序列,最小值是minvalue,从1开始,步进为1递增,无循环,无缓存。
关于create sequence的详细用法。
create sequence menu_autoinc_seq
minvalue 1
start with 1
increment by 1
nocycle
然后建立一个触发器,在插入tun_menu表之前触发,选取序列的nextval作为新值。
关于create trigger的详细用法。
create or replace trigger menu_autoinc_tg
before insert on menu for each row
begin
select menu_autoinc_seq.nextval into :new.id from dual;
end menu_autoinc_tg;

若删除了一个表的所有数据,想重新插入的时候,让它的主键即序列号从1或其它数字开始,可以这样设置:

在插入数据之前,展开Sequences,右击你要修改的序列,在next number处写上你想写的数字,点apply,refresh即可。

插入数据,你会看到,序列号会从你指定的数字开始。

oracle里主键自动增长的设置相关推荐

  1. Mysql,SqlServer,Oracle主键自动增长的设置

    Mysql,SqlServer,Oracle主键自动增长的设置 参考文献 http://blog.csdn.net/andyelvis/article/details/2446865 1.把主键定义为 ...

  2. sqlserver新增主键自增_深入Mysql,SqlServer,Oracle主键自动增长的设置详解

    1.把主键定义为自动增长标识符类型MySql在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如: create table customers(id i ...

  3. 深入Mysql,SqlServer,Oracle主键自动增长的设置详解

    1.把主键定义为自动增长标识符类型 MySql 在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如: 复制代码 代码如下: create table c ...

  4. mysql sql 设置主键自动增长_Mysql、Sql Server、Oracle主键自动增长的设置

    1.把主键定义为自动增长标识符类型 MySql 在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如: create table customers(id ...

  5. mysql sql 设置主键自动增长_Mysql,SqlServer,Oracle主键自动增长的设置

    在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值.例如: CREATE TABLE google(id INT AUTO_INCREMENT PRIMARY ...

  6. oracle实现主键自动增长

    -- 序列 create sequence email_file_index_seq       increment by 1 -- 每次加几个    start with 1 -- 从1开始计数   ...

  7. oracle主键自动增长

    oracle的主键没有自动怎样功能,小编今天给大家说说怎样设置主键自动增长: 1.创建表: create table tb_user ( id NUMBER(10) not null, createt ...

  8. oracle实现主键自增长及自动生成策略

    文章目录 一 自增主键 两种方法可以设置主键: 自增长主键 唯一序列 一 自增主键 方法一:通过序列以及触发器实现主键自增长 适用于直接使用JDBC连接数据库,这种方式将主键自增长的任务完全交给数据库 ...

  9. db2主键自增和oracle,DB2主键自增长设置(id自增)

    接触DB2还没有多久,最近的项目中 需要创建一个表,表的主键自增长,毕竟跟Oracle有点不一样啊! CREATE  TABLE T_RUNNING_THREAD ( IDINTEGER NOT NU ...

最新文章

  1. java opengl书_GitHub - cy-cyx/OpenGlDome: OpenGl的使用练习(安卓 Java opengl3.0)
  2. 如何设置网站标题更有利于网站SEO优化?
  3. ML之FE:数据处理—特征工程之数据集划分成训练集、验证集、测试集三部分简介、代码实现、案例应用之详细攻略
  4. ad19pcb所有元件都在报错_PLC的线圈输出和置复位,可以混用吗?很多人都会犯这个错误!...
  5. 写 飞秋 程序,就是把简单的事情重复的做好
  6. php++isfile,PHP DirectoryIterator isFile()用法及代码示例
  7. 信用指數旁的星星表示什麼?
  8. win7u盘修复计算机教程视频,钻研U盘修复工具使用教程
  9. fiddler+mitmproxy+夜神模拟器安装
  10. Scanf函数,取地址符和字符数组的联系
  11. Java JDK8新特性Lambda表达式
  12. 名著赏读 | 4个月来的经验总结
  13. 微信小程序的前世今生
  14. (2.0版本)企业微信可信域名,个人添加企业微信可信IP方法
  15. linux 怎么改系统字体,linux系统终端修改字体的方法
  16. 报Python培训班多少钱?报个班值得吗?
  17. c语言 /= 和 *= 是什么意思?
  18. 正面管教之PHP_“PHP父母帮助父母解决问题”活动
  19. Shell 8种字符串截取方法
  20. java awt 简单计算器,JAVA Swing 开发简易计算器(上)

热门文章

  1. android wear播放视频,剑指苹果Watch!Android Wear也支持视频
  2. 考计算机科学考研老师问,计算机考研经验征集、常见问题解答及考研励志帖
  3. 打印机老是需要用户干预_打印机需要用户干预怎么解决,打印机提示需要用户干预...
  4. 不忘初心,坚持创作和分享,做自己喜欢的事 - 2022 年回顾
  5. 猎豹CS9EV,猎豹上位机 电池管理上位机 可以读取到每一节单体电池参数
  6. 用python绘制一个(x^2/16)+(y^2/25)-(z^2/36)=-1的双叶曲面方程并保存
  7. splint的学习与使用
  8. 软件构造--Chapter10-12小结
  9. count(*)和count(字段名)和count(1)
  10. ZigBee 3.0教程-步骤7:物理接口-Switch