Azure SQL Server 到本地(本地)服务器数据库数据层导入错误

问题描述 投票:0回答:1

每当导入从 Azure SQL Server 导出的

.BACPAC
数据层文件时,我都会收到此错误消息:

无法导入包。

警告 SQL72012:对象 [database_name_Data] 存在于目标中,但即使您选中“为目标数据库中但不在源中的对象生成删除语句”复选框,也不会删除该对象。

警告 SQL72012:对象 [database_name_Log] 存在于目标中,但即使您选中了“为目标数据库中但不在源中的对象生成删除语句”复选框,该对象也不会被删除。

错误 SQL72014:框架 Microsoft SqlClient 数据提供程序:

消息 547,级别 16,状态 0,第 3 行
ALTER TABLE 语句与 FOREIGN KEY 约束“foreign_key_id”冲突。冲突发生在数据库“database_name”、表“[dbo].[Table_name]”、列“Id”中。

错误 SQL72045:脚本执行错误。执行的脚本: PRINT N'检查约束:foreign_key_id [dbo].[Table_log]';

ALTER TABLE [dbo].[Table_log] with CHECK 检查约束 [foreign_key_id];

(微软.SqlServer.Dac)

我已经检查并实施了以下线程中提供的解决方案:

但是我没有运气...

sql-server migration azure-sql-database localserver bacpac
1个回答
0
投票
The ALTER TABLE statement conflicted with the FOREIGN KEY constraint “foreign_key_id”. The conflict occurred in database “database_name”, table “[dbo].[Table_name]”, column ‘Id’.

Error SQL72045: Script execution error. The executed script: PRINT N’Checking constraint: foreign_key_id [dbo].[Table_log]’;

ALTER TABLE [dbo].[Table_log] WITH CHECK CHECK CONSTRAINT [foreign_key_id];

(Microsoft.SqlServer.Dac)

根据this,当进程已插入所有表中的所有行并且需要启用约束/索引时,将出现上述错误。指出相关表中不存在外键。

要解决上述错误,请按照以下说明操作:

  • 确保导出期间没有发生写入活动,或者您正在从数据库的事务一致副本导出。

  • 确保您的 SQL Server 版本已更新。

  • 使用最新版本的SSMS,选择导入SSMS中的Data-tier Application,如下图

enter image description here

欲了解更多信息,您可以参考以下链接:

© www.soinside.com 2019 - 2024. All rights reserved.