fyqt.net
当前位置:首页 >> orAClE数据库,怎么给已有很多数据的表填充自增序... >>

orAClE数据库,怎么给已有很多数据的表填充自增序...

两个方法: 1,重新创建一个表,然后创建一个序列,把老数据导入新表,删除老表,修改新表名字为老表 2,直接在原来表上增加一个字段,创建一个序列,通过更新的方式修改老数据的这个字段。 具体操作主要是2点,首先是创建一个序列名sequence; ...

你好! 简单点的方法: 在表中增加一个列,为自增序列,然后执行: update 表 set 自增序列=rownum; 这样快速,还不会出错。

oracle 12c之前必须用sequence : create table test_tab ( id number primary key ); create sequence test_seq start with 1 increment by 1 nocycle; create or replace trigger test_trg before insert on test_tab for each row begin selec...

select A,B from arc order by A,B; select A,rownum as B from arc order by A,rownum; 这样写试一下,看看是否好用。

可以通过sequence来实现,每次递增一即可。 create sequence SEQ_ID minvalue 1 maxvalue 99999999 start with 1 increment by 1 cache 30 cycle; 之后执行: insert into tab (auto_id) values (SEQ_ID.Nextval); 备注:sequence 是一个自增长...

oracle的自增需要依靠序列和触发器共同实现 比如 先创建一个表 create table test(id int primary key,name varchar2(10));创建一个序列 create sequence test_seq increment by 1 start with 1 minvalue 1 maxvalue 9999999999999 nocache orde...

用这个方法,已经有数据的 update 表名 set 列=rownum 然后 select max(列名) from 表名 看看最大的那个id是多少 别忘了,是sequence可以设置起始位置的,也就是从几开始自增,这样,你后边的数据不就和前边连续上了吗

楼主 序列就是数字类型 从什么开始是自己定义 不过前面加0 就整成字符串了 肯定不行了 没必要这么做 如果你需要这样的数据 可以写语句的时候做处理 没必要在表里这样整的 下面是创建序列的语句 CREATE SEQUENCE BSITEMCUSTOM_ID_SEQ ---BSITEMCU...

1. drop掉,重新create 2. 查一下当前值:1,变成10001,则+10000 alter sequence SEQ_a increment by 10000 nocache; select SEQ_a.nextval from dual; alter sequence SEQ_a increment by 1 cache 20;

oracle不能建表设置自增序列?什么意思?oracle自增序列只能通过sequence实现,而且只有在插入数据的时候才能使用序列,并不能实现像sql server一样插入数据的时候id列自动生成增长值。

网站首页 | 网站地图
All rights reserved Powered by www.fyqt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com