¿Cuáles son las formas posibles de determinar la versión implementada de SQL Server?
Intenté hacerlo usando el software SQL Server. Quiero hacerlo usando una instrucción SQL de línea de comando.
sql-server-2008
version
Yameen Bashir
fuente
fuente
Respuestas:
Las siguientes son formas posibles de ver la versión:
Método 1: conéctese a la instancia de SQL Server y luego ejecute la siguiente consulta:
Un ejemplo del resultado de esta consulta es el siguiente:
Método 2: conéctese al servidor utilizando Object Explorer en SQL Server Management Studio. Después de que se conecte el Explorador de objetos, mostrará la información de la versión entre paréntesis, junto con el nombre de usuario que se usa para conectarse a la instancia específica de SQL Server.
Método 3: Mire las primeras líneas del archivo Errorlog para esa instancia. De manera predeterminada, el registro de errores se encuentra en Archivos de programa \ Microsoft SQL
Server\MSSQL.n\MSSQL\LOG\ERRORLOG
yERRORLOG.n
archivos. Las entradas pueden parecerse a lo siguiente:Como puede ver, esta entrada proporciona toda la información necesaria sobre el producto, como la versión, el nivel del producto, 64 bits frente a 32 bits, la edición de SQL Server y la versión del sistema operativo en la que se ejecuta SQL Server.
Método 4: conéctese a la instancia de SQL Server y luego ejecute la siguiente consulta:
Nota: esta consulta funciona con cualquier instancia de SQL Server 2000 o de una versión posterior
fuente
Da 8.00, 9.00, 10.00 y 10.50 para SQL 2000, 2005, 2008 y 2008R2 respectivamente.
Además, pruebe el procedimiento extendido del sistema
xp_msver
. Puede llamar a este procedimiento almacenado comofuente
TL; DR
Esto usa SQLCMD (viene con SQL Server) para conectarse a la instancia del servidor local usando la autenticación de Windows, arroja un error si falla una verificación de versión y devuelve el
@@ERROR
como la línea de comandoERRORLEVEL
si> = 16 (y la segunda línea va a la:ExitFail
etiqueta si el antes mencionadoERRORLEVEL
es> = 1).Watchas, Gotchas y más información
Para SQL 2000+, puede usar SERVERPROPERTY para determinar mucha de esta información.
Si bien SQL 2008+ admite las propiedades
ProductMajorVersion
&ProductMinorVersion
,ProductVersion
existe desde el año 2000 (recordando que si una propiedad no es compatible, la función regresaNULL
).Si está interesado en versiones anteriores, puede usar el
PARSENAME
función para dividir elProductVersion
(recordando que las "partes" están numeradas de derecha a izquierda, es decir,PARSENAME('a.b.c', 1)
retornosc
).También recuerda que
PARSENAME('a.b.c', 4)
regresaNULL
, porque SQL 2005 y versiones anteriores solo usaban 3 partes en el número de versión!Entonces, para SQL 2008+, simplemente puede usar:
Para SQL 2000-2005 puede usar:
(El
PARSENAME(...,0)
es un truco para mejorar la legibilidad)Entonces, una comprobación para una versión SQL 2000+ sería:
Esto es mucho más simple si solo está interesado en SQL 2008+ porque
SERVERPROPERTY('ProductMajorVersion')
devuelveNULL
versiones anteriores, por lo que puede usar:Y puede usar las propiedades
ProductLevel
yEdition
(oEngineEdition
) para determinar RTM / SP n / CTP ny Dev / Std / Ent / etc respectivamente.Para su información, los principales números de versión de SQL son:
¡Y todo esto también funciona para SQL Azure!
EDITADO: es posible que también desee verificar el nivel de compatibilidad de su base de datos, ya que podría establecerse en una compatibilidad menor.
fuente
Esto es lo que he hecho para encontrar la versión: solo escriba
SELECT @@version
y le dará la versión.fuente
Simplemente use
Salida de muestra
Fuente: ¿Cómo verificar la versión del servidor SQL? (Se explican varias formas)
fuente
si este valor es 0 no es una edición express
fuente