3

我想在安装过程中使用 WIX 创建数据库。我知道我可以使用这样的 SqlDatabase 元素来做到这一点:

<sql:SqlDatabase Id='SqlDatabase' Database='MyDB'  Server='localhost'  Instance='MyInst'
                  CreateOnInstall='yes' DropOnUninstall='yes' ContinueOnError='yes'>
                <sql:SqlScript Id='CreateTables' BinaryKey='CreateTables' ExecuteOnInstall='yes'/>
              </sql:SqlDatabase>

问题是我想在脚本文件中而不是在 SqlDatabase 元素中创建数据库。有没有办法做到这一点?

如果我将 CreateOnInstall 设置为“否”,则脚本不会运行。

4

1 回答 1

1

是的,使用 SqlDatabase 元素连接到主数据库(或您知道存在的任何其他数据库),然后 SqlScript 可以完成您想要的所有工作。您可能需要更新您的 SqlScript,使其以正确的数据库为目标。

<sql:SqlDatabase Id='SqlDatabase' Database='master'  Server='localhost'  Instance='MyInst'>
   <sql:SqlScript Id='CreateTables' BinaryKey='CreateTables' ExecuteOnInstall='yes' />
</sql:SqlDatabase>
于 2013-02-27T14:27:18.213 回答