2009-03-02 16 views
8

Estoy usando C# con SMO e intento detectar a qué edición de SQL Server (por ejemplo, empresa, estándar) me estoy conectando. Sé cómo obtener la información de la versión, pero eso solo me dice qué versión de SQL Server (por ejemplo, SQL Server 2008 vs SQL Server 2005).Detectar mediante programación SQL Server Edition

¿Alguien sabe cómo obtener la edición del producto real (por ejemplo, empresa, estándar)?

Necesito esta información porque algunas características de SQL Server son solo empresariales. Por lo tanto, podría tratar de llamarlos y atrapar la excepción, pero preferiría una detección inicial.

Gracias!

Respuesta

6

Parece que es posible que pueda hacerlo a través de SMO y el objeto Servidor. Hay propiedades como Information.Edition que parece que debería hacer lo que quieras.

+0

Agradezco todas las respuestas que incluían @@ versión, pero yo estaba realmente buscando algo como esto. La propiedad Information.Edition en Serverobject es lo que necesito (aunque yo era una enumeración y no una cadena). – manu08

4

Siempre he usado @@ Version (por ejemplo, SELECT @@ Version y he manipulado el resultado en el código), pero este artículo parece bastante útil; http://support.microsoft.com/kb/321185

El único problema con el uso de SERVERPROPERTY, según el enlace ... es que esto no funcionará con la versión anterior de SQL Server.

3
select @@version 

Devuelve la versión y la edición. Aquí:

 
Microsoft SQL Server 2005 - 9.00.4035.00 (Intel X86) 
    Nov 24 2008 13:01:59 
    Copyright (c) 1988-2005 Microsoft Corporation 
    Developer Edition on Windows NT 5.2 (Build 3790: Service Pack 2) 
21
SELECT SERVERPROPERTY('productversion'), 
     SERVERPROPERTY ('productlevel'), 
     SERVERPROPERTY ('edition') 

en mi sistema vuelve

9.00.1399.06, RTM, Express Edition 

Parece que esta técnica sólo funciona en SQL Server 2000 o posterior, si alguno de sus bases de datos son 7,0 o menos, tendrá para usar @@ Version y manipular los resultados como otros han publicado

+0

también funciona en SQL Azure CTP –

Cuestiones relacionadas