【发布时间】:2020-01-28 22:46:13
【问题描述】:
Visual Studio 2019 - SSDT 16.0。
我在 Dev 数据库中有 8 个表,这些表最初是临时的。我删除了表语法的时间部分,项目拒绝构建。我删除了数据库并在 SSMS 中为这些表运行了 Transact 项目,所有的 Create Tables 工作。再次删除数据库并尝试发布,构建失败。对于我转换为标准表的项目中的八个表中的每一个,我都会收到一条错误消息,例如:
] 附近的语法不正确
关于 AircraftHistoryDetail。
双击模态上的错误提示:
找不到文件 MSSQL:AircraftHistoryDetail。
这是 AircraftDetails 表中的代码:
CREATE TABLE [deploy].[AircraftDetail]
(
AircraftDetailId INT IDENTITY(1,1),
NameId INT,
ProfileID INT,
ConstructionNumber VARCHAR(50),
ManufactureDate VARCHAR(50),
Model VARCHAR(50),
Operator VARCHAR(150),
PreviousTailNumber VARCHAR(50),
ManufacturerSerialNumber VARCHAR(50),
TailNumber VARCHAR(50),
[InactiveDate] DATE NULL,
[CreatedFileDate] DATE NULL,
CONSTRAINT PK_deploy_AircraftDetail PRIMARY KEY CLUSTERED ([AircraftDetailId] ASC),
CONSTRAINT FK_deploy_AircraftDetail FOREIGN KEY (NameId)
REFERENCES deploy.[Name] (NameId)
);
【问题讨论】:
-
您是否查看了发布脚本(不一定是您的表定义)来了解语法错误可能位于何处?当发布失败时,单击查看脚本,然后复制/粘贴 VS 尝试在 SQL Server 上执行的内容,也许您可以发现问题,至少在过去对我有帮助。
-
感谢您的指点,但任何发布尝试都会产生错误模式 - 构建失败。我已经从项目中删除了 AircraftDetail 文件,从数据库中删除了表,清理了项目并尝试重建。与以前的错误相同,Visual Studio 告诉我错误出现在项目中不存在的文件 AircraftHistoryDetail 上。我今天将恢复到所有 8 个文件的备份副本。
-
尝试从解决方案中删除:所有 jfm 文件、所有 dbmdl 文件、所有 bin 文件夹、所有 obj 文件夹。然后清理解决方案并点击重建
-
对于任何看到这个的人来说,删除 obj 和 bin 什么也没做,但我删除了项目的 jfm 和 dbmdl 文件,并且在重建时工作。不确定这两个中的哪一个是罪魁祸首。
标签: sql-server sql-server-data-tools