Я считаю, что то, что я пытаюсь достичь, может быть сделано только с помощью динамического SQL. Тем не менее, я попробовал пару вещей без успеха.
У меня есть таблица в базе данных DB1 (скажем, DB1.dbo.table1, на сервере MS SQL), которая содержит имена других баз данных на сервере (DB2, DB3 и т. Д.). Теперь все базы данных, перечисленные в этой таблице, содержат определенную таблицу (давайте назовем ее требуемой таблицей), к которой я хочу обратиться. Итак, я ищу способ создания хранимой процедуры / скрипта / чего бы то ни было, который запрашивает DB1.dbotable1 для других БД, а затем запускает инструкцию для каждого из полученных dbs, что-то вроде:
@DBNAME = select dbName from DB1.dbo.table1
select value1 from @DBNAME.dbo.desiredTable
Это возможно? Я планирую запустить скрипт sp / в разных системах DB1.dbo.table1, являющийся константой.