Я знаю, что существует множество вариантов этого вопроса, но я не нашел ни одного, который дал бы мне точные результаты.
Изменить: я пытаюсь получить все столбцы из всех таблиц и представлений в все базы данных из 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
Мне не хватает чего-то для завершения моего запроса, но я не могу понять это