Volver al blog

Cómo crear una tabla en PostgreSQL con PgAdmin

PgAdmin es una herramienta útil para conectarnos a nuestra instancia de servidor PostgreSQL, viene con muchas funciones y características útiles para gestionar y visualizar nuestras bases de datos PostgreSQL.

Instalando nuestro entorno PostgreSQL

Si todavía no lo hicimos y estamos armando un entorno de pruebas, fijate este tutorial para instalar nuestro entorno de pruebas de PostgreSQL en un contenedor de Docker.

Conectándonos a nuestra base de datos desde PgAdmin

Después de tener todo configurado, podemos entrar a nuestra consola de PgAdmin corriendo http://127.0.0.1:5050 (si seguiste nuestro tutorial anterior, si no, fijate qué puerto usaste).

Esto va a abrir una consola de PgAdmin:

Login de PgAdmin

Consola de PgAdmin

Bueno, ahora conectémonos a nuestra base de datos, clic derecho donde dice “Servers” y después > Register > Server…

Definamos un nombre para nuestro servidor PostgreSQL y después vayamos a la pestaña de connection

Registrar servidor Postgres 1

En hostname vamos a ingresar nuestra dirección IP del host (si seguís nuestro tutorial sería la dirección IP local de tu máquina), después el usuario y la contraseña.

Registrar servidor Postgres 2

Después de hacer esto y hacer clic en save deberíamos ver nuestra base de datos en nuestra consola bajo servers, como ves acá:

Registrar servidor Postgres 3

Creando un Schema

Ahora que tenemos nuestro servidor mostrando nuestras bases de datos, deberíamos crear un Schema en él.

Un schema es una colección de estructuras lógicas de datos. Dentro de un schema, podemos tener views, tablas, funciones, scripts, constraints, índices, secuencias, etc.

Nos vamos a enfocar solo en la tabla por ahora. Así que hacé clic derecho en la base de datos y creemos nuestro primer Schema.

Clic derecho en nuestra base de datos y después Create > Schema…

Creando Schema 1

Después de hacer esto, va a aparecer un popup pidiéndonos el nombre de nuestro Schema, también en este popup podemos definir la seguridad y los privilegios de nuestro Schema, pero por ahora nos estamos enfocando en nuestra primera tabla, así que solo le vamos a poner un nombre a nuestro schema y hacer clic en Save.

Creando Schema 2

Creando una tabla

Debajo de Schemas, en nuestra base de datos, se va a mostrar nuestro Schema, ahora hagamos clic derecho y después Create -> Table

Creando Tabla 1

Después de hacer esto, lo primero que queremos hacer es nombrar nuestra Tabla, así que en name vamos a poner “MyFirstTable”, fijate que también podés definir el Tablespace y si la tabla está Particionada en esta pestaña.

Creando tabla 2

Creando las columnas de nuestra Tabla

Vamos ahora a la pestaña de columns y hagamos clic en el signo más para agregar nuestras primeras columnas

Creando columnas 1

Nuestra primera columna sería id y nos gustaría que esta columna sea un integer o un bigint no nulo y definida como primary key.

Columna id

Después de hacer esto, hagamos clic en el lápiz, vamos a la pestaña de constraints y la definimos como identity con un autoincremento de 1 empezando en 1

ID como identity

Hagamos clic en el lápiz de nuevo y hagamos clic en el signo más para agregar una nueva columna, llamémosla “firstname”

columna firstname

Nuestra columna firstname va a ser un text, hagamos lo mismo para “lastname”

columnas id, firstname y lastname

Una de las grandes ventajas de usar PostgreSQL es que podemos definir variables de tipo array, así que aprovechemos esto y agreguemos también otra columna llamada “owed_money” que va a ser un array de money.

columnas id, firstname, lastname y owed_money

Hagamos clic en save ¡y ya tenemos nuestra primera tabla creada!

Insertando datos en nuestra tabla

Clic derecho en nuestra tabla y después clic en Scripts > INSERT Script

Insertar en tabla 1

Ahora deberías ver algo así:

Insertar en tabla 2

Sabemos que id va a ser un autoincremento, así que no necesitamos insertar eso, además, sabemos que owed_money es un valor de tipo array, y los valores de tipo array deberían ir entre {} en PostgreSQL, así que cambiemos esa consulta por esta:

INSERT INTO "MyFirstSchema"."MyFirstTable"(
	 firstname, lastname, owed_money)
	VALUES ('john', 'doe', '{10.00,21.31,31.11}');

Después de hacer esto, deberíamos recibir un mensaje diciendo ‘Query returned successfully in … msec.’

Ahora cambiemos esa consulta de nuevo y pongamos esta en su lugar:

(TIP: podés simplemente resaltar la parte de la consulta que querés ejecutar y hacer clic en el botón de play, solo va a ejecutar la parte que seleccionaste)

SELECT * FROM "MyFirstSchema"."MyFirstTable";

Si todo sale bien, vamos a ver este resultado:

Seleccionando la tabla

TIP: para sumar el array podrías usar la siguiente consulta:

SELECT id,firstname, lastname, (SELECT SUM(s) FROM UNNEST(owed_money) s) as total_owed_money from "MyFirstSchema"."MyFirstTable";

El resultado sería este:

Sumando array en PostgreSQL

Eliminando nuestra tabla.

Para eliminar nuestra tabla, a esta altura ya te podés imaginar cómo, clic derecho en la tabla y Delete/Drop table.

Conclusión

PgAdmin 4 es un gestor de bases de datos poderoso, podés hacer casi cualquier cosa con algunos clics, es una ventaja real y deberías usarlo para acceder a tus servidores PostgreSQL (si querés hacerte la vida más fácil)

Si llegaste hasta acá, ¡gracias por leer!

Si querés saber más sobre PgAdmin hay mucha documentación en su sitio web

¡Nos vemos en el próximo!

Read in English