Información del sistema vistas de esquema (Transact-SQL)
Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance
Una vista de esquema de información es uno de los métodos que SQL Server proporciona para obtener metadatos. Las vistas de esquema de información proporcionan una vista interna independiente de la tabla del sistema de los metadatos de SQL Server. Las vistas de esquema de información permiten que las aplicaciones funcionen correctamente aunque se hayan realizado cambios significativos en las tablas del sistema subyacentes. Las vistas de esquema de información incluidas en SQL Server cumplen la definición estándar ISO de la INFORMATION_SCHEMA.
Importante
Se han realizado algunos cambios en las vistas de esquema de información que anulan la compatibilidad con versiones anteriores. Dichos cambios se describen en los temas de las vistas específicas.
SQL Server admite una convención de nomenclatura de tres partes cuando se hace referencia al servidor actual. El estándar ISO también admite la convención de nomenclatura de tres partes. Sin embargo, los nombres utilizados en ambas convenciones de nomenclatura son diferentes. Las vistas de esquema de información se definen en un esquema especial llamado INFORMATION_SCHEMA. Este esquema se incluye en cada base de datos. Cada vista de esquema de información contiene metadatos para todos los objetos de datos almacenados en esa base de datos en concreto. En la tabla siguiente se muestran las relaciones entre los nombres de SQL Server y los nombres estándar de SQL.
Nombre de servidor SQL | Se asigna a este nombre estándar equivalente de SQL |
---|---|
Base de datos | Catálogo |
Esquema | Esquema |
Object | Object |
tipo de datos definido por el usuario | Dominio |
Esta convención de asignación de nombres se aplica a las siguientes vistas compatibles con ISO de SQL Server.
Además, algunas vistas contienen referencias a diferentes clases de datos, como los datos de caracteres o los datos binarios.
Al hacer referencia a las vistas de esquema de información, debe utilizar un nombre completo que incluya el nombre del esquema INFORMATION_SCHEMA
. Por ejemplo:
SELECT TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_DEFAULT
FROM AdventureWorks2022.INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = N'Product';
Permisos
La visibilidad de los metadatos en las vistas de esquema de información se limita a elementos protegibles que un usuario posee o en el que se ha concedido algún permiso al usuario. Para obtener más información, consulte Metadata Visibility Configuration.
Nota:
Las vistas de esquema de información se definen en todo el servidor y, por tanto, no se pueden denegar en el contexto de una base de datos de usuario. Para revocar o denegar el acceso (SELECT), se debe usar la base de datos maestra. De forma predeterminada, el rol público tiene permiso SELECT para todas las vistas de esquema de información, pero el contenido está limitado con reglas de visibilidad de metadatos.