- Es mejor crear la tabla temporal con comandos DDL y luego insertar los datos, por ejemplo:
CREATE TABLE #TABLA1
( CODIGO INT,
NOMBRE VARCHAR(20)
)
insert into #TABLA1(CODIGO,NOMBRE) values('1','LACTEOS')
insert into #TABLA1(CODIGO,NOMBRE) values('2','BEBIDAS')
y evitar crearlo en una instrucción SELECT INTO:
SELECT categoryID,CategoryName
INTO #TABLA1
FROM CATEGORIES
Debido a que en la ultima opción los bloqueos hacia los objetos del sistema duran mas tiempo.
2. Evitar el uso de SELECT * FROM, en su lugar se debe extraer las columnas que se necesitan.
3. Insertar solo la información necesaria.
4. Borrar la tabla temporal al finalizar el conjunto de sentencias o el procedimiento almacenado. Las tablas temporales se destruyen cuando se termina la conexión pero no tendría sentido dejarlas ocupar recursos del servidor si ya no se la va a usar.
5. Cuando la cantidad de datos que maneja una tabla temporal es grande se recomienda crearle un indice para que ayude a recuperar la información.
6. Colocar la base de datos tempdb en un disco dedicado solo para esta función aumentará el rendimiento global del sistema si se hace un uso intensivo de tablas temporales.
7. No crear tablas temporales dentro de transacciones y trigger porque la concurrencia a la base de datos se verá afectada.
No hay comentarios.:
Publicar un comentario