Verificare la versione di Microsoft SQL Server installata nel sistema

Ci sono vari modi per verificare la versione di SQL Server. Il primo metodo è quello di connettersi con la console SQL Server Management Studio e nella sezione Object Explorer troviamo indicata la versione dell’istanza.

Il secondo metodo, un po’ più scomodo, è quello di andare ad aprire i file di LOG che per impostazione predefinita si trovano nella directory C:\Program Files\Microsoft SQL Server\MSSQLnn.MSSQLSERVER\MSSQL\Log. In questa cartella troviamo tutti i file di LOG ed aprendo ad esempio il file ERROR possiamo trovare all’inizio del file le informazioni sulla versione. Ad esempio:

2019-06-03 10:30:41.52 Server      Microsoft SQL Server 2016 (SP2-GDR) (KB4293802) - 13.0.5081.1 (X64) 
    Jul 20 2018 22:12:40 
    Copyright (c) Microsoft Corporation
    Standard Edition (64-bit) on Windows Server 2016 Standard 10.0  (Build 14393: ) (Hypervisor)

Il terzo metodo per recuperare la versione di SQL Server è tramite query. Vediamo due esempi.

Nel primo esempio recuperiamo le stesse informazioni che abbiamo potuto vedere anche nel file di LOG

select @@version

Microsoft SQL Server 2016 (SP2-GDR) (KB4293802) - 13.0.5081.1 (X64)   Jul 20 2018 22:12:40
Copyright (c) Microsoft Corporation  Standard Edition (64-bit)
on Windows Server 2016 Standard 10.0  (Build 14393: ) (Hypervisor) 

Nel secondo esempio possiamo vedere le informazioni in modo più strutturato

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

Partendo dall’esempio precedente di seguito sono riportate tutte le proprietà dell’istruzione SERVERPROPERTY

ProductBuildType          Tipo di compilazione della generazione corrente, es. GDR = GDR rilasciati tramite windows update
ProductLevel              Livello versione dell'istanza, es. RTM - SPn = Service pack - CTPn = Community Technology Preview
Edition                   Edizione dell'istanza, Es. Standard o Enterprise
ProductUpdateLevel        Livello di aggiornamento corrente, es. CUn = aggiornamento cumulativo
ProductUpdateReference    Articolo della Knowledge base per il rilascio
ProductBuild              Il numero di build
ProductMajorVersion       La versione principale
ProductMinorVersion       La versione secondaria
InstanceDefaultDataPath   Percorso in cui verranno creati i file di dati per un database di questa istanza
InstanceDefaultLogPath    Percorso in cui verranno creati i file di registro per qualsiasi database in questa istanza

Partendo dall’elenco precedente, con la seguente query

SELECT
   SERVERPROPERTY('ProductLevel') AS ProductLevel,
   SERVERPROPERTY('ProductUpdateLevel') AS ProductUpdateLevel,
   SERVERPROPERTY('ProductBuildType') AS ProductBuildType,
   SERVERPROPERTY('ProductUpdateReference') AS ProductUpdateReference,
   SERVERPROPERTY('Edition') as Edition,
   SERVERPROPERTY('ProductVersion') AS ProductVersion,
   SERVERPROPERTY('ProductMajorVersion') AS ProductMajorVersion,
   SERVERPROPERTY('ProductMinorVersion') AS ProductMinorVersion,
   SERVERPROPERTY('ProductBuild') AS ProductBuild
GO

Abbiamo il seguente risultato