1

我有一个 SQL 数据库项目,我最近在其中修改了一个FILESTREAM列以允许空值。我正在尝试将项目的 dacpac 发布到该列已经存在的数据库,作为文件流列,但当前是NOT NULL.

我正在使用 sqlpackage.exe 命令行工具(版本 12.0.2882.1)执行发布。但是,它会产生错误:

Error SQL72014: .Net SqlClient Data Provider: Msg 4990, Level 16, State 1, Line 1 Cannot alter column 'document' in table 'Document' to add or remove the FILESTREAM column attribute.
Error SQL72045: Script execution error.  The executed script:
ALTER TABLE [dbo].[Document] ALTER COLUMN [document] VARBINARY (MAX) NULL;

错误中的 sql 看起来生成的脚本正在尝试删除列上的 FILESTREAM 属性,我猜这就是 SQL Server 抱怨的原因......但它为什么要这样做?我的数据库项目仍然具有标记为的列FILESTREAM

4

1 回答 1

1

通过将 sqlpackage.exe 和相关库从版本 12.0.2882.1 升级到 12.0.3021.1 来修复

于 2015-11-23T20:11:54.620 回答