Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Alias ​​de banco de dados cruzado do SQL Server


Você pode usar sinônimos
CREATE SYNONYM WholeTableAliasWithDBetc FOR TheDB.dbo.TheTable

Isso significa que todas as referências de objeto no banco de dados local são locais para esse banco de dados, exceto sinônimos que ocultam o outro banco de dados de você.

Você também pode usar procedimentos armazenados em o banco de dados de auditoria. Existe uma terceira forma de EXEC que é pouco usado onde você pode parametrizar o nome do proc armazenado
DECLARE @module_name_var varchar(100)
SET @module_name_var = 'mydevaudit.dbo.AuditProc'
--   SET @module_name_var = 'whatever.dbo.AuditProc'
EXEC @module_name_var @p1, @p2, ...

Obviamente, você pode alterar module_name_var para usar qualquer banco de dados que desejar