Выполнение запроса ко всей информационной схеме в экземпляре sql - PullRequest
0 голосов
/ 08 мая 2020

Я знаю, что существует множество вариантов этого вопроса, но я не нашел ни одного, который дал бы мне точные результаты.

Изменить: я пытаюсь получить все столбцы из всех таблиц и представлений в все базы данных из sql экземпляра сервера

Я сузил именно ту информацию, которую я хочу вернуть из информационной схемы каждой базы данных, но я не могу понять синтаксис запроса правильно

declare @SQL nvarchar(max) = ''

select @SQL = @SQL + 'SELECT  ''' + d.name + ''' as DatabaseName, TABLE_CATALOG, TABLE_SCHEMA , 
TABLE_NAME , COLUMN_NAME , ORDINAL_POSITION , COLUMN_DEFAULT , DATA_TYPE , CHARACTER_MAXIMUM_LENGTH 
FROM ''' + d.name + '.INFORMATION_SCHEMA.COLUMNS' 
from sys.databases d
where d.name not in('master', 'tempdb', 'msdb', 'model')


exec sp_executesql @SQL

Мне не хватает чего-то для завершения моего запроса, но я не могу понять это

...