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

关于数据导入后,ID自动增长有关问题

2012-07-19 
关于数据导入后,ID自动增长问题。因为我设计的数据库表,里面的主键都是ID,且都是自动增长的,我在程序中把数

关于数据导入后,ID自动增长问题。
因为我设计的数据库表,里面的主键都是ID,且都是自动增长的,
我在程序中把数据导出后,再导入到新的机器里面,(环境全部部署好,数据库里面是空的数据,是从我们的数据库里面把数据全部手动删除了之后,把文件拷贝出来再附加到新机器里面的。)

例如,这个xls文件里面的数据是我需要的,框框里面是需要的ID


但是,我用BCP导入数据之后
变成了



这个ID 变了,导致视图里面都没数据了,
数据全部都导入成功!请问该怎么解决这个问题呢?



[解决办法]
导入前,把id字段改为复制模式
[解决办法]
不要直接导入到你的表中

先创建一个新表,把数据导入进去,然后在insert 

SQL code
SET IDENTITY_INSERT tb ON--这样可以把显式值插入表的标识列中。INSERT INTO.....SET IDENTITY_INSERT tb OFF--完成之后关闭选项
[解决办法]
其实下面的也可以
SET IDENTITY_INSERT tb ON--这样可以把显式值插入表的标识列中。
--bcp
SET IDENTITY_INSERT tb OFF--完成之后关闭选项

不过我一般会选择导入到一个临时表,检测数据没问题(如字段长度之类的),在insert 这样不容易出错

[解决办法]
SQL code
SET IDENTITY_INSERT tb onbcp代码SET IDENTITY_INSERT tb off
[解决办法]
可以在导入前,把你的表中主键的自增属性去掉,然后再导入,导入成功后,再把主键设为自增。我以前遇到类似的问题就是这样解决的。

热点排行