oracle 新增sequence时通过其查询表或者sequence来确定start with的值
2017-11-27 15:10
302 查看
项目使用oracle作为数据库,最初时多个表共用了一个sequence来生产主键,后来需要改造为一个表一个sequence。为了不对历史数据修改,需要根据每个表现在的主键值来确定新建的sequence的start with值。比如需要为user_表新增一个名为seq_user的sequence,而user_表的主键为user_id_,那么语法如下:
BEGIN
declare max_val number;
BEGIN
select max(user_id_) into max_val from user_;
execute immediate('CREATE sequence seq_user minvalue 1 maxvalue 999999999999 start with '||max_val||' increment by 1 cache 50 ');
END;
END;
BEGIN
declare max_val number;
BEGIN
select max(user_id_) into max_val from user_;
execute immediate('CREATE sequence seq_user minvalue 1 maxvalue 999999999999 start with '||max_val||' increment by 1 cache 50 ');
END;
END;
相关文章推荐
- 通过存储过程,查询表的相关表字段信息(sqlserver,mysql,oracle)
- Java通过JDBC连接Oracle之后查询结果和在sqlplus查询结果不一样
- VS2008 IDE连接 ORACLE后新建查询 无响应或者长时间等待
- oracle通过行范围查询取4至10行并排序
- 数据库中的记录通过servlet回显到jsp页面中(连接数据库或者查询參照:对数据进行增删改查)
- oracle查询昨天数据表新增所有记录
- oracle 通过触发器和sequence 实现字段自增
- ORACLE 通过EXP IMP同步数据时sequence问题
- 从网页中传入一个Id 通过Id 删除或者查询
- sqlserver 或者 oracle 查询每科成绩前三名问题
- Oracle 中利用闪回查询确定某表在某时间点之后的修改内容,并恢复至该时间点
- hibernate查询oracle字段,转化为对象字段,字段名确定
- oracle 通过查询灵活插入数据 insert into ...select..
- Oracle 如何循环查询结果集,进行新增或修改
- oracle 通过查询灵活插入数据 insert into ...select..
- 一周乱弹(1,eclipse 远程调试tomcat。2,常量类的作用。3,通过花生壳实现远程连接 端口:3389),4oracle查询日期5,bootstrap文本样式6,6 js四舍五入
- Oracle通过sequence的操作
- oracle 通过身份证号 查询年龄大于60岁的人
- oracle 中通过使用客户端导致查询出来的中文数据为乱码的解决方式
- Oracle中查询主键、外键、sequence、表基本信息等