可以在 XML for Analysis 中分别使用 Lock 和 Unlock 命令来锁定和解锁数据库(XMLA)。 通常,其他 XMLA 命令会根据需要自动锁定和解锁对象,以在执行期间完成该命令。 可以显式锁定或解锁数据库以在单个事务(例如 Batch 命令)中执行多个命令,同时阻止其他应用程序将写入事务提交到数据库。
锁定数据库
该 Lock
命令在当前活动事务的上下文中锁定对象(用于共享或独占使用)。 对象上的锁可防止事务提交,直到删除锁为止。 Microsoft SQL Server Analysis Services 支持两种类型的锁、共享锁和排他锁。 有关 Analysis Services 支持的锁类型的详细信息,请参阅 Mode 元素(XMLA)。
Analysis Services 仅允许锁定数据库。
Object 元素必须包含对 Analysis Services 数据库的对象引用。
Object
如果未指定元素或Object
元素引用数据库以外的对象,则会发生错误。
重要
只有数据库管理员或服务器管理员才能显式发出 Lock
命令。
其他命令在 Analysis Services 数据库上隐式发出 Lock
命令。 从数据库读取数据或元数据的任何作(例如任何 Discover 方法或运行语句命令的 Execute 方法)都隐式地对数据库发出共享锁。 任何将数据或元数据更改提交到 Analysis Services 数据库上的对象(例如 Execute
运行 Alter 命令的方法)的任何事务都隐式地对数据库发出排他锁。
解锁对象
该 Unlock
命令删除在当前活动事务的上下文中建立的锁。
重要
只有数据库管理员或服务器管理员才能显式发出 Unlock
命令。
所有锁都保存在当前事务的上下文中。 提交或回滚当前事务时,将自动释放事务中定义的所有锁。
另请参阅
Lock 元素 (XMLA)
Unlock 元素 (XMLA)
在 Analysis Services 中使用 XMLA 进行开发