Postgres Obtener tipo de columna

Postgres Obtener Tipo De Columna



Un tipo de columna se refiere al formato o tipo de datos que se asigna a una columna específica en una tabla de base de datos. Los tipos de columna determinan el tipo de datos que podemos almacenar en una columna en particular, como números enteros, texto, fechas o valores booleanos.

Comprender los tipos de columnas es crucial para los administradores de bases de datos, ya que ayuda a garantizar la eficiencia de las consultas y el manejo adecuado de los datos.

Este tutorial explora los diversos métodos para recuperar los tipos de columna en PostgreSQL, incluidas herramientas como PSQL.







Tabla de muestra

Las siguientes consultas de ejemplo demuestran cómo crear una tabla simple con tres columnas de varios tipos de datos:



CREAR TABLA muestra_tabla (
id CLAVE PRIMARIA DE SERIE,
nombre VARCHAR(50),
edad INT
);

Una vez que definimos la tabla que usamos para fines de demostración, podemos explorar los diversos métodos para obtener los tipos de columna en PostgreSQL.



Método 1: Uso de INFORMACION_ESQUEMA

El método más común para obtener la información de metadatos sobre varios objetos de base de datos en PostgreSQL es usar el catálogo INFORMACION_ESQUEMA.





Para obtener el tipo de columna usando la tabla information_schema, podemos ejecutar la siguiente consulta:

SELECCIONE table_name, column_name, data_type
DESDE information_schema.columns
WHERE table_schema = 'público';

La consulta anterior recupera el nombre de la tabla, el nombre de la columna y el tipo de datos de todas las columnas del esquema público. Ajuste la condición table_schema para recuperar las columnas de un esquema específico.



Suponiendo que solo tenemos sample_table en el esquema público, deberíamos ver una salida como se muestra a continuación:

nombre_tabla  | nombre_columna | tipo de datos
--------------+-------------+-------------------
muestra_tabla | identificación          | entero
muestra_tabla | edad         | entero
muestra_tabla | nombre        | carácter variable
(3 filas)

Como podemos ver, obtenemos el nombre de la tabla, el nombre de la columna y su tipo de datos correspondiente.

Método 2: usar los comandos PSQL

También podemos usar el comando '\d' de la utilidad PSQL para obtener la información sobre una columna de tabla dada.

Una vez conectado a la base de datos de destino, use '\d' seguido del nombre de la tabla como se muestra a continuación:

\d nombre_tabla

Ejemplo:

\d muestra_tabla;

El comando dado debe devolver la salida de la siguiente manera:

La salida incluye los nombres de las columnas, los tipos de datos y otra información de la estructura de la tabla.

Método 3: Uso de la tabla de catálogo Pg_attribute

También podemos consultar la tabla de catálogo pg_attribute para obtener el tipo de datos de una columna de la tabla. La sintaxis de la consulta es la siguiente:

SELECCIONE attname COMO column_name, format_type(atttypid, atttypmod) COMO data_type
DESDE pg_atributo
DONDE attrelid ='target_table'::regclass
Y número de att > 0
Y NO attisdropped;

Reemplace el parámetro target_table con el nombre de la tabla en la que reside su columna de destino.

Un ejemplo es el siguiente:

SELECCIONE attname COMO column_name, format_type(atttypid, atttypmod) COMO data_type
DESDE pg_atributo
DONDE attrelid = 'sample_table'::regclass
Y número de att > 0
Y NO attisdropped;

Esto debería devolver los nombres de las columnas y el tipo de datos correspondiente de la siguiente manera:

Conclusión

Exploramos los tres métodos principales para ver el tipo de datos de una columna de tabla usando las herramientas de PostgreSQL. Obtener el tipo de datos de la columna es esencial para crear consultas de aplicaciones eficientes y compatibles.