0

インストール中に実行する必要がある一連の DB スクリプトがあります。ユーザーがサーバーを選択し、資格情報を提供してから、ターゲット データベースを選択できる UI 画面があります。私がする必要があるのは、ユーザーが選択したターゲット データベースにスクリプトの大部分をインストールすることですが、一部のスクリプトはマスター DB に移動する必要があります。ネットで答えを探してみましたが、その方法を教えてくれるものは何も見つかりませんでした。これがどのように達成されるかについて誰かが記事や提案を持っている場合は、少し助けていただければ幸いです。

ありがとう

4

1 に答える 1

0

スクリプトを実行する必要があるデータベースごとに 1 つずつ、2 つの SqlDatabase ノードを宣言できます。

<Binary Id="SqlScriptBinary1" SourceFile="script1.sql" />
<Binary Id="SqlScriptBinary2" SourceFile="script2.sql" />

  <Component Id='SqlComponent.Sql1' Guid='YOUR-GUID-HERE' KeyPath='yes'>
    <sql:SqlDatabase Id='Database1' Database='[DATABASE_NAME1]' Server='[DATABASE_SERVER]' 
                     CreateOnInstall='no' 
                     DropOnInstall='no' DropOnReinstall='no' DropOnUninstall='no' 
                     ContinueOnError='no'>
      <sql:SqlScript Id='SqlScript1' BinaryKey='SqlScriptBinary1' ExecuteOnInstall='yes' />
    </sql:SqlDatabase>
  </Component>

  <Component Id='SqlComponent.Sql2' Guid='YOUR-GUID-HERE' KeyPath='yes'>
    <sql:SqlDatabase Id='Database2' Database='[DATABASE_NAME2]' Server='[DATABASE_SERVER]' CreateOnInstall='no' 
                     DropOnUninstall='no' DropOnInstall='no' DropOnReinstall='no' ContinueOnError='no'>
      <sql:SqlScript Id='SqlScript2' BinaryKey='SqlScriptBinary2' ExecuteOnInstall='yes' />
    </sql:SqlDatabase>
  </Component>

クイック検索を行うと、たとえばこの記事など、役立つ記事が見つかります。

于 2013-10-30T09:32:33.840 に答える