在SQL Server中遇到一些麻烦。这是一个类,我是SQL Server的新手。我运行的任何东西:
select databasepropertyex ('database', 'property')
他们都回来了。我正在使用Windows身份验证模式。我正在尝试检查IsSingleUser
,IsEmergencyMode
,IsShutDown
仅举几例......我能做的任何事情都会实际返回这些数据库属性的值吗?
答案 0 :(得分:1)
来自MSDN,
如果数据库未启动,则SQL Server通过直接访问数据库而不是从元数据中检索值来检索的属性将返回NULL。也就是说,如果数据库已将AUTO_CLOSE设置为ON,或者数据库处于脱机状态。
<强>权限强> 如果sys.databases的调用者不是数据库的所有者且数据库不是master或tempdb,则查看相应行所需的最小权限是ALTER ANY DATABASE或VIEW ANY DATABASE服务器级权限,或CREATE DATABASE权限。主数据库。始终可以在sys.databases中查看调用者所连接的数据库。
http://msdn.microsoft.com/en-us/library/ms186823(v=sql.120).aspx
另外,请检查您是否拼写错误的数据库名称或属性名称。在这种情况下,databasepropertyex也返回NULL。