En PostgreSQL, un schema se utiliza para agrupar varias tablas y así organizar la base de datos con mayor claridad. El comando CREATE SCHEMA se utiliza para la creación. Además, un esquema creado se puede borrar en cualquier momento con DROP SCHEMA.

¿Qué es un PostgreSQL schema?

En PostgreSQL, un schema es una colección de varias tablas. Un schema también puede contener índices, secuencias, tipos de datos y funciones, entre otras cosas, y por lo tanto es comparable a un directorio, aunque, a diferencia de este último, no es posible el anidamiento. Este método se utiliza sobre todo para simplificar la gestión de grandes bases de datos con numerosas tablas. En la estructura del sistema gestor de base de datos, existe un PostgreSQL schema entre el nivel de la base de datos y el nivel de las tablas individuales. La estructura jerárquica general es la siguiente:

  • Instancia (a menudo denominada “servidor” en PostgreSQL), que puede contener varias bases de datos
  • Base de datos
  • Schema
  • Tabla
  • Fila

Para crear en PostgreSQL un schema nuevo, se utiliza el comando CREATE SCHEMA. Después, el schema se eliminará con el comando DROP SCHEMA. Ambos comandos se describen con más detalle en este artículo.

Servidores dedicados
Rendimiento a través de innovación
  • Tu propio servidor en un hardware dedicado
  • Integración en el cloud y facturación por minuto
  • Respaldados por procesadores Intel® Xeon® y AMD

PostgreSQL SCHEMA: sintaxis básica

La sintaxis de CREATE SCHEMA en PostgreSQL es la siguiente:

CREATE SCHEMA nombre;
postgresql

Esta sintaxis da la instrucción de crear un schema en PostgreSQL y le da a este esquema un nombre propio y único en la base de datos.

Asignar un PostgreSQL schema a nuevas tablas

Si ahora creas una nueva tabla con el comando PostgreSQL CREATE TABLE, puedes añadirla a un PostgreSQL schema existente. La sintaxis correspondiente es la siguiente:

CREATE TABLE tuschema.nuevatabla(
... 
);
postgresql

Para ilustrar este proceso, te mostramos cómo crear primero un schema con el nombre “Clientes”. Este es el código:

CREATE SCHEMA clientes;
postgresql

A continuación, crea una nueva tabla llamada “Listadeclientes_España”, que podrás insertar en el PostgreSQL schema “Clientes”. Para ello, utiliza este código:

CREATE TABLE Clientes.Listadeclientes_España( 
ID INT PRIMARY KEY NOT NULL, 
NOMBRE VARCHAR(50) NOT NULL, 
PAÍS VARCHAR(50), 
DIRECCIÓN VARCHAR(255) 
);
postgresql

Esto te dará una nueva tabla vacía en el PostgreSQL schema especificado como “Clientes”. Ahora puedes completarla con valores usando PostgreSQL INSERT INTO.

Nota

Si no se especifica ningún esquema, las nuevas tablas se asignan automáticamente al esquema “public” por defecto.

Eliminar schema con DROP SCHEMA

Por supuesto, también tienes la opción de eliminar un PostgreSQL schema de nuevo. Si el esquema está vacío y por lo tanto ya no es necesario, simplemente utiliza el comando DROP SCHEMA. Para nuestro ejemplo de arriba, esto se vería así:

DROP SCHEMA clientes;
postgresql

Si deseas eliminar un esquema y todos los objetos que contiene en PostgreSQL, este es el comando apropiado:

DROP SCHEMA clientes CASCADE;
postgresql

No obstante, debes utilizar este comando con precaución para no perder datos valiosos.

¿Le ha resultado útil este artículo?
Ir al menú principal