gpt4 book ai didi

sql-server - 使用 AT TIME ZONE 时无法构建针对 Azure SQL 数据库的 Visual Studio 数据库项目

转载 作者:行者123 更新时间:2023-12-03 20:12:12 25 4
gpt4 key购买 nike

我们有一个Visual Studio Database Project我们正在尝试迁移到 Azure SQL 数据库。我们的一些 View 使用 AT TIME ZONE Azure SQL 数据库支持该功能,但是当我在项目属性中将数据库目标平台切换到 Microsoft Azure SQL 数据库时,无法构建并出现错误:

Error: SQL46010: Incorrect syntax near TIME.

Database Project Properties

我已直接连接到 Azure 中的数据库,并且可以使用 AT TIME ZONE,但无法从我的项目创建或发布 DACPAC 文件。

This SO answer建议将目标切换到 SQL Server 2016,但随后您无法将 DACPAC 部署到 Azure。会报错

A project which specifies SQL Server 2016 as the target platform cannot be published to Microsoft Azure SQL Database v12.

从 Visual Studio 或使用 sqlpackage.exe 命令行进行发布时。 (与所有目标相同)。

这似乎是 Visual Studio Data Tools 中长期存在的错误,因此其他人肯定也遇到过它。有人有解决方法或建议吗?

最佳答案

我通过另一个 channel 找到了这个问题的答案。这是 Visual Studio 16.4 和 16.5 当前预览版中的错误。

Visual Studio 16.4 版本删除了对 Microsoft Azure SQL 数据库 V11 的支持。在此过程中,他们删除了 Microsoft Azure SQL 数据库 V12 的项目目标,使 Microsoft Azure SQL 数据库成为唯一的选择。这个新选项的目的是切换到针对 V12,但存在一个错误,它仍然针对 V11。

Option Removed in 16.4

在 Visual Studio 的 future 更新中修复此问题之前,解决方法是手动编辑 SQLPROJ 文件并更改行;

<DSP>Microsoft.Data.Tools.Schema.Sql.SqlAzureDatabaseSchemaProvider</DSP>

添加V12来制作;

<DSP>Microsoft.Data.Tools.Schema.Sql.SqlAzureV12DatabaseSchemaProvider</DSP>

保存并重新打开解决方案。现在它已编译完毕,我可以将其部署到 Azure。

关于sql-server - 使用 AT TIME ZONE 时无法构建针对 Azure SQL 数据库的 Visual Studio 数据库项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59688412/

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