Voici une requête simple pour trouver la version, le service pack et l’édition d’une instance SQL Server, valable au moins sur les version 2000 et ultérieures …
1 2 3 4 5 6 | --------------------------------- -- Nicolas SOUQUET - 15/06/2009 - --------------------------------- SELECT SERVERPROPERTY('productversion') AS ProductVersion, SERVERPROPERTY ('productlevel') AS ProductLevel, SERVERPROPERTY ('edition') AS Edition |
Ou si vous préférez :
1 2 3 4 5 6 | --------------------------------- -- Nicolas SOUQUET - 15/06/2009 - --------------------------------- SELECT 'ProductVersion' AS Propriete, SERVERPROPERTY('ProductVersion') AS Valeur UNION SELECT 'ProductLevel', SERVERPROPERTY ('ProductLevel') UNION SELECT 'Edition', SERVERPROPERTY ('Edition') |
ElSuket
Hello,
En fait le @@version renvoie bien le service pack système et non celui de SQL Server:
1> select cast (serverproperty(‘PRODUCTLEVEL’) as char(5)), @@version
2> go
—– ————————————————————————————-
SP3 Microsoft SQL Server 2005 – 9.00.4207.00 (Intel X86)
Dec 17 2008 14:34:38
Copyright (c) 1988-2005 Microsoft Corporation
Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)
A+
David B.
[dbaffaleuf@capdata.fr]
[www.capdata.fr – http://www.alldb.fr/blogs
Salut,
Il me semble que dans @@VERSION la fin de la chaîne retournée est le service pack aussi, mais la façon dont est construite la chaîne fait penser que c’est du service pack de l’OS dont il s’agit
Perso, je connaissais @@VERSION.
Bon certes, il faut un peu décoder le résultat et avoir une table de correspondance entre le build et la version.