Oracle创建自增序列

某些时候,需要获取到一个自增值

然后点击左下 Apply

也可以通过SQL语句执行

dual在Oracle中是张虚拟表,通常用于执行这样的查询

Oracle中查询语句: select 序列名.nextval from dual

在高斯数据库中:查询是 select my_sequence.nextval 不需要加form xxx

也可以通过sql

CREATE SEQUENCE my_sequence

START WITH 1 -- 初始值为1

INCREMENT BY 1 -- 每次递增1

MINVALUE 1 -- 最小值为1

MAXVALUE 999999999 -- 最大值为999999999

CYCLE; -- 如果达到最大值,重新从最小值开始

ALTER SEQUENCE 序列名 INCREMENT BY 10 MAXVALUE 10000 CYCLE; -- 到10000后从头开始 NOCACHE ;

  1. 修改递增值

    ALTER SEQUENCE my_sequence INCREMENT BY 5;

    上述语句将名为 my_sequence 的序列的递增值修改为5。这意味着每次调用 NEXTVAL 将递增5。

  2. 修改最大值

    ALTER SEQUENCE my_sequence MAXVALUE 1000;

    这个语句将名为 my_sequence 的序列的最大值修改为1000。当序列达到1000时,它将不再递增。

  3. 修改起始值

    ALTER SEQUENCE my_sequence START WITH 100;

    上述语句将名为 my_sequence 的序列的起始值修改为100。下一个生成的值将是100。

  4. 修改循环属性

    ALTER SEQUENCE my_sequence CYCLE;

    这个语句将名为 my_sequence 的序列设置为循环模式。当序列达到最大值后,它将重新从最小值开始(循环)。

  5. 修改缓存属性

    ALTER SEQUENCE my_sequence CACHE 50;

    这个语句将名为 my_sequence 的序列的缓存大小修改为50。这表示数据库将缓存50个序列值以提高性能。

相关推荐
yngsqq9 小时前
兰顿蚂蚁——CAD二次开发
数据库
梁萌10 小时前
ShardingSphere分库分表实战
数据库·mysql·实战·shardingsphere·分库分表
川石课堂软件测试10 小时前
Mysql中触发器使用详详详详详解~
数据库·redis·功能测试·mysql·oracle·单元测试·自动化
鹏说大数据10 小时前
数据治理项目实战系列6-数据治理架构设计实战,流程 + 工具双架构拆解
大数据·数据库·架构
唯余旧忆10 小时前
【数据写入】达梦数据库(dm8)merge into写入时序数据速度慢的问题处理
数据库
小二·11 小时前
MyBatis基础入门《十四》多租户架构实战:基于 MyBatis 实现 SaaS 系统的动态数据隔离
数据库·架构·mybatis
白衣衬衫 两袖清风11 小时前
SQL联查案例
数据库·sql
ShirleyWang01211 小时前
VMware如何导入vmdk文件
linux·数据库
gugugu.11 小时前
Redis Set类型完全指南:无序集合的原理与应用
数据库·windows·redis
wang60212521812 小时前
为什么不采用级联删除而选择软删除
数据库·oracle