COLUMNS (Transact-SQL)
Devuelve una fila por cada columna a la que puede tener acceso el usuario actual en la base de datos actual.
Para recuperar información de estas vistas, especifique el nombre completo de INFORMATION_SCHEMA.view_name.
Nombre de columna |
Tipo de datos |
Descripción |
---|---|---|
TABLE_CATALOG |
nvarchar(128) |
Calificador de tabla. |
TABLE_SCHEMA |
nvarchar(128) |
Nombre de esquema que contiene la tabla.
Importante
No utilice las vistas INFORMATION_SCHEMA para determinar el esquema de un objeto. La única manera confiable de localizar el esquema de un objeto consiste en consultar la vista de catálogo sys.objects.
|
TABLE_NAME |
nvarchar(128) |
Nombre de la tabla. |
COLUMN_NAME |
nvarchar(128) |
Nombre de columna. |
ORDINAL_POSITION |
int |
Número de identificación de columna. |
COLUMN_DEFAULT |
nvarchar(4000) |
Valor predeterminado de la columna. SQL Server 2008 se diferencia de SQL Server 2000 en la forma en que descodifica y almacena expresiones SQL en los metadatos del catálogo. La semántica de la expresión descodificada es equivalente al texto original; no obstante, no existen garantías sintácticas. Por ejemplo, los espacios en blanco se quitan de la expresión descodificada. Para obtener más información, vea Cambios de comportamiento en las características del Motor de base de datos en SQL Server 2008 R2. |
IS_NULLABLE |
varchar(3) |
Nulabilidad de la columna. Si esta columna permite valores NULL, devuelve YES. En caso contrario devuelve NO. |
DATA_TYPE |
nvarchar(128) |
Tipo de datos proporcionado por el sistema. |
CHARACTER_MAXIMUM_LENGTH |
int |
Longitud máxima, en caracteres, de los datos binarios, de caracteres, de texto o de imagen. -1 para xml y datos de tipo de valor grande. En caso contrario se devuelve NULL. Para obtener más información, vea Tipos de datos (Transact-SQL). |
CHARACTER_OCTET_LENGTH |
int |
Longitud máxima, en bytes, para datos binarios, datos de caracteres o datos de texto e imagen. -1 para xml y datos de tipo de valor grande. En caso contrario se devuelve NULL. |
NUMERIC_PRECISION |
tinyint |
Precisión de los datos numéricos aproximados, datos numéricos exactos, datos enteros o datos de moneda. En caso contrario se devuelve NULL. |
NUMERIC_PRECISION_RADIX |
smallint |
Base de la precisión de datos numéricos aproximados, datos numéricos exactos, datos enteros o datos monetarios. En caso contrario se devuelve NULL. |
NUMERIC_SCALE |
int |
Escala de datos numéricos aproximados, datos numéricos exactos, datos enteros o datos monetarios. En caso contrario se devuelve NULL. |
DATETIME_PRECISION |
smallint |
Código de subtipo para los tipos de datos datetime e interval ISO. Para los demás tipos de datos, se devuelve NULL. |
CHARACTER_SET_CATALOG |
nvarchar(128) |
Devuelve master. Esto indica la base de datos donde está ubicado el juego de caracteres si la columna es de tipo de datos de caracteres o text. En caso contrario se devuelve NULL. |
CHARACTER_SET_SCHEMA |
nvarchar(128) |
Siempre devuelve NULL. |
CHARACTER_SET_NAME |
nvarchar(128) |
Devuelve el nombre único del juego de caracteres si esta columna es de tipo de datos de caracteres o text. En caso contrario se devuelve NULL. |
COLLATION_CATALOG |
nvarchar(128) |
Siempre devuelve NULL. |
COLLATION_SCHEMA |
nvarchar(128) |
Siempre devuelve NULL. |
COLLATION_NAME |
nvarchar(128) |
Devuelve el nombre único de la intercalación si la columna es de tipo de datos de caracteres o text. En caso contrario se devuelve NULL. |
DOMAIN_CATALOG |
nvarchar(128) |
Si la columna es de un tipo de datos de alias, esta columna es el nombre de la base de datos en que se creó el tipo de datos definido por el usuario. En caso contrario se devuelve NULL. |
DOMAIN_SCHEMA |
nvarchar(128) |
Si la columna es de un tipo de datos definido por el usuario, devuelve el nombre del esquema del tipo de datos definido por el usuario. En caso contrario se devuelve NULL.
Importante
No utilice las vistas INFORMATION_SCHEMA para determinar el esquema de un tipo de datos. La única manera confiable de localizar el esquema de un tipo consiste en utilizar la función TYPEPROPERTY.
|
DOMAIN_NAME |
nvarchar(128) |
Si la columna es de un tipo de datos definido por el usuario, esta columna es el nombre del tipo de datos definido por el usuario. En caso contrario se devuelve NULL. |
Comentarios
La columna ORDINAL_POSITION de la vista INFORMATION_SCHEMA.COLUMNS no es compatible con el patrón de bits de las columnas devueltas por la función COLUMNS_UPDATED. Para obtener un patrón de bits compatible con COLUMNS_UPDATED, es necesario hacer referencia a la propiedad ColumnID de la función del sistema COLUMNPROPERTY al realizar una consulta a la vista INFORMATION_SCHEMA.COLUMNS. Por ejemplo:
USE AdventureWorks2008R2;
GO
SELECT TABLE_NAME, COLUMN_NAME, COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME), COLUMN_NAME, 'ColumnID') AS COLUMN_ID
FROM AdventureWorks2008R2.INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Person';
GO
Vea también