本文主要是介绍使用序列作为插入值初始值不是 1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
--测试如下
SQL> DROP SEQUENCE SEQ_TEST;序列已删除。SQL> CREATE SEQUENCE SEQ_TEST2 MINVALUE 13 MAXVALUE 999999999994 START WITH 15 INCREMENT BY 16 CACHE 20;序列已创建。SQL> CREATE TABLE tb(2 TEST_ID NUMBER PRIMARY KEY,3 TEST_NAME VARCHAR2(20)4 );
CREATE TABLE tb(*
第 1 行出现错误:
ORA-00955: 名称已由现有对象使用 SQL> drop table tb;表已删除。SQL> CREATE TABLE tb(2 TEST_ID NUMBER PRIMARY KEY,3 TEST_NAME VARCHAR2(20)4 );表已创建。SQL> INSERT INTO tb VALUES(SEQ_TEST.NEXTVAL,'ABC');已创建 1 行。SQL> select * from tb;TEST_ID TEST_NAME
---------- -------------------- 2 ABC SQL> spool off;
--创建表时加上 SEGMENT CREATION IMMEDIATE;
SQL> DROP SEQUENCE SEQ_TEST;序列已删除。SQL> CREATE SEQUENCE SEQ_TEST2 MINVALUE 13 MAXVALUE 999999999994 START WITH 15 INCREMENT BY 16 CACHE 20;序列已创建。SQL> CREATE TABLE tb(2 TEST_ID NUMBER PRIMARY KEY,3 TEST_NAME VARCHAR2(20)4 )5 SEGMENT CREATION IMMEDIATE;表已创建。SQL> INSERT INTO tb VALUES(SEQ_TEST.NEXTVAL,'第一个序列')2 /已创建 1 行。SQL> commit;提交完成。SQL> SELECT * FROM tb;TEST_ID TEST_NAME
---------- -------------------- 1 第一个序列
这篇关于使用序列作为插入值初始值不是 1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!