CREAR TABLA en un Esquema Postgres

Crear Tabla En Un Esquema Postgres



PostgreSQL es uno de los sistemas de bases de datos relacionales de objetos más populares. Es un software gratuito y de código abierto que amplía el lenguaje SQL con características adicionales para manejar cargas de trabajo de datos complejas. Puede trabajar con varios tipos de datos, confiable y seguro. Obtenga más información sobre las características de PostgreSQL.

En esta guía, aprenderemos más sobre la creación de tablas en un esquema en PostgreSQL.







Esquemas en PostgreSQL

Una base de datos PostgreSQL puede contener uno o más esquemas con nombre, cada esquema contiene tablas.



El mismo nombre de objeto se puede asignar a varios esquemas sin conflicto. Por ejemplo, el siguiente esquema/árbol de tablas es válido:



  • esquema_a
    • tabla 1
    • Tabla 2
  • esquema_b
    • tabla 1
    • Tabla 2

Puede pensar en esquemas como directorios a nivel del sistema operativo. La diferencia es que no puede haber esquemas anidados. Obtenga más información detallada sobre el esquema en Documentación de PostgreSQL .





Puede haber múltiples razones para implementar los esquemas:

  • Múltiples usuarios que utilizan la misma base de datos sin entrar en conflicto entre sí.
  • Mejor organización y gestión de bases de datos en grupos lógicos.
  • Las aplicaciones de terceros pueden crear su esquema único sin colisionar con los esquemas existentes u otros objetos.

Tablas en PostgreSQL

Cualquier base de datos relacional consta de varias tablas relacionadas, cada una de las cuales consta de filas y columnas. PostgreSQL viene con varias tablas integradas que contienen información diversa del sistema. Sin embargo, también podemos crear nuevas tablas en bases de datos y esquemas definidos por el usuario.



Requisitos previos:

Para realizar los pasos que se muestran en esta guía, necesitará los siguientes componentes:

  • Un sistema Linux correctamente configurado. Aprender más acerca de instalar Ubuntu en VirtualBox .
  • Una correcta instalación de PostgreSQL. Verificar instalando PostgreSQL en Ubuntu .
  • Acceso a un Usuario de PostgreSQL con permiso de USO a una base de datos.

A los efectos de esta guía, utilizaremos postgres para realizar todas las acciones en PostgreSQL.

Creación de tablas en un esquema

Creación de una base de datos de demostración

Como se mencionó anteriormente, los esquemas existen en una base de datos. Para fines de demostración, creamos una base de datos ficticia, evitando la interrupción de cualquier base de datos existente.

Acceda al shell de PostgreSQL como postgres :

$ sudo -i -u postgres psql

Crear una nueva base de datos demo_db:

$ CREAR BASE DE DATOS demo_db;

Verifique si la base de datos se creó con éxito:

$ \l

Finalmente, conéctese a la base de datos recién creada:

$ \conectar demo_db;

El esquema público

Cualquier base de datos nueva en PostgreSQL viene con un esquema predeterminado: público . Si intenta crear un objeto sin especificar el nombre del esquema, el esquema público se selecciona de forma predeterminada.

El siguiente comando imprime todo el esquema disponible en la base de datos PostgreSQL:

$ \dn

Alternativamente, también podemos usar la siguiente consulta SQL:

$ SELECCIONAR * DESDE pg_catalog.pg_namespace;

Creación de un nuevo esquema

Para crear un nuevo esquema bajo una base de datos específica, la estructura de comandos es la siguiente:

$ CREAR ESQUEMA ;

Siguiendo la regla, vamos a crear un nuevo esquema demo_schema:

$ CREAR ESQUEMA demo_schema;

Verifique la lista de esquemas para verificación:

$ \dn

Creación de una tabla en un esquema

Ahora que hemos creado el esquema de destino, podemos llenarlo con tablas.

La sintaxis para crear una tabla es la siguiente:

CREATE TABLE . (

    ...
)

Aquí:

  • esquema : este campo especifica el nombre del esquema donde se crea la tabla. Si no se proporciona ningún valor, la tabla se crea bajo el público esquema.

