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

SQL Server:Como saber se um banco de dados é um banco de dados do sistema?


Acabei de mergulhar em Microsoft.SqlServer.Management.Smo.Database object (que é fornecido pela própria Microsoft!) Eles simplesmente fazem isso usando a seguinte instrução:
CAST(case when dtb.name in ('master','model','msdb','tempdb') 
   then 1 
   else dtb.is_distributor end AS bit) AS [IsSystemObject]

Resumindo:se um banco de dados se chama master , model , msdb ou tempdb , é um banco de dados do sistema; também é um banco de dados do sistema, se o campo is_distributor = 1 na visualização sys.databases .

Espero que isto ajude

Jimmy