Oracle数据库序列创建、修改、删除

新增Oracle数据库表的序列

CREATE sequence TM_WAYBILL_SEQ minvalue 1 MAXVALUE 10000000000 START WITH 1 increment BY 1 nocache cycle;

修改Oracle数据库的最大序列值

ALTER sequence TM_WAYBILL_SEQ MAXVALUE 10000000000;

删除Oracle数据库的序列

DROP sequence TM_WAYBILL_SEQ;

查询索引序列的当前值(不能是第一次初始化的查询)

SELECT TM_WAYBILL_SEQ.currval FROM DUAL;

增加序列的值,并返回(如果是刚刚建立序列,要先执行下面的语句,才能再使用currval 进行查询)

SELECT TM_WAYBILL_SEQ.nextval FROM DUAL;

修改字段类型(要修改的字段已经存在数据) 

-- 这里我是需要把TOTAL_VOLUME字段改成带小数点的,但是因为数据已经存在,所以采用下面的方式进行修改
-- 将原有的字段名变更为临时字段的名
ALTER table TM_WAYBILL rename column TOTAL_VOLUME to TOTAL_VOLUME_TMP;

-- 新增自己需要的字段
ALTER TABLE TM_WAYBILL ADD TOTAL_VOLUME NUMBER(32, 4);

-- 将原有字段的值赋值到新增的字段中
UPDATE TM_WAYBILL SET TOTAL_VOLUME = CAST(TOTAL_VOLUME_TMP AS NUMBER(32, 4));

-- 删除临时字段
ALTER TABLE TM_WAYBILL DROP COLUMN TOTAL_VOLUME_TMP;

这里如果要重置当前的序列值,目前知道的方式只有删除当前的序列重新生成,如果有好的方式,可以留言,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值