Para la demostración, creamos una tabla simple:

CREAR TABLA demo_schema.demo_table (

NOMBRE CARÁCTER(64),

ID INT NO NULO

);

Aquí:

  • El campo NOMBRE se especifica para almacenar una cadena de 64 caracteres.
  • El campo IDENTIFICACIÓN contiene los valores enteros. El término ' NO NULO ' indica que IDENTIFICACIÓN no puede estar vacío o nulo.

Podemos verificar la existencia de la tabla usando la siguiente consulta:

$ SELECT * FROM demo_schema.demo_table;

Insertar datos en la tabla

Con la tabla en su lugar, ahora podemos insertar algunos valores:

INSERTAR EN demo_schema.demo_table (NOMBRE, ID)

VALORES

('PQR', 45),

('IJK', 99)

;

Compruebe el contenido de la tabla:

$ SELECT * FROM demo_schema.demo_table;

Gestión de esquemas

Permisos de esquema

Con la ayuda del permiso de esquema, podemos administrar qué rol puede realizar qué acción en un esquema específico. De todos los privilegios posibles, los esquemas solo admiten CREAR y USAR.

Para actualizar el permiso de esquema para un rol en particular, la estructura de comandos es la siguiente:

$ GRANT ON SCHEMA TO ;

Para revocar el permiso de esquema para un rol en particular, la estructura de comandos es la siguiente:

$ REVOKE ON SCHEMA TO ;

Verifique el cambio usando el siguiente comando:

$ \dn+

Modificar las propiedades del esquema

Con la ayuda del ALTERAR ESQUEMA declaración, podemos modificar las diversas propiedades de un esquema. Por ejemplo: propiedad, nombre del esquema, etc.

Para cambiar el nombre del esquema, utilice la siguiente consulta:

$ ALTER SCHEMA RENAME TO ;

Para cambiar la propiedad de un esquema, utilice la siguiente consulta:

$ ALTER SCHEMA PROPIETARIO A ;

Tenga en cuenta que para cambiar la propiedad, el usuario actual debe tener la CREAR permiso para el esquema.

Eliminación de un esquema

Si un esquema ya no es necesario, podemos eliminarlo usando el SOLTAR consulta:

$ DROP ESQUEMA

Si el esquema contiene algún objeto, necesitamos el CASCADA modificador:

$ DROP SCHEMA CASCADE;

Gestión de mesas

Permisos de tabla

Al igual que el esquema, cada tabla también viene con administración de permisos, definiendo qué acción puede realizar un rol en la tabla.

Para verificar los permisos de una tabla, use el siguiente comando en psql:

$ \dp

Modificar las propiedades de la tabla

Con la ayuda del ALTERAR TABLA declaración, podemos modificar los numerosos aspectos de una tabla ya existente.

Por ejemplo, para colocar una columna, la consulta se ve así:

$ ALTER TABLE DROP COLUMN ;

Para agregar una nueva columna, podemos usar la siguiente consulta:

$ ALTER TABLE ADD COLUMN ;

También podemos establecer la compresión para una columna específica:

$ ALTER COLUMN SET COMPRESSION ;

Eliminación de una tabla

Para eliminar una tabla de un esquema, podemos usar el MESA PLEGABLE consulta:

$ DROP TABLE ;

Tenga en cuenta que, a diferencia de los esquemas, el MESA PLEGABLE query no producirá un error ya sea que la tabla esté vacía o no.

Conclusión

En esta guía, demostramos cómo crear tablas en un esquema en PostgreSQL. Creamos un esquema ficticio dentro de una base de datos ficticia y creamos una tabla dentro del esquema. Esta guía también mostró cómo administrar las diversas propiedades de esquemas y tablas.

Para mejorar la integridad de los datos, puede configurar un replicación lógica de PostgreSQL . Para mantener la base de datos de PostgreSQL en buen estado, puede configurar el autovacío para limpiar las tuplas muertas que dejan los registros borrados.

Para obtener más guías de PostgreSQL, consulte la Subcategoría de PostgreSQL .