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个序列值以提高性能。

相关推荐
计算机安禾5 小时前
【数据库系统原理】第19篇:计算机存储层次结构与数据库文件的物理组织
数据库·oracle
JAVA面经实录9175 小时前
操作系统面试题
java·服务器·数据库·计算机网络·面试
摇滚侠5 小时前
mariadb-libs 被 mysql-community-libs-5.7.28-1.el7.x86_64 取代
数据库·mysql·mariadb
DIY源码阁6 小时前
JavaSwing饮品管理系统 - MySQL版
java·数据库·mysql·eclipse
专注搞钱6 小时前
GPT-4o写设备Recipe:从3小时到10分钟
数据库·人工智能·gpt·半导体
东风破1377 小时前
达梦数据库实战:备份恢复与数据迁移全攻略(实例初始化、服务注册、路径迁移)
数据库·chrome
SelectDB技术团队7 小时前
2026 SelectDB AI 产品发布会:Agent Native 数据基础设施能力全景发布
数据库·人工智能·agent·apache doris·selectdb
爱吃羊的老虎7 小时前
【数据库】模块一:数据库基础与关系代数
数据库
dishugj8 小时前
iSCSI + Multipath + ASM:Oracle RAC 共享存储技术链详解
数据库·oracle
yoothey8 小时前
MySQL事务机制解析 - 面试高分知识点
数据库·mysql·面试