sql >> Base de Datos >  >> RDS >> Sqlserver

Cómo crear tablas temporales en SQL Server a través de MS Access

Aquí hay un fragmento de código VBA que solía llamar a un procedimiento almacenado de DB2. La misma técnica debería funcionar para cualquier instrucción DDL. Para hacer esto, cree una consulta de transferencia y coloque su CREATE TABLE #tblname... declaración como su texto SQL.

IMPORTANTE:A continuación, abra la hoja de propiedades de la consulta y establezca la propiedad 'Registros de devolución' en "No".

Dim qdf As QueryDef
Set qdf = CurrentDb.QueryDefs("qry_SP_CHANGE_COLUMN")
qdf.Connect = CurrentDb.TableDefs("SCHEMA_tblName").Connect
qdf.SQL = "call SCHEMA.SP_CHANGE_COLUMN(...)"
qdf.Execute dbFailOnError
qdf.Close
Set qdf = Nothing

Tenga en cuenta que probablemente no tendrá que cambiar su texto SQL. Puede dejar eso en la definición de la consulta si la estructura de la tabla nunca cambia.

El desafío para usted es que debe usar la misma conexión para cualquier operación en la tabla temporal. En el momento en que se cierra la conexión, su tabla temporal desaparecerá porque es una tabla temporal local y solo es visible para esa conexión. Puede evitar esto usando '##', tablas temporales globales, si tiene los derechos para hacerlo.