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

SQL Server:come capire se un database è un database di sistema?

Mi sono appena tuffato in Microsoft.SqlServer.Management.Smo.Database oggetto (fornito dalla stessa Microsoft!) Lo fanno semplicemente usando la seguente istruzione:

CAST(case when dtb.name in ('master','model','msdb','tempdb') 
   then 1 
   else dtb.is_distributor end AS bit) AS [IsSystemObject]

In breve:se un database si chiama master , model , msdb o tempdb , è un db di sistema; è anche un db di sistema, se il campo is_distributor = 1 nella vista sys.databases .

Spero che questo aiuti

Jimmy