В SQL-сервере есть ли способ получить команду «использовать базу данных» для принятия переменной
Я хотел бы написать «общий» скрипт для работы с несколькими базами данных. Команды 'use databasename' будут распространяться в теле скрипта. Я бы предпочел показать информацию об имени базы данных вверху скрипта. Так в идеале:
declare @db varchar(100) set @db = 'data_in' use @db
Это не удается. Так что возможно
declare @db varchar(100) set @db = 'data_in' exec ('use '+@db)
Это выполняется, но предположительно изменяет базу данных только в контексте запроса в строке.
Так есть ли другой способ, не помещая весь скрипт в строку и не выполняя его таким образом, т.е. лекарство хуже, чем болезнь?