【问题标题】:c# create a .bacpac file from ms sql databasec# 从 ms sql 数据库创建一个 .bacpac 文件
【发布时间】:2016-10-08 20:55:02
【问题描述】:

我尝试从我的完整数据库中创建一个 bacpac 文件。

我添加了Microsoft.SqlServer.Dac.dll 并创建了一个DacService。在服务上,我调用ExportBacpac 方法。但是我总是得到数据库源不支持 SQL Server 版本的错误。

这是我的代码:

SqlConnectionStringBuilder csb = new SqlConnectionStringBuilder();
csb.DataSource = txtServerStart.Text;
csb.Password = txtPassword.Text;
csb.UserID = txtUserName.Text;

DacServices ds = new DacServices(csb.ConnectionString);
ds.ExportBacpac(@"C:\backup\backup.bacpac" + txtFilename.Text, cbDatabase.SelectedItem.ToString());

错误出现在我调用ExportBacpac 方法的那一行。

【问题讨论】:

  • 可能是因为 .bacpac 仅受 Azure 上的 SQL 数据库支持。您的数据库是在 Azure 上还是在本地?
  • @VivekJain - 你的说法是基于什么?我刚刚使用 SSMS 连接到本地数据库,选择了一个数据库,右键单击,选择 Tasks -> Export Data-Tier Application,通过向导,它为我创建了一个 .bacpac 文件。 (服务器/SSMS 是 2012 年,但没有理由相信在其他版本上不可能)

标签: c#


【解决方案1】:

问题是我使用的是 MS SQL Server 2016,而 Dac DLL 的版本太旧了。我用的是 12.xxxxxx,但我需要 13.xxxxxx

在我引用了这些 DLL 之后,它工作正常

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-11
    • 1970-01-01
    • 1970-01-01
    • 2022-01-18
    • 2021-04-27
    • 1970-01-01
    相关资源
    最近更新 更多