日期:2014-05-19  浏览次数:20602 次

关于插入数据的问题
如下表A:  
ID   Name
--------
23   dddd
54   dder

我想把表A的数据插入到与之相同结构的表B中,

但表B中的ID是自增字段,假设当前的ID已经用到了10000

那么插入表B中的数据应该如下所示:

ID   Name
--------
10001   dddd
10002   dder

请问这样的SQL语句该如何写> ?????

------解决方案--------------------
insert into B(name) select name from A where ......
------解决方案--------------------
insert b(name) select name from a
------解决方案--------------------
自增的列不用管,只需要指定其他列名即可

INSERT INTO B([name])
SELECT [name] FROM A
------解决方案--------------------
自增的列不用管,只需要指定其他列名即可

INSERT INTO B([name])
SELECT [name] FROM A
----------------
同意,自增列是会自增的,否则就不是自增列了.

------解决方案--------------------
同意。
如果表B中没有这个自增ID,你又想要,那就增加一个
id int identity
------解决方案--------------------
楼上几位都说对了 自增的字段不要管
------解决方案--------------------
如果想让系统自己编号,追加时,不包括自动编号字段即可。

如果想用自己编号的号,作为自动编号字段的值,可以使用如下设置:


SQL关闭自增长列标识:SET IDENTITY_INSERT

--关闭自增长列添加记录,然后再恢复自增长功能

SET IDENTITY_INSERT 表名 ON

insert into 表名(自动编号字段,字段1,字段2) values (28, 'aaa ', 'bbb ')

SET IDENTITY_INSERT 表名 OFF

------解决方案--------------------
insert into B(name) select name from A
------解决方案--------------------
帮顶
------解决方案--------------------
hui_hui_2007(平安是福) 自增的列设个唯一约束也可以吧..