gpt4 book ai didi

sql-server-2005 - SQL Server : How to tell if a database is a system database?

转载 作者:行者123 更新时间:2023-12-03 01:29:21 25 4
gpt4 key购买 nike

我知道到目前为止(至少到 MSSQL 2005),系统数据库有 master、model、msdb 和 tempdb。

事实是,据我所知,这不能保证将来会被保留。 sys.databases View 和 sys.sysdatabases View 都没有告诉我数据库是否被视为系统数据库。

是否有地方可以获得这些信息(数据库是否被视为系统数据库)?

最佳答案

刚刚深入了解 Microsoft.SqlServer.Management.Smo.Database 对象(由 Microsoft 本身提供!)他们只是使用以下语句来做到这一点:

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

简而言之:如果数据库名为 mastermodelmsdbtempdb,那么它就是一个系统数据库;如果 View sys.databases 中的字段 is_distributor = 1,它也是一个系统数据库。

希望这有帮助

吉米

关于sql-server-2005 - SQL Server : How to tell if a database is a system database?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1819095/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com