我有一个 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