我正在使用 Powershell 探索 Microsoft.SqlServer.Dac.dll 中提供的 SSDT .NET 类,并且我正在尝试将数据库放入基于源代码控制的 SDLC 作为概念证明。我尝试的第一件事是导出一个 bacpac,以便我们可以将数据库传播到我们的测试环境中,并最终传播到生产环境中。
到目前为止,我在导出 dacpac 时使用DacServices.Extract
. 但是,当我尝试使用 导出相同的数据库时DacServices.ExportBacpac
,会报告大量错误,类似于:
Error validating element [dbo].[GetNewCustomers]: Deprecated feature 'Table hint without WITH' is not supported on SQL Azure.
我知道错误报告的内容(使用(NOLOCK)
提示而不是WITH (NOLOCK)
)。但是,我的工作站上安装了 Sql Server 2012 工具集,并且我正在使用的数据库是 Sql Server 2008 R2,所以我不关心 Azure 对这种语法的支持。
- 当我提取 bacpac 时,有没有办法告诉 Dac 框架我没有使用 Azure?
- 我会以错误的方式解决这个问题吗?我是否应该尝试将数据处理到我的 sqlproj 中的脚本中?