先看看上面的说明,你可以按楼上朋友说的,创建一个初始值为200,增长人2的序列,当你需要使用这个序列的时候,你只要用一条SQL语句去查询就要可以得到你需要的数了:Select seq_stockEXPORT.nextval from dual其中seq_stockexport这个就是你定义的序列的名称定义序列的方法你可以在ORACLE的CONSOLE或是在SQL PLUS完成
是插入,还有要查询一个DATE类型的年份是1997怎么查找阿?不限定月份和日期,请给写个语句例子
ok , i already create the sequence, but I want a table named customer, I would want it's attribuate named c# to use this sequence.Does it mean to add a constraint to the table customer which to check the value of c# is sequence? i try this statement CREATE SEQUENCE Cus_sequence START WITH 200 INCREMENT BY 2; ALTER TABLE Customer ADD CONSTRAINT Cus_CHK1 CHECK(c#=rsequence.nextval); but the statement doesn't work, when i run it in sql-plus,it says "RSEQUENCE"."NEXTVAL": invalid identifiercan anyone tell me what's wrong?
KEYWORD 描述
START WITH 定义序列生成的第一个数字,缺省为1
INCREMENT BY 定义序列号是上升还是下降,对于一个降序的序列INCREMENT BY为负值
MINVALUE 定义序列可以生成的最小值,这是降序序列中的限制值。缺省情况下该值为NOMINVALUE,NOMINVALUE,对于升序为1,对于降序为-10E26.
MAXVALUE 序列能生成的最大数字。这是升序序列中的限制值,缺省的MAXVALUE为NOMAXVALUE,NOMAXVALUE,对于升序为10E26,对于降序为-1。
CYCLE 设置序列值在达到限制值以后可以重复
NOCYCLE 设置序列值在达到限制值以后不能重复,这是缺省设置。当试图产生MAXVALUE+1的值时,将会产生一个异常
CACHE 定义序列值占据的内存块的大小,缺省值为20
NOCACHE 在每次序列号产生时强制数据字典更新,保证在序列值之间没有间隔当创建序列时,START WITH值必须等于或大于MINVALUE。 删除序列使用DROP SEQUENCE语句DROP SEQUENCE sequence_name
先看看上面的说明,你可以按楼上朋友说的,创建一个初始值为200,增长人2的序列,当你需要使用这个序列的时候,你只要用一条SQL语句去查询就要可以得到你需要的数了:Select seq_stockEXPORT.nextval from dual其中seq_stockexport这个就是你定义的序列的名称定义序列的方法你可以在ORACLE的CONSOLE或是在SQL PLUS完成
i try this statement
CREATE SEQUENCE Cus_sequence
START WITH 200
INCREMENT BY 2;
ALTER TABLE Customer
ADD CONSTRAINT Cus_CHK1 CHECK(c#=rsequence.nextval);
but the statement doesn't work, when i run it in sql-plus,it says "RSEQUENCE"."NEXTVAL":
invalid identifiercan anyone tell me what's wrong?
你建立的SEQUENCE不是叫Cus_sequence吗?rsequence是什么??
上面的你把rsequence.nextval改为Cus_sequence.nextval看看行不?