2010-06-08 62 views
2

因此,我只想将来自Prod数据库(SQL 2005)的数据复制到本地计算机(SQL 2005 & SQL 2008 Management Studio安装)。如何仅在SQL Server中刷新数据库数据

问题是我遇到了导致任务/脚本失败的外键约束。如果我先导入某些表格,我可以通过这些错误得到结果,但是是否有一种更简单的方法可以一次完成此操作?我不是DBA,所以我无法访问数据库备份。

我试过SQL导入/导出数据向导和发布向导,但它也得到了PK错误。

+0

也没有人知道是否存在SQL Management Studio中的一个64位版本(非表现)?即使使用SQL 2008 R2,它也会将Management Studio安装在x86文件夹中。 – MaxGeek 2010-06-08 21:15:51

回答

2

我会放弃所有外键约束,在复制所有数据后重新应用。

例如如何全局禁用/启用约束,以做批量数据导入

-- Drop Constraint 

IF EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo]. [FK_ForeignKeyName]') AND parent_object_id = OBJECT_ID(N'[dbo].[Table]')) 
ALTER TABLE [dbo].[Table] DROP CONSTRAINT [FK_ForeignKeyName] 


-- Add it back again 
ALTER TABLE [dbo].[Table] WITH CHECK ADD CONSTRAINT [FK_ForeignKeyName] FOREIGN KEY([FeildName]) 
REFERENCES [dbo].[OtherTable] ([OtherField]) 
相关问题