update tipo temporales tablas tabla stored las eliminar donde dinamica crear almacenan sql sql-server sql-server-2008 sql-server-2005

tipo - ¿Es necesario usar#para crear tablas temporales en el servidor SQL?



tablas temporales vs variables tipo tabla sql server (2)

¿Es necesario usar # antes de crear una tabla temporal en el servidor SQL?

Ejemplo:

SELECT column1, column2, someInt, someVarChar INTO ItemBack1 FROM table2 WHERE table2.ID = 7

Para ItemBack1 ¿es necesario usar el símbolo # ?

Si no, ¿para qué sirve # al crear tablas temporales?


La diferencia entre estas dos tablas ItemBack1 y #ItemBack1 es que la primera vez es persistente (permanente) mientras que la otra es temporal.

Ahora, si vuelves a mirar tu pregunta

¿Es necesario usar # para crear una tabla temporal en el servidor sql?

La respuesta es , porque sin este # precedente # la tabla no será una tabla temporal, será independiente de todas las sesiones y ámbitos.


Sí. Debe agregar el nombre de la tabla al prefijo "#" (hash) para crear tablas temporales.

Si NO necesitas la tabla más adelante, adelante y créela. Las tablas temporales son muy parecidas a las tablas normales. Sin embargo, se crea en tempdb. Además, solo se puede acceder a través de la sesión actual, es decir, para EG: si otro usuario intenta acceder a la tabla temporal creada por usted, no podrá hacerlo.

"##" (double-hash crea una tabla temporal "Global" a la que otras sesiones también pueden acceder.

Consulte el enlace a continuación para conocer los conceptos básicos de las tablas temporales: http://www.codeproject.com/Articles/42553/Quick-Overview-Temporary-Tables-in-SQL-Server-2005

Si el contenido de su tabla es de menos de 5000 filas y NO contiene tipos de datos como nvarchar (MAX), varbinary (MAX), considere usar Variables de tabla.

Son los más rápidos, ya que son como cualquier otra variable que se almacena en la memoria RAM. También se almacenan en tempdb, no en la memoria RAM .

DECLARE @ItemBack1 TABLE ( column1 int, column2 int, someInt int, someVarChar nvarchar(50) ); INSERT INTO @ItemBack1 SELECT column1, column2, someInt, someVarChar FROM table2 WHERE table2.ID = 7;

Más información sobre las variables de tabla: http://odetocode.com/articles/365.aspx