我正在使用InstallShield创建安装程序。在此安装过程中,它首先安装SQL Server 2012 Express(成功),第二部分是使用另一个处理所有部署脚本的.exe创建新数据库的地方。
使用安装程序创建数据库时,我在事件查看器中收到以下错误:
“CREATE DATABASE语句失败。主文件必须至少为4 MB才能容纳模型数据库的副本。”
我可以通过进入并将模型数据库的大小减小到3来解决这个问题。但是,我不能真正采取这种方式,因为这些应该是无人值守的安装。
在设置数据库之后,但在我尝试运行部署脚本之前,我可以通过SQL Management Studio使用相同的create语句。然后它就可以很好地创建数据库了。
以下是用于创建数据库的脚本。
CREATE DATABASE [Database1] ON PRIMARY ( NAME = N'Database1', FILENAME
= N'C:\Program Files\Microsoft SQL Server\MSSQL11.INSTANCE1\MSSQL
\DATA\Database1.mdf' , SIZE = 4096KB , FILEGROWTH = 1024KB ) LOG ON
( NAME = N'Database1_log', FILENAME = N'C:\Program Files\Microsoft SQL
Server\MSSQL11.INSTANCE1\MSSQL\DATA\Database1_log.ldf' , 1024KB ,
FILEGROWTH = 10%)
如您所见,大小为4MB,Model Database属性表示其大小为4MB。