如何使用TSQL检查数据库的SQL Server版本?

时间:2020-03-05 18:52:22  来源:igfitidea点击:

是否有系统存储过程来获取版本号?

解决方案

回答

选择@@ VERSION

回答

尝试

SELECT @@VERSION

或者对于SQL Server 2000及更高版本,以下内容更易于解析:)

SELECT SERVERPROPERTY('productversion')
     , SERVERPROPERTY('productlevel')
     , SERVERPROPERTY('edition')

来自:http://support.microsoft.com/kb/321185

回答

Joe的帖子中链接的KB文章非常适合确定已为任何版本安装了哪些Service Pack。同样,该知识库文章将版本号映射到特定的修补程序和累积更新,但仅适用于SQL05 SP2及更高版本。

回答

这是我用于测试服务器是否为2005年或者更高版本的一些脚本

declare @isSqlServer2005 bit
select @isSqlServer2005 = case when CONVERT(int, SUBSTRING(CONVERT(varchar(15), SERVERPROPERTY('productversion')), 0, CHARINDEX('.', CONVERT(varchar(15), SERVERPROPERTY('productversion'))))) < 9 then 0 else 1 end
select @isSqlServer2005

注意:从原始答案更新(请参阅评论)

回答

试试这个:

if (SELECT LEFT(CAST(SERVERPROPERTY('productversion') as varchar), 2)) = '10'
BEGIN