Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Alias ​​di database incrociati di SQL Server

Potresti essere in grado di utilizzare sinonimi

CREATE SYNONYM WholeTableAliasWithDBetc FOR TheDB.dbo.TheTable

Ciò significa che tutti i riferimenti agli oggetti nel DB locale sono locali a quel DB, ad eccezione dei sinonimi che ti nascondono l'altro database.

Puoi anche utilizzare le procedure memorizzate in il DB di audit. Esiste una terza forma di EXEC questo è poco usato dove puoi parametrizzare il nome del processo memorizzato

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, ...

Ovviamente puoi cambiare module_name_var per usare qualsiasi DB che ti piace