考虑下表(省略了不必要的字段)和我试图创建的关系:
Contractor__c |Task |Account
|----------------------------|---------------------|---------------|
|Contractor__c NCHAR(18) NULL|WhatId NCHAR(18) NULL|Id NCHAR(18) PK|
|Id NCHAR(18) PK | | |
FK_Contractor__c_Account
|--------------------------------------|
|PK |FK |
|----------|---------------------------|
|Account.Id|Contractor__c.Contractor__c|
FK_Task_Contractor__c
|----------------------------|
|PK |FK |
|----------------|-----------|
|Contractor__c.Id|Task.WhatId|
听起来和看起来很简单,但是这两种关系都无法保存到数据库中,并且我都收到以下错误:
无法创建关系“FK_Contractor__c_Account”。ALTER TABLE 语句与 FOREIGN KEY 约束“FK_Contractor__c_Account”冲突。冲突发生在数据库“Contractors”、表“dbo.Account”、列“Id”中。
无法创建关系“FK_Task_Contractor__c”。ALTER TABLE 语句与 FOREIGN KEY 约束“FK_Task_Contractor_c ”冲突。冲突发生在数据库“Contractors”、表“dbo.Contractor _c”、“Id”列中。
我理解这些消息,因为它无法创建关系,因为它与存在的同名关系冲突,即使实际上没有。有人可以告诉我这里发生了什么吗?
对于任何关心的人,我使用的是 SQL Server 2005 SP4 (9.0.5057),并且这些表是使用 DBAmp 从 Salesforce 链接服务器创建的。