考虑以下表格(省略了不必要的字段)以及我正在尝试创建的关系:
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'。改变 TABLE语句与FOREIGN KEY约束冲突 “FK_Contractor__c_Account”。冲突发生在数据库中 “承包商”,表“dbo.Account”,列“Id”。
无法创建关系'FK_Task_Contractor__c'。改变 TABLE语句与FOREIGN KEY约束冲突 “FK_Task_Contractor_ C”。冲突发生在数据库中 “承包商”,表“dbo.Contractor _c”,列'Id'。
我理解这些消息因为它无法创建关系,因为它与存在同名的关系冲突,即使实际上没有一个。有人可以告诉我这里发生了什么吗?
对于任何关心的人,我使用的是SQL Server 2005 SP4(9.0.5057),并且这些表是使用DBAmp从Salesforce链接服务器创建的。
答案 0 :(得分:3)
此错误消息表示某些数据不满足约束。这并不意味着发生了一些基于模式的冲突。
答案 1 :(得分:0)
我遇到了同样的问题......我进入了我的主表,在三个表中找到了0个id,这些表提供了下拉列表...我将0更改为表中的值并且wala ...没有其他问题。 ..