我正在嘗試創建一個將安裝SQL Server數據庫的.msi文件。我有以下代碼,但是當我在虛擬機上運行.msi時,數據庫不會顯示在VM上的SQL Server Management Studio中。我錯過了什麼?如何使用Wix創建SQL Server數據庫
<Directory Id="TARGETDIR" Name="SourceDir" ComponentGuidGenerationSeed="MYGUID-AEAC-4fdf-86D0-05B33BAD4550">
<Component Id="SqlScripts" Guid="MyGUID-A87F-42D2-B6E7-BD8790548625">
<util:User Id="SQLUser" Name="User" Password="password" CreateUser="yes" UpdateIfExists="no"/>
<sql:SqlDatabase Id="SQLDatabase" Database="MyDatabase" User="SQLUser" Server=".\SQLEXPRESS"
CreateOnInstall="no" CreateOnUninstall="no" CreateOnReinstall="no" ConfirmOverwrite="no"
DropOnInstall="no" DropOnReinstall="no" DropOnUninstall="no" ContinueOnError="yes">
<sql:SqlScript Id="MyDatabase" BinaryKey="MyDatabase" ExecuteOnInstall="yes" ExecuteOnReinstall="no" ExecuteOnUninstall="no" ContinueOnError="no" Sequence="4"/>
</sql:SqlDatabase>
<!-- stops and restarts World Wide Web Publishing Service (W3SVC) during the install or uninstall -->
<ServiceControl Id="ServiceControlWebSite" Name="W3SVC" Start="both" Stop="both" Wait="yes" />
</Component>
</Directory>
<Binary Id="MyDatabase" SourceFile="myDatabase.sql"/>
<Feature Id="Complete" Title="Setup" Level="1">
<ComponentRef Id="SqlScripts" />
</Feature>
我不知道服務控制是什麼,但我認爲這不是什麼問題。
Wix應該創建數據庫還是腳本應該這樣做?目前該腳本創建表並插入數據。我也嘗試過創建數據庫的腳本,但沒有任何反應。我懷疑這些代碼是否被執行,因爲沒有創建任何代碼。
當我在SQL Server Management Studio中單獨運行腳本的數據庫中創建,這進一步增加了我的疑問是,維克斯代碼工作。