Visual Studio数据库项目 - 使用SQLCMD变量定义文件大小

问题描述 投票:0回答:1

有人知道是否可以使用SQLCMD变量来定义大小?我正在尝试这个:

ALTER DATABASE [$(DatabaseName)]
ADD FILE (
    NAME = [MyFile_1],
    FILENAME = N'$(DefaultDataPath)$(DefaultFilePrefix)_MyFile_1.ndf', 
    SIZE = $(FileSize) MB, 
    FILEGROWTH = $(FileGrowth) MB )
TO FILEGROUP [MyFileGroup];

但是在尝试构建解决方案时收到以下错误:

SQL80001: Incorrect syntax near '$'.  Expecting ID, INTEGER, QUOTED_ID, STRING, or TEXT_LEX.
SQL46010: Incorrect syntax near $(FileSize).
SQL80001: Incorrect syntax near 'FileSize'. 
SQL80001: Incorrect syntax near 'FileGrowth'.  Expecting '(', or SELECT.

变量在项目配置中定义。

sql-server visual-studio database-project
1个回答
0
投票

它对我来说很好。看起来你错过了文件名后的结束语。也就是说,你有

FILENAME = N'$(DefaultDataPath)$(DefaultFilePrefix)_MyFile_1.ndf, 

但应该有

FILENAME = N'$(DefaultDataPath)$(DefaultFilePrefix)_MyFile_1.ndf', 

此外,您是否已验证发布脚本顶部有setvar,例如

:setvar FileSize "1024"
:setvar FileSize "10"

祝好运!

© www.soinside.com 2019 - 2024. All rights reserved.