You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用DQL更新Documentum锁定记录?能否解锁更新后重锁?

如何解锁Documentum记录、更新后重新锁定

当然可以先解锁目标记录,完成更新后再重新锁定它!不过得注意操作的连贯性,避免中间被其他用户抢占这条记录的操作权限。下面是具体的操作步骤和注意事项:

步骤1:解锁锁定的记录

首先执行解锁语句,前提是你拥有该记录的解锁权限(比如你是锁定该记录的用户,或者具备管理员权限):

UNLOCK dm_document OBJECT '90000000000000001' GO

步骤2:执行更新操作

这就是你原本要运行的更新语句:

UPDATE dm_document objects SET keywords = 'D' WHERE r_object_id = '90000000000000001' GO

步骤3:重新锁定记录

更新完成后,用排他锁(EXCLUSIVE)重新锁定记录,防止其他用户修改:

LOCK dm_document OBJECT '90000000000000001' EXCLUSIVE GO

重要注意事项

  • 尽量批量执行:把这三条语句放在同一个脚本里一次性运行,减少中间的时间间隙,避免其他用户在你解锁后、重新锁定前修改这条记录。完整脚本如下:
UNLOCK dm_document OBJECT '90000000000000001' GO
UPDATE dm_document objects SET keywords = 'D' WHERE r_object_id = '90000000000000001' GO
LOCK dm_document OBJECT '90000000000000001' EXCLUSIVE GO
  • 确认锁定权限:如果你不是锁定该记录的用户,可能需要联系系统管理员协助解锁,普通用户无法解锁他人锁定的记录。
  • 提前查看锁定信息:可以先查询记录的锁定详情,确认锁定者和锁定类型,避免不必要的冲突:
SELECT r_object_id, lock_owner, lock_type FROM dm_document WHERE r_object_id = '90000000000000001' GO

你遇到的[DM_SYSOBJECT_E_LOCKED]报错,就是因为目标记录当前被其他用户持有锁,导致你的更新操作被阻塞,按照上面的流程就能解决这个问题啦。

内容的提问来源于stack exchange,提问作者aduguid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:35:19