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

EXEC a USE base de datos

Ambos exec y execute_sql ejecutar en su propio ámbito. Y el cambio en la base de datos solo afectará su propio alcance. Entonces podrías:

set @sql = 'use ' + quotename(@new_db_name) + '; disable trigger t1;'
exec (@sql)

Hasta donde yo sé, no hay forma de cambiar el contexto de la base de datos del alcance actual a un nombre de base de datos variable.