SQL71501外键:未解析的对象错误引用

时间:2016-11-22 13:15:52

标签: sql-server foreign-keys database-schema sql-server-data-tools

我在向表中添加外键约束时遇到问题。 我的数据库中有两个模式' XYZ'和' ABC'我想从一个模式引用一个表到另一个模式。 我在下面提到的查询在SQL服务器上正常工作,但是在VS2015上构建解决方案时,我收到SQL71501错误。

CREATE TABLE [XYZ].[ProductData]
(
    [ID] [int] IDENTITY(100,1) NOT NULL,
    [ExchangePlanID] [varchar](25) NULL,
    [OracleFinanceMarketNbr] [int] NULL,
    [IssueStateCode] [char](2) NULL,
    [PlanID] [varchar](50) NULL,
    [PrimaryPlatformCode] [char](4) NULL,
    [PlanYear] smallint NOT NULL,
    [VersionRefID] int NOT NULL,
    [InsertedBy] [varchar](50) NOT NULL DEFAULT (suser_sname()),
    [InsertedOnUTC] [datetime] NOT NULL DEFAULT (getutcdate()),
    [ModifiedBy] [varchar](50) NOT NULL DEFAULT (suser_sname()),
    [ModifiedOnUTC] [datetime] NOT NULL DEFAULT (getutcdate()),
PRIMARY KEY CLUSTERED 
(
    [Id] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON, FILLFACTOR = 90) ON [PRIMARY]
) ON [PRIMARY]
GO

ALTER TABLE [XYZ].[ProductData]  WITH CHECK ADD  CONSTRAINT [FK_ProductData_VersionRefID] 
FOREIGN KEY([VersionRefId]) REFERENCES [ABC].[VersionInfo]  ([ID])
GO

表[ABC]。[VersionInfo]已存在于DB中。

如果是从同一架构引用表格,即' XYZ'然后我在构建我的解决方案时没有遇到任何错误。

有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:0)

您需要在SSDT项目中包含或引用所有内容。这意味着你需要CREATE SCHEMA [ABC]某个地方以及CREATE TABLE [ABC].[VersionInfo] ( ... )。 (这假设您已经拥有CREATE SCHEMA [XYZ],或者[XYZ]确实是[dbo],您通常可以免费获得。{/ p>