【发布时间】:2020-04-28 12:01:49
【问题描述】:
我们有一个Visual Studio Database Project,我们正尝试将其移至 Azure SQL 数据库。我们的一些视图使用了 Azure SQL 数据库支持的AT TIME ZONE,但是当我在项目属性中将数据库目标平台切换到 Microsoft Azure SQL 数据库时,它无法构建并出现错误:
错误:SQL46010:TIME 附近的语法不正确。
我已直接连接到 Azure 中的数据库,我可以使用 AT TIME ZONE,但我无法从我的项目中创建或发布 DACPAC 文件。
This SO answer 建议将目标切换到 SQL Server 2016,但您无法将 DACPAC 部署到 Azure。会报错
将 SQL Server 2016 指定为目标平台的项目无法发布到 Microsoft Azure SQL 数据库 v12。
从 Visual Studio 或使用 sqlpackage.exe 的命令行发布时。 (与所有目标相同)。
这似乎是 Visual Studio Data Tools 中的一个长期存在的错误,因此其他人一定遇到过它。有人有解决方法或建议吗?
【问题讨论】:
-
嗨,罗伯。这有帮助吗? medium.com/modern-stack/…
-
@AlbertoMorillo,不幸的是,这没有帮助。帖子中的修复是传递一个将构建“重新定位”到 Azure 的属性。这样做会导致 AT TIME ZONE 错误。该帖子基本上是在做我在上图中所做的事情,但是在编译时使用了一个属性。
-
感谢@AlbertoMorillo 的建议,但我已经更新了 SQL 包。问题不在于发布,而在于构建以 SQL Azure 为目标的项目。
标签: sql-server visual-studio azure azure-sql-database