gpt4 book ai didi

sql-server - 如何在wix installer 3.9中从.bak文件(数据库备份)恢复数据库

转载 作者:行者123 更新时间:2023-12-03 00:57:36 24 4
gpt4 key购买 nike

我正在尝试使用wix安装程序3.9从.bak文件(数据库备份文件)恢复sql server数据库。但不幸的是它没有发生。这是我的试用代码

<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>

如果我用 .sql(sql 脚本)文件替换该文件,上述安装程序将成功运行。我还尝试编写脚本文件来恢复数据库,但没有成功。我可以询问社区如何从 wix 安装程序运行 .bak 文件吗?

提前致谢

最佳答案

不幸的是,您将无法使用 bak 文件恢复它。这不是一个脚本(sql:SqlScript 组件需要它),这是一个不同的备份文件。

.bak 文件通常是在 SQL Server 中创建的 native 备份文件。

.sql 文件是一个脚本,甚至可能是一个 mySQL 转储,运行时看起来像是一个恢复,尽管从技术上讲它会创建一个新的数据库。

这在 wix 文档中得到了证实:http://wixtoolset.org/documentation/manual/v3/xsd/sql/sqlscript.html

关于sql-server - 如何在wix installer 3.9中从.bak文件(数据库备份)恢复数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27839361/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com