clwn.net
当前位置:首页 >> orAClE 如何给表新增加的ID字段赋值 >>

orAClE 如何给表新增加的ID字段赋值

使用oracle数据库中的关键字sequence来实现目的。 //创建mySeq create sequence mySeqstart with 1increment by 2maxvalue 40minvalue 1cycle //创建用户表 create table USER(Id int,CompName varchar2(20)) 插入语句可以这样写: insert into U...

呃,简单点的方法: 在表中增加一个列,为自增序列,然后执行: update 表 set 自增序列=rownum; 这样就把以前的3000多万行都编号了,然后再用Sequence做序列; 这样快速,还不会出错。

先在数据库中新增一个序列,如在oracle数据库中执行如下语句新增一个名为test_seq的序列 CREATE SEQUENCE test_seq INCREMENT BY 1 -- 每次加几个 START WITH 1 -- 从1开始计数 NOMAXVALUE -- 不设置最大值 NOCYCLE -- 一直累加,不循环 以后你往...

这个可能要进行几步操作 第一步 alter table 表名 add id int; 然后 update 表名 set id=rownum; commit; 再然后 select max(id) from 表名;--找出这个最大id 然后建立楼上说的sequence 不过起始值就是你刚才select 出来的这个最大id+1 -----补...

主键必须保持数据的唯一性,如果你的重复记录能够删除,执行 select a from table group by a having count(a)>1; select * from table where a is null; 把重复的值选出删除, 执行 alter table tab_a add constraint pk_tab_a primary key(col1) ...

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...

如果id为唯一索引的话 你要先把id为15的改成一个不在id内的数字 比如 update 表名 set menuid=0 where menuid=15; commit; 然后把其他的加1 update 表名 set menuid=menuid+1 where menuid between 1 and 14; commit; 最后,把之前15,后来改成0...

需要先创建序列,然后nextval添加数据使其自动生成序号。 1、创建表: create table test(id int,name varchar2(20));2、创建序列: Create sequence seq_test_idIncrement by 1Start with 1Maxvalue 999999Minvalue 1Nocyclenocache;3、插入数...

权限的问题有点不清晰了,不知道你能不能写匿名块: Declare Begin End; 如果可以的话,就在Declare中声明一个变量,用return方法赋值给他,然后用DBMS_OUTPUT.PUT_LINE输出(前提你要开启DBMS_OUTPUT,这个可到网上查)。 select max(列名) from...

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