Requisitos previos
- PostgreSQL instalado en tu sistema.
- Acceso a la herramienta de línea de comandos psql.
- Conocimientos básicos de SQL y PostgreSQL.
Conectarte a la base de datos
Primero, necesitas conectarte a tu base de datos PostgreSQL. Puedes hacerlo ejecutando el comando psql seguido del nombre de tu base de datos:
psql -d your_database_name
Si tu servidor PostgreSQL requiere usuario y contraseña, puedes incluir el nombre de usuario así:
psql -U your_username -d your_database_name
Después de ingresar tu contraseña, deberías quedar conectado a tu base de datos.
Usar el comando \dt
La forma más rápida de listar todas las tablas de tu base de datos actual es con el comando \dt:
\dt
Salida esperada:
List of relations
Schema | Name | Type | Owner
--------+---------------------+-------+---------
public | my_first_table | table | postgres
public | my_second_table | table | postgres
public | another_table | table | postgres
(3 rows)
Si quieres ver más información sobre tus tablas, también puedes usar:
\dt+
Este comando muestra todas las tablas del esquema public. Si quieres listar las tablas de todos los esquemas, usa:
\dt *.*
Consultar el Information Schema
Otra opción es consultar directamente la vista information_schema.tables. Esto es especialmente útil si quieres más control sobre la salida:
SELECT table_schema, table_name
FROM information_schema.tables
WHERE table_type = 'BASE TABLE' AND table_schema NOT IN ('pg_catalog', 'information_schema');
Salida esperada:
table_schema | table_name
--------------+------------------
public | my_first_table
public | my_second_table
public | another_table
(3 rows)
Esta consulta lista todas las tablas de todos los esquemas, excepto los esquemas del sistema.
Usar la vista pg_tables
También puedes listar tablas usando el catálogo del sistema pg_tables:
SELECT schemaname, tablename
FROM pg_tables
WHERE schemaname != 'pg_catalog' AND schemaname != 'information_schema';
Salida esperada:
schemaname | tablename
------------+-----------------
public | my_first_table
public | my_second_table
public | another_table
(3 rows)
Este método es muy parecido a consultar information_schema.tables, pero hace referencia directa al catálogo interno de PostgreSQL.
Filtrar tablas por esquema
Si quieres listar las tablas de un esquema específico, puedes modificar las consultas anteriores para filtrar por la columna table_schema o schemaname:
SELECT table_name
FROM information_schema.tables
WHERE table_schema = 'your_schema_name' AND table_type = 'BASE TABLE';
O usando pg_tables:
SELECT tablename
FROM pg_tables
WHERE schemaname = 'your_schema_name';
Conclusión
Listar tablas en PostgreSQL con psql es sencillo y tienes varios métodos disponibles según lo que necesites. El comando \dt es el más rápido, mientras que consultar information_schema o pg_tables te da más control y flexibilidad. Usa los métodos que mejor se adapten a tu flujo de trabajo.
Otros artículos que te pueden gustar:
Beekeeper Studio es un cliente de bases de datos gratuito y de código abierto
La mejor herramienta de consultas y edición de SQL que he usado. Tiene todo lo que necesito para administrar mi base de datos. - ⭐⭐⭐⭐⭐ Mit
Beekeeper Studio es rápido, intuitivo y fácil de usar. Es compatible con muchísimas bases de datos y funciona de maravilla en Windows, Mac y Linux.
Lo que dicen los usuarios de Beekeeper Studio
"Beekeeper Studio reemplazó por completo mi antiguo flujo de trabajo con SQL. Es rápido, intuitivo y hace que trabajar con bases de datos vuelva a ser disfrutable."
"He probado muchas GUI de bases de datos, pero Beekeeper logra el equilibrio perfecto entre funciones y simplicidad. Simplemente funciona."