首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

怎么复制一条记录

2012-10-20 
如何复制一条记录?测试东西,一条条插太麻烦了。主要是一个序列,要实现的功能是,复制一条表的记录(除去id),

如何复制一条记录?
测试东西,一条条插太麻烦了。
  主要是一个序列,要实现的功能是,复制一条表的记录(除去id),在插入的时候id从刚刚的序列中获取,其它信息从刚刚的信息读取插入。

理想中的插入应该是下面的语句。可惜大家懂得,不能运行哈。

insert into A表 values(select A表.nextval as id, az.name,az.age... from A表 az)

[解决办法]
假设你现在的序列值是1000

SQL code
DROP TABLE t;CREATE TABLE t (id NUMBER,nm VARCHAR2(50));INSERT INTO t VALUES(100,'AAA');INSERT INTO t VALUES(101,'BBB');INSERT INTO t VALUES(103,'CCC');SELECT * FROM T;INSERT INTO T(id,nm) SELECT 1000+ROWNUM,nm FROM t;
[解决办法]
insert into A表 select A表.nextval as id, az.name,az.age... from A表 az

使用select不要写values
[解决办法]
insert into A表 select A表.nextval as id, az.name,az.age... from A表 az

使用select不要写values
[解决办法]
探讨

insert into A表 select A表.nextval as id, az.name,az.age... from A表 az

使用select不要写values

[解决办法]
探讨

可以用序列么?这样插入之后,程序中使用seq会有冲突的呢引用:

假设你现在的序列值是1000
SQL code
DROP TABLE t;
CREATE TABLE t (id NUMBER,nm VARCHAR2(50));
INSERT INTO t VALUES(100,'AAA');
INSERT INTO t VALUES(101,'BBB');
I……

热点排行
Bad Request.