Estou executando o seguinte em uma instância no servidor:
SELECT c.*
FROM sys.columns c
WHERE c.object_id = OBJECT_ID(@tablename);
Tudo funciona muito bem.
Gostaria de executar a mesma instrução, mas apontá-la para outro banco de dados no servidor.
databaseName.dbo.tablename
Eu tentei o seguinte (e outras variações), mas não funcionou.
SELECT c.*
FROM sys.columns c
WHERE c.object_id = OBJECT_ID('databaseName.dbo.tablename');
Existe uma maneira de obter as informações da coluna em um banco de dados de outro?
Código:
SELECT @SQL = @SQL + 'INSERT INTO myTable
(ColumnName,ColumnValue,SID,SName,RID,RName)
VALUES (''' + QUOTENAME(c.name) + ''',NULL,0,NULL,0,NULL);'
FROM sys.columns c
WHERE c.object_id = OBJECT_ID(@tablename);
EXEC(@SQL);
Existe uma maneira de fazer isso dinamicamente? Se eu tivesse um @DBName
parâmetro que estivesse passando.