序列(Sequence) 是序列号生成器,可以为表中的行自动生成序列号,产生一组等间隔的数值(类型为数字)。不占用磁盘空间,占用内存。

其主要用途是生产表的主键值,可以在插入语句中引用,也可以通过查询检查当前值,或使序列增至下一个值。

  • 创建序列
CREATE SEQUENCE sequence_name[INCREMENT BY n][START WITH n][MAXVALUE n | NOMAXVALUE][MINVALUE n |NOMINVALUE]     

例:create sequence test_seq increment by 1 start with 1;

  • 使用序列

NEXTVAL:用于生成序列中的下一个序列号,调用时要指出序列名

例:select test_seq.nextval from dual;

CURRVAL:用于产生序列的当前值,无论调用多少次都不会产生序列的下一个值; 调用CURRVAL时,应先调用NEXTVAL产生过序列的下一个值,否则没有意义; 调用时要指出序列名

例:select test_seq.currval from dual;

  • 实战使用

我们可以在创建表之后使用序列自动生成一个自增字段,使用插入语句:

INSERT INTO YY_PRODUCT(PRODUCT_ID,PRODUCT_NAME
)
VALUES(test_seq.nextval,'秋冬女士打底裤加绒加厚'
);

Oracle 使用序列插入表自增字段(主键)相关推荐

  1. Oracle 使用序列创建自增字段

    在Oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方. 1.Create Sequence 你首先要有create sequence或者creat ...

  2. MySQL 使用自增ID主键和UUID 作为主键的优劣比較具体过程(从百万到千万表记录測试)...

    測试缘由 一个开发同事做了一个框架.里面主键是uuid.我跟他建议说mysql不要用uuid用自增主键,自增主键效率高,他说不一定高,我说innodb的索引特性导致了自增id做主键是效率最好的,为了拿 ...

  3. MySQL 使用自增ID主键和UUID 作为主键的优劣比较详细过程(从百万到千万表记录测试)...

    Reference: https://blog.csdn.net/mchdba/article/details/52336203 一个开发同事做了一个框架,里面主键是uuid,我跟他建议说mysql不 ...

  4. oracle批量插入并且返回自增主键_mybatis + (oracle)实现主键自增 + 插入数据并返回主键...

    一.实现主键自增 在oracle数据库中,主键并没有办法自动增长,无法使用insert对应的useGeneratedKeys和keyProperty属性自动返回增加的主键. 要实现自增需要修改 ID列 ...

  5. mybatis 插入数据时返回主键

    在使用MyBatis做持久层时,insert语句默认是不返回记录的主键值,而是返回插入的记录条数:显然,假如主键是你生成后插入的,自然你已经有主键了,显然不需要我们再去获得,所以我们这里处理的是当主键 ...

  6. Mybatis插入数据后获取主键的值

    Mybatis插入数据后获取主键的值 1. 所使用的数据库是支持自增的,且主键是自增的 <!-- 支持自增的数据库且主键是自增的:自动将插入后自增id的值赋值给传入的Employee的id--& ...

  7. 做工作流时候 Mybatis 在 insert 之后想获取自增的主键 id,但却总是返回1

    Mybatis 在 insert 之后想获取自增的主键 id,但却总是返回1 错误说明: 返回的1是影响的行数,并不是自增的主键id: 想要获取自增主键id,需要通过xx.getId()方法获取,因为 ...

  8. mysql插入成功返回主键_MyBatis + MySQL返回插入成功后的主键id

    这是最近在实现perfect-ssm中的一个功能时碰到的一个小问题,觉得需要记录一下,向MySQL数据库中插入一条记录后,需要获取此条记录的id值,以生成对应的key值存入到redis中,id为自增i ...

  9. MySQL设置自增的主键

    1.如何设置自增的主键 很简单,只需要在主键后面添加AUTO_INCREMENT关键字就行了 CREATE TABLE `user`(id INT PRIMARY KEY AUTO_INCREMENT ...

最新文章

  1. 更换yum的源为阿里云或者网易
  2. 一文为你详解2D与3D人脸识别有什么区别?
  3. 2019金融科技风往哪儿吹?蚂蚁金服联合20余家金融机构预测新年热点:5G、区块链上榜...
  4. php的数组与字符串的转换函数整理
  5. 23,148,855,308,184,500是一个神奇的数字,还是纯粹的机会?
  6. 2-02字符编码的演化
  7. lagom的微服务框架_微服务有麻烦吗? Lagom在这里为您提供帮助。 试试吧!
  8. Unix网络编程(六)高级I/O技术之复用技术 select
  9. 转:C++反汇编揭秘2 – VC编译器的运行时错误检查(RTC)
  10. Confluence 6 重新获得附件指南
  11. 所谓的三十之后无技术
  12. RK3288 开机时间和开机速度优化安卓系统优化
  13. java调用zebra斑马打印条码+英文+数字+中文
  14. OpenCV中出现“Microsoft C++ 异常: cv::Exception,位于内存位置 0x0000005C8ECFFA80 处。”的异常...
  15. 下次激活策略10_宋楠:解读北汽新能源EU5R550核心技术之低温充电预热策略
  16. 求出二维数组的最大元素及其所在的坐标
  17. github的Whoa there!问题
  18. vue引入 wps在线编辑版
  19. 局域网添加DNS服务器进行域名解析
  20. 高质增长,全年盈利!2022年京东业绩报告来了!

热门文章

  1. c语言原子操作实例,多CPU上的原子操作
  2. Java练习、每日一题、共100题
  3. 利用java swing编写一个简易的计算器,实现了括号,优先级,三角函数,阶乘等功能
  4. Unity之JSON(数据存储)
  5. 通过百度语音生成音频文件
  6. 什么是消息队列(MQ)
  7. eclipse默认指向WebContent目录修改为webRoot 设置说明
  8. 机器学习之信用卡欺诈检测(零基础,附数据及详细python代码2022年Tensorflow2)
  9. python携程酒店评论_python爬取携程景点评论信息
  10. 50条经典(学生,课程,成绩,教师)表SQL语句~~值得一看!