Próbuję przywrócić bazę danych serwera sql z pliku .bak (plik kopii zapasowej bazy danych) przy użyciu instalatora wix 3.9. Ale niestety to się nie dzieje. Oto moje kody próbyJak przywrócić bazę danych z pliku .bak (kopia zapasowa bazy danych) w instalatorze wix 3.9
<Fragment>
<Binary Id="PHRBackupBin" SourceFile="Database/PHR.bak"></Binary>
<!--<util:User Id="SQLUserSA" Name="[DB_USER]" Password="[DB_PASSWORD]"></util:User>-->
<util:User Id="SQLUserSA" Name="sa" Password="sa"></util:User>
<DirectoryRef Id="INSTALLFOLDER">
<Component Id="SqlComponent" Guid="8A1C82DB-1DD3-4FB5-8600-4F370FE1E04B">
<Condition>NOT Installed</Condition>
<sql:SqlDatabase Id="SqlServerDatabase" Database="PHR" Server="." CreateOnInstall="yes" DropOnUninstall="yes" User="SQLUserSA" ContinueOnError="no" Instance="SQLEXPRESS">
<sql:SqlScript Id="PHRBackup" ExecuteOnInstall="yes" ExecuteOnUninstall="no" BinaryKey="PHRBackupBin" ContinueOnError="no" />
</sql:SqlDatabase>
<CreateFolder/>
</Component>
</DirectoryRef>
<ComponentGroup Id="DatabaseConfiguration">
<ComponentRef Id="SqlComponent"></ComponentRef>
</ComponentGroup>
Powyższy instalator przebiega pomyślnie, jeśli zastąpić plik z .sql (skrypt SQL) plik. Próbowałem też napisać plik skryptu, aby przywrócić bazę danych, ale bez powodzenia. Czy mogę prosić społeczność o uruchomienie pliku .bak z instalatora wix?
góry dzięki
Czy spróbować zwyczaj kation wykonać do przywróconej bazy danych? 1) dodaj akcję niestandardową, przekaż cofniętą lokalizację pliku, a wewnątrz niestandardowej akcji wpisz kod C#, aby przywrócić bazę danych na serwerze. –