¿Cómo funcionan las tablas temporales de SQL Server?

Las tablas temporales en SQL Server almacenan datos temporalmente. Puede realizar las mismas operaciones, por ejemplo SELECCIONAR و INSERT و BORRAR و ACTUALIZAR — en una tabla temporal como lo haría con una tabla SQL normal.

Las tablas temporales están en una base de datos. tempdb Es visible sólo durante la duración de la conexión. Cuando finaliza la conexión, SQL Server elimina la tabla temporal. También puede eliminarlo explícitamente en cualquier momento. Verificar Cómo instalar y configurar Microsoft SQL Server en Ubuntu.

Cómo funcionan las tablas temporales de SQL Server - Explicaciones

Tipos de tablas temporales de SQL Server

Hay dos tipos de tablas temporales de SQL Server: locales y globales.

Tabla temporal local

La tabla temporal local solo es visible para la conexión que la creó. Cuando finaliza esta conexión, o el usuario se desconecta de la instancia de SQL Server, la tabla temporal local se elimina automáticamente.

Para crear una tabla temporal local, use un solo símbolo de almohadilla (#) al comienzo del nombre de la tabla con una cláusula Crear mesa. Aquí está la sintaxis adecuada.

CREATE TABLE #TempTable (
 Column1 INT,
 Column2 VARCHAR(50)
);

Por ejemplo, el siguiente código crea una tabla temporal llamada Cliente Temporal Con un nombre y un campo de correo electrónico.

CREATE TABLE #TempCustomer (
 ID int NOT NULL PRIMARY KEY
 FullName VARCHAR(50),
 Email VARCHAR(50)
);

Horario temporal general

El horario temporal global es un horario temporal que es visible para todas las conexiones y usuarios. SQL Server lo soltará cuando se desconecte con todas las conexiones y usuarios que apuntan a la tabla.

Para crear una tabla temporal global, prefije el nombre de la tabla con un símbolo de almohadilla doble (##) y use el Crear mesa.

CREATE TABLE ##TempTable (
 Column1 INT,
 Column2 VARCHAR(50)
);

El siguiente código crea una tabla temporal global llamada Cliente Temporal.

CREATE TABLE ##TempCustomer (
 ID int NOT NULL PRIMARY KEY
 FullName VARCHAR(50),
 Email VARCHAR(50)
);

Este código es similar al ejemplo de la tabla temporal local, solo que con dos códigos hash en lugar de uno. Ahora puede usar comandos SQL estándar para agregar o manipular datos en la tabla temporal.

Cómo eliminar una tabla temporal

Una instancia de SQL Server elimina automáticamente una tabla temporal cuando todos los usuarios que apuntan a ella están desconectados. Como práctica recomendada, siempre debe eliminar explícitamente las tablas temporales para liberar la memoria tempdb.

Para eliminar una tabla temporal, use una instrucción TABLA DE GOTAS SI EXISTE seguido del nombre de la tabla temporal.

Así es como se elimina la tabla #TempCustomer:

DROP TABLE IF EXISTS #TempCustomer

Use el mismo código pero cambie el nombre de la tabla para eliminar una tabla temporal global.

DROP TABLE IF EXISTS ##TempCustomer

Usos típicos de las tablas temporales de SQL

Las tablas temporales son útiles cuando necesita almacenar resultados intermedios para consultas complejas que necesitan procesamiento adicional. Por ejemplo, al generar informes, es posible que deba crear tablas temporales para almacenar los resultados de las consultas de varias bases de datos. A continuación, puede generar el informe final ejecutando la consulta que se almacena en las tablas temporales.

Otro escenario en el que las tablas temporales pueden ser útiles es cuando necesita consultar los resultados de una tabla para ejecutar otra consulta. Puede almacenar los resultados en una tabla temporal y luego hacer referencia a ellos en la nueva consulta. Esencialmente, está utilizando la tabla temporal como una mesa de trabajo o un almacén temporal para almacenar los datos que necesita para realizar una tarea específica.

Uso de tablas temporales en SQL Server

Puede usar tablas temporales de SQL Server para almacenar y manipular datos temporalmente. Hay dos tipos de tablas temporales, locales y globales. La tabla temporal local es visible para la conexión a través de la cual se creó, mientras que la tabla temporal global es visible para todas las conexiones.

Las tablas temporales se destruyen automáticamente cuando se desconecta la instancia del servidor. Sin embargo, para preservar la memoria, siempre debe tirarlo después de que haya terminado de usarlo. Puedes ver ahora Cómo instalar Azure Data Studio en Linux para administrar servidores SQL.

DzTech

Soy ingeniero estatal con amplia experiencia en los campos de programación, creación de sitios web, SEO y redacción técnica. Me apasiona la tecnología y me dedico a brindar información de calidad al público. Puedo convertirme en un recurso más valioso para los usuarios que buscan información precisa y confiable sobre reseñas de productos y aplicaciones especializadas en diversos campos. Mi compromiso inquebrantable con la calidad y la precisión garantiza que la información proporcionada sea confiable y útil para la audiencia. La búsqueda constante de conocimiento me impulsa a estar al día con los últimos avances tecnológicos, asegurando que las ideas compartidas se transmitan de forma clara y accesible.
Ir al botón superior