有多种语句和系统过程无法在事务中执行,并出现错误消息“不允许...”(例如,create database
)或“无法执行...”(例如,exec sp_addrole
).
是否存在一条或一组规则来指示事务中是否不允许给定的过程/语句?有其列表吗?
不是 Microsoft 官方资源,但迄今为止我找到的最全面的列表 http://sqlserverpedia.com/wiki/Recommended_Best_Practices_for_Transactions...
ALTER DATABASE
BACKUP LOG
BACKUP DATABASE
-
RESTORE LOG
-
RESTORE DATABASE
-
RECONFIGURE
-
UPDATE STATISTICS
-
LOAD DATABASE
-
LOAD TRANSACTION
-
CREATE DATABASE
-
DISK INIT
-
DROP DATABASE
- 改变的系统存储过程
MASTER
数据库
最后一项是一个相当广泛的类别......但是您可以合理地预测哪些类型的系统存储过程将改变MASTER
数据库...本质上是在服务器级别而不是数据库级别运行的任何东西。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)