Rob*_*use 4 sql-server azure visual-studio azure-sql-database
我们有一个Visual Studio 数据库项目,正尝试将其迁移到 Azure SQL 数据库。我们的一些视图使用Azure SQL 数据库支持的AT TIME ZONE,但是当我在项目属性中将数据库目标平台切换到 Microsoft Azure SQL 数据库时,它无法构建并出现错误:
错误:SQL46010:TIME 附近的语法不正确。
我已直接连接到 Azure 中的数据库,并且可以使用AT TIME ZONE,但无法DACPAC从项目中创建或发布文件。
This SO 答案建议将目标切换到 SQL Server 2016,但随后您无法将其部署DACPAC到 Azure。它会给出错误
将 SQL Server 2016 指定为目标平台的项目无法发布到 Microsoft Azure SQL Database v12。
从 Visual Studio 或命令行使用sqlpackage.exe. (与所有目标相同)。
这似乎是 Visual Studio Data Tools 中长期存在的错误,因此其他人肯定也遇到过它。有人有解决方法或建议吗?
我通过另一个渠道找到了这个问题的答案。这是 Visual Studio 16.4 和 16.5 当前预览版中的一个错误。
Visual Studio 16.4 版本删除了对 Microsoft Azure SQL 数据库 V11 的支持。在这样做时,他们删除了Microsoft Azure SQL 数据库 V12的项目目标,使Microsoft Azure SQL 数据库成为唯一的选择。这个新选项的目的是切换到针对 V12,但存在一个错误,它仍然针对 V11。
在 Visual Studio 的未来更新中修复此问题之前,解决方法是手动编辑SQLPROJ文件并更改行;
<DSP>Microsoft.Data.Tools.Schema.Sql.SqlAzureDatabaseSchemaProvider</DSP>
Run Code Online (Sandbox Code Playgroud)
加入V12使其成为;
<DSP>Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider</DSP>
Run Code Online (Sandbox Code Playgroud)
保存并重新打开解决方案。它现在可以编译,我可以部署到 Azure。
这只是问题第二部分的答案。
.dacpac我在从免费的 azure sql 数据库发布到基本计划中的数据库时遇到了同样的错误。
将 SQL Server 2016 指定为目标平台的项目无法发布到 Microsoft Azure SQL Database v12。
Allow incompatible platform我通过检查Advance的设置发现了这一点Publish Data-tier Application。
| 归档时间: |
|
| 查看次数: |
1413 次 |
| 最近记录: |