Azure数据库升级:外键不是约束

时间:2017-10-23 06:31:19

标签: sql-server database azure database-project

我正在使用一组脚本来升级Azure数据库。这些脚本基本上在本地数据库中执行,没有任何错误或警告。但是当我在Azure SQL服务器数据库中执行相同的模式脚本时,它会抛出System.Data.SqlClient.SqlException (0x80131904): 'FK_dbo.Persons_dbo.Addresses_AddressId' is not a constraint.

我删除了数据库并在本地和Azure环境中执行了相同的脚本,本地sql数据库工作正常。

注意:我正在使用数据库架构项目来生成架构脚本。它有以下语句抛出错误。

ALTER TABLE [dbo].[Persons] DROP CONSTRAINT [FK_dbo.Persons_dbo.Addresses_AddressId];

1 个答案:

答案 0 :(得分:0)

运行

SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE CONSTRAINT_NAME = 'FK_dbo.Persons_dbo.Addresses_AddressId'

并检查表格名称和架构

首先尝试nocheck

  ALTER TABLE [dbo].[Persons] NOCHECK CONSTRAINT [FK_dbo.Persons_dbo.Addresses_AddressId];    
  ALTER TABLE [dbo].[Persons] DROP CONSTRAINT [FK_dbo.Persons_dbo.Addresses_AddressId];