我正在尝试在 Visual Studio 的数据库项目中设置初始数据库文件大小及其自动增长参数,以与发布选项一起使用。我在项目中添加了一个文件组文件 (SqlFile1.sql),其内容如下:
ALTER DATABASE [$(DatabaseName)]
ADD FILE
(
NAME = [SqlFile1],
FILENAME = '$(DefaultDataPath)$(DefaultFilePrefix)_SqlFile1.ndf',
SIZE = 5000MB,
MAXSIZE = UNLIMITED,
FILEGROWTH = 50%
) TO FILEGROUP [PRIMARY]
( documentation )。
当我在选中始终重新创建数据库选项的情况下单击发布时,文件
SqlFile1
是在 PRIMARY 文件组中创建的,但初始大小设置为 3 MB,自动增长为 1 MB,无限制增长。没有错误或警告消息。有趣的是,以下 SQL 脚本:
ALTER DATABASE DatabaseTest
MODIFY FILE (NAME = [SqlFile1], SIZE = 5000MB, FILEGROWTH = 50%);
GO
从 SQL Management Studio 运行正确修改文件的属性。
为什么我的设置被忽略以及如何使它们工作?
最佳答案
在 bin 目录中创建的脚本表明,确实忽略了逻辑文件名、物理文件名和目标文件组以外的属性。最终我通过添加一个部署后脚本解决了这个问题。为此,右键单击数据库项目并选择添加 -> 新项目 -> 用户脚本 -> 部署后脚本。在此脚本中,您可以随意修改数据库,在这种情况下,使用以下命令更改文件的属性:
ALTER DATABASE [$(DatabaseName)]
MODIFY FILE
(
NAME = [SqlFile1],
SIZE = 5000MB,
MAXSIZE = UNLIMITED,
FILEGROWTH = 50%
)
关于sql-server - 如何在数据库项目中设置初始数据库文件大小和文件增长?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23632040/