Obtener información acerca de una vista
Puede obtener información acerca de la definición o propiedades de una vista de SQL Server 2012 mediante SQL Server Management Studio o Transact-SQL. Es posible que necesite ver la definición de la vista para entender cómo derivan sus datos de las tablas de origen o para ver los datos que ella misma define.
Importante |
---|
Si cambia el nombre de un objeto al que hace referencia una vista, deberá modificar ésta para que el texto refleje el nuevo nombre. Por lo tanto, antes de cambiar el nombre de un objeto, observe las dependencias del mismo a fin de determinar si el cambio propuesto afecta a alguna vista. |
En este tema
Antes de empezar:
Seguridad
Para obtener información acerca de una vista, use:
SQL Server Management Studio
Transact-SQL
Antes de empezar
Seguridad
Permisos
La utilización de sp_helptext para devolver la definición de una vista requiere la pertenencia al rol público. La utilización de sys.sql_expression_dependencies para buscar todas las dependencias de una vista requiere el permiso VIEW DEFINITION en la base de datos y el permiso SELECT en sys.sql_expression_dependencies para la base de datos. Las definiciones de objeto del sistema, como las que se devuelven en SELECT OBJECT_DEFINITION, son visibles de forma pública.
[Top]
Usar SQL Server Management Studio
Obtener las propiedades de la vista mediante el Explorador de objetos
En el Explorador de objetos, haga clic en el signo más situado junto a la base de datos que contiene la vista cuyas propiedades desea ver y haga clic en el signo más para expandir la carpeta Vistas.
Haga clic con el botón secundario en la vista cuyas propiedades desea ver y seleccione Propiedades.
Las propiedades siguientes se muestran en el cuadro de diálogo Propiedades de la vista.
Base de datos
Nombre de la base de datos que contiene esta vista.Servidor
Nombre de la instancia de servidor actual.Usuario
Nombre del usuario de esta conexión.Fecha de creación
Muestra la fecha en la que se creó la vista.Nombre
Nombre de la vista actual.Esquema
Muestra el esquema al que pertenece la vista.Objeto de sistema
Indica si la vista es un objeto de sistema. Los valores son True y False.Valores NULL ANSI
Indica si el objeto se ha creado con la opción Valores NULL ANSI.Cifrado
Indica si la vista está cifrada. Los valores son True y False.Identificador entre comillas
Indica si el objeto se ha creado con la opción Identificador entre comillas.Enlazada a un esquema
Indica si la vista está enlazada a un esquema. Los valores son True y False. Para obtener más información sobre las vistas enlazadas a esquemas, vea la sección SCHEMABINDING de CREATE VIEW (Transact-SQL).
Obtener propiedades de la vista con la herramienta Diseñador de vistas
En el Explorador de objetos, expanda la base de datos que contiene la vista cuyas propiedades desea ver y, a continuación, expanda la carpeta Vistas.
Haga clic con el botón secundario en la vista cuyas propiedades desea ver y seleccione Diseño.
Haga clic con el botón secundario en el espacio en blanco del panel Diagrama y haga clic en Propiedades.
En el panel Propiedades se muestran las propiedades siguientes.
(Nombre)
Nombre de la vista actual.Nombre de base de datos
Nombre de la base de datos que contiene esta vista.Descripción
Descripción breve de la vista actual.Esquema
Muestra el esquema al que pertenece la vista.Nombre de servidor
Nombre de la instancia de servidor actual.Enlace a esquema
Evita que los usuarios modifiquen los objetos subyacentes que contribuyen a esta vista de cualquier forma que invalide la definición de la vista.Determinístico
Muestra si se puede determinar con exactitud el tipo de datos de la columna seleccionadaValores DISTINCT
Especifica que la consulta filtrará los duplicados en la vista. Esta opción es útil cuando solo se usan algunas columnas de una tabla y dichas columnas podrían contener valores duplicados, o cuando el proceso de combinar dos o más tablas genera filas duplicadas en el conjunto de resultados. Elegir esta opción equivale a insertar la palabra clave DISTINCT en la instrucción en el panel SQL.Extensión GROUP BY
Especifica que están disponibles las opciones adicionales para vistas basadas en consultas de agregado.Todas las columnas
Indica si la vista seleccionada devuelve todas las columnas. Esto se establece en el momento de crear la vista.Comentario de SQL
Muestra una descripción de las instrucciones SQL. Para ver o editar la descripción completa, haga clic en la descripción y, a continuación, en el botón de puntos suspensivos (…) situado a la derecha de la propiedad. Los comentarios pueden incluir información, como quién usa la vista y cuándo.Especificación superior
Se expande para mostrar las propiedades Superior, Expresión, Porcentaje y Con valores equivalentes.(Superior)
Especifica que la vista incluirá una cláusula TOP, que solo devuelve las n primeras filas o el primer n por ciento de filas en el conjunto de resultados. De forma predeterminada, la vista devolverá las diez primeras filas en el conjunto de resultados. Use esto para cambiar el número de filas que se van a devolver o para especificar un porcentaje diferente.Expresión
Muestra qué porcentaje (si Porcentaje está establecido en Sí) o registros (si Porcentaje está establecido en No) devolverá la vista.Porcentaje
Especifica que la consulta incluirá una cláusula TOP y solo devolverá el primer n por ciento de filas en el conjunto de resultados.Con valores equivalentes
Especifica que la vista incluirá una cláusula WITH TIES. WITH TIES resulta útil si una vista incluye una cláusula ORDER BY y una cláusula TOP basadas en un porcentaje. Si se establece esta opción y el límite del porcentaje queda dentro de un conjunto de filas con valores idénticos en la cláusula ORDER BY, se ampliará la vista hasta que incluya todas esas filas.Especificación de actualización
Se expande para mostrar las propiedades de Actualizar con reglas de vista y de Opción CHECK.(Actualizar con reglas de vista)
Indica que Microsoft Data Access Components (MDAC) traducirá todas las actualizaciones e inserciones de la vista a instrucciones SQL que hacen referencia a la vista, en lugar de a las instrucciones SQL que hacen referencia directamente a las tablas base de la vista.En algunos casos, MDAC indica las operaciones de inserción y actualización de la vista como actualizaciones y las inserta en las tablas base subyacentes de la vista. Si selecciona Actualizar con reglas de vista, puede asegurarse de que MDAC generará las operaciones de inserción y actualización en la propia vista.
Opción CHECK
Indica que al abrir esta vista y modificar el panel Resultados, el origen de datos comprueba si los datos agregados o modificar cumplen la cláusula WHERE de la definición de la vista. Si la edición no cumple la cláusula WHERE, aparecerá un error con más información.
Para obtener las dependencias de la vista
En el Explorador de objetos, expanda la base de datos que contiene la vista cuyas propiedades desea ver y, a continuación, expanda la carpeta Vistas.
Haga clic con el botón secundario en la vista cuyas propiedades desea ver y seleccione Ver dependencias.
Seleccione Objetos que dependen de [nombre de vista] para mostrar los objetos que hacen referencia a la vista.
Seleccione Objetos de los que depende [nombre de vista] para mostrar los objetos a los que hace referencia la vista.
[Top]
Usar Transact-SQL
Para obtener la definición y propiedades de una vista
En el Explorador de objetos, conéctese a una instancia de Motor de base de datos.
En la barra de Estándar, haga clic en Nueva consulta.
Copie y pegue uno de los ejemplos siguientes en la ventana de consulta y haga clic en Ejecutar.
USE AdventureWorks2012; GO SELECT definition, uses_ansi_nulls, uses_quoted_identifier, is_schema_bound FROM sys.sql_modules WHERE object_id = OBJECT_ID('HumanResources.vEmployee'); GO USE AdventureWorks2012; GO SELECT OBJECT_DEFINITION (OBJECT_ID('HumanResources.vEmployee')) AS ObjectDefinition; GO EXEC sp_helptext 'HumanResources.vEmployee';
Para obtener más información, vea sys.sql_modules (Transact-SQL), OBJECT_DEFINITION (Transact-SQL) y sp_helptext (Transact-SQL).
Para obtener las dependencias de una vista
En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.
En la barra de Estándar, haga clic en Nueva consulta.
Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en Ejecutar.
USE AdventureWorks2012; GO SELECT OBJECT_NAME(referencing_id) AS referencing_entity_name, o.type_desc AS referencing_desciption, COALESCE(COL_NAME(referencing_id, referencing_minor_id), '(n/a)') AS referencing_minor_id, referencing_class_desc, referenced_class_desc, referenced_server_name, referenced_database_name, referenced_schema_name, referenced_entity_name, COALESCE(COL_NAME(referenced_id, referenced_minor_id), '(n/a)') AS referenced_column_name, is_caller_dependent, is_ambiguous FROM sys.sql_expression_dependencies AS sed INNER JOIN sys.objects AS o ON sed.referencing_id = o.object_id WHERE referencing_id = OBJECT_ID(N'Production.vProductAndDescription'); GO
Para obtener más información, vea sys.sql_expression_dependencies (Transact-SQL) y sys.objects (Transact-SQL).
[Top]