Oracle创建序列 sequence
Oracle中的序列号顾名思义就是创建一个序列号,可以在插入或者更新的时候调用,相当于是一个生成器
创建语法:
create sequence myse
increment by 1 --增长度
start with
1 --从哪里增加,就是说下一个获取的值从这个值开始
nomaxvalue --不设置最大值
对应的:maxvalue 30、
order --指定一定往下增加
nocycle
--不循环,CYCLE和NOCYCLE 表示当序列生成器的值达到限制值后是否循环
cache 10
--CACHE(缓冲)定义存放序列的内存块的大小,默认为20。NOCACHE表示不对序列进行内存缓冲。对序列进行内存缓冲,可以改善序列的性能
修改:
序列的某些部分也可以在使用中进行修改,但不能修改SATRT
WITH选项。对序列的修改只影响随后产生的序号,已经产生的序号不变。修改序列的语法如下:
ALTER SEQUENCE emp_sequence
INCREMENT BY 10
MAXVALUE 10000
CYCLE -- 到10000后从头开始
NOCACHE ;
需注意:
第一次NEXTVAL返回的是初始值;随后的NEXTVAL会自动增加你定义的INCREMENT
BY值,然后返回增加后的值。CURRVAL
总是返回当前SEQUENCE的值,但是在第一次NEXTVAL初始化之后才能使用CURRVAL,否则会出错。一次NEXTVAL会增加一次SEQUENCE的值,所以如果你在同一个语句里面使用多个NEXTVAL,其值就是不一样的。
删除:
DROP SEQUENCE order_seq;
< type="text/javascript">
< type="text/javascript">
相关文档:
LENGTH calculates length using characters as defined by the input character set.
LENGTHB uses bytes instead of characters.
VSIZE returns the number of bytes in the internal representation of expr.
LENGTHC uses Unicode complete characters.
LENGTH2 uses UCS2 codepoints.
......
decode函数
语法:
decode(expr,search,result[,search,result]..[,search,result][,default])
解释:
比较expr与每个search的值,如果expr等于某个search,则返回相应的result;如果没有匹配的值,则返回default值;如果没有指定default值,则返回null
注意:
比较前,Oracle自动将expr的数据类型转换成第一个sear ......
Oracle维护常用SQL语句汇总
上一篇 / 下一篇 2008-09-04 11:25:01
查看( 1991 ) / 评论( 0 ) / 评分( 0 / 0 )
如何远程判断Oracle数据库的安装平台
select * from v$version;
查看表空间的使用情况
select sum(bytes)/(1024*1024) as free_space,tablespace_name
from dba_free_space
group by tablespace_ ......
1.绝对值
S:select abs(-1) value
O:select abs(-1) value from dual
2.取整(大)
S:select ceiling(-1.001) value
O:select ceil(-1.001) value from dual
3.取整(小)
S:select floor(-1.001) value
O:select floor(-1.001) value from dual
4.取整(截取)
S:select cast(-1.002 as int) value
O:selec ......