Tablas temporales de PostgreSQL

Tablas temporales de PostgreSQL

PostgreSQL tiene funciones de base de datos confiables para manejar diferentes transacciones. Por ejemplo, su tabla temporal guarda datos por sesión dada. Existe una tabla temporal para una sesión determinada y cerrar la sesión dada o tratar de consultar la misma tabla temporal en otra sesión devolverá un error.

Esta publicación lo guiará para comprender cómo funcionan las tablas temporales. Crearemos una tabla temporal, luego intentaremos acceder a ella desde otra sesión.

Trabajar con tablas temporales en PostgreSQL

Antes de trabajar con una tabla temporal en PostgreSQL, comprendamos algunos hechos.

  1. La tabla temporal solo es visible en una sesión dada. Otras transacciones o bases de datos no pueden acceder a una transacción dada.
  2. Puede tener una tabla temporal con el mismo nombre que una tabla permanente en la misma base de datos.
  3. Cuando una tabla temporal comparte el mismo nombre que una tabla permanente, no se puede acceder a la tabla permanente hasta que la tabla temporal se elimine desde la base de datos o la sesión.

Aquí está la sintaxis para crear una tabla temporal en PostgreSQL. Puedes usar el TEMPORARIO o TEMPERATURA Palabra clave para crearla.

# Crear tabla temporal table_name (column_name, dataType);


o

# Crear tabla TEMP table_name (column_name, dataType);


En este tutorial, crearemos una base de datos, crearemos una tabla temporal y una tabla permanente. Luego, intente acceder a la misma tabla temporal desde otra sesión para comprender cómo funciona una tabla temporal.

Acceda a su consola PostgreSQL y cree una base de datos. Permítanos nombrar el nuestro Linuxhint.

# Crear base de datos LinuxHint1;



Obtendrá la confirmación de que su base de datos se creó con éxito. A continuación, conéctese a la base de datos creada.

# \ c Linuxhint1;



Crear una mesa permanente. Vamos a nombrarlo nombres.

# Crear nombres de tabla (fname varchar (100), edad int);



Con nuestra tabla permanente creada, creemos una tabla temporal con el mismo nombre pero diferentes columnas.

# Crear nombres de tabla temporales (apellido varchar (100));



Podemos verificar que nuestra base de datos contenga las dos tablas creadas utilizando el \ dt dominio.


Notará que solo una tabla está en la lista, ya que la tabla temporal no está en la lista. Sin embargo, si enumeramos el contenido de la tabla en particular, muestra el contenido de la tabla temporal. La tabla permanente está "silenciada" hasta que se cae la tabla temporal.


Supongamos que abre otra sesión de PostgreSQL y se conecta a la base de datos creada. Si intenta acceder a la tabla temporal, no existirá. En cambio, la tabla permanente se recuperará ya que la tabla temporal solo existe en la sesión donde se creó.


En la salida, obtenemos el contenido de la tabla permanente contraria a lo que obtuvimos cuando ejecutamos el mismo comando en la sesión que contiene la tabla temporal.

Aún así, si renuncia a la sesión actual, vuelve más tarde, la tabla temporal no existe.

Intente dejar de fumar ejecutando el \ Q comando, luego intente acceder a la tabla temporal. Devolverá un error.

Insertar valores en una tabla temporal

Puede insertar valores en una tabla temporal de la misma manera que los inserta en una tabla permanente.


Una vez insertado, puede confirmar que la tabla temporal contiene los valores insertados como se esperaba.

Dejar caer una mesa temporal

Puedes usar el gota comando si desea eliminar la tabla temporal sin esperar a que se elimine automáticamente cuando expire la sesión.

Conclusión

Las tablas temporales son tablas creadas en PostgreSQL con una vida útil corta. Las tablas solo son visibles en la sesión actual. Una vez que sale de la sesión, la tabla se elimina automáticamente. Aún así, si abre otra sesión e intenta acceder a la tabla temporal, devolverá un error. Cuando tiene una tabla temporal y permanente que comparte el mismo nombre, no puede acceder a la tabla permanente hasta que suelte la tabla temporal.