sql-server - T-SQL 脚本应如何检测它是在 Azure SQL 数据库中运行还是在本地运行?

标签 sql-server azure t-sql azure-sql-database

假设我有一段 T-SQL,可以在 Azure SQL 数据库和本地 SQL Server 上以不同方式运行。如何在脚本本身内以编程方式检测其中哪一个是主要上下文?

我注意到

SELECT @@VERSION

在 Azure SQL 数据库上生成一个以开头的字符串

Microsoft SQL Azure 

但是解析 @@VERSION 的输出感觉并不好,当然具体细节可能随时改变。

有更明显正确的方法吗?

最佳答案

SELECT SERVERPROPERTY ('edition') 

也可以检查它,当它不是 SQL Azure 时,您知道它是在本地的。

关于sql-server - T-SQL 脚本应如何检测它是在 Azure SQL 数据库中运行还是在本地运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48447954/

相关文章:

asp.net - 有哪些优秀的 SQL Server 2008 w/ASP.NET 网站托管提供商?

c# - Azure 服务总线自动更新超时

c# - FOREACH 递归 SQL 语句

一行中的最小和最大行的 SQL 值

c# - 插入列表 <> 到 SQL Server 表

SQL:查找表中列值的最高出现次数?

sql-server - 如何重命名 SQL Server 中的 XML 节点名称

azure - 数据工厂数据流 - 路径未解析为任何文件

c# - 为什么 DefaultAzureCredential 尝试在本地计算机上使用 ManagedIdentityCredential?

sql-server - 执行transact-sql语句或批处理时发生异常