Documentum新手执行查询遇[DM_QUERY_E_TABLE_NO_ACCESS]错误求助
解决Documentum查询文件夹路径的权限报错问题
刚接触Documentum遇到这种权限报错很正常,我来帮你拆解问题并给出针对性的解决方案:
错误原因分析
你遇到的[DM_QUERY_E_TABLE_NO_ACCESS]报错,核心问题是dm_folder_r是Documentum的内部只读系统视图,普通用户默认没有直接访问权限,而且这个视图主要是系统内部使用,并不推荐用户直接查询。
替代方案1:使用面向用户的dm_folder视图
把查询中的dm_folder_r替换成dm_folder(这是官方推荐给用户使用的文件夹视图,普通用户一般都有查询权限),修改后的SQL如下:
select distinct A.*, A.i_chronicle_id, A.r_full_content_size, B.r_folder_path, B.r_object_id as folder_id from dm_document A, dm_folder B where any A.i_folder_id = B.r_object_id and B.r_folder_path is not null
替代方案2:用内置函数GET_PATH()更简洁
Documentum提供了内置函数GET_PATH(),可以直接返回文档的完整文件夹路径,不需要手动关联表,语法更简单,也能避开权限问题:
select distinct A.*, A.i_chronicle_id, A.r_full_content_size, GET_PATH(A.r_object_id) as r_folder_path from dm_document A where GET_PATH(A.r_object_id) is not null
权限排查(如果上述方案仍报错)
如果换了视图或用了函数还是报错,需要做以下检查:
- 联系Documentum管理员,确认你的用户账号是否被赋予了
dm_read权限组,或者是否对目标文件夹和文档有至少读权限; - 检查你要查询的文档所在的文件夹,是否存在权限限制(比如某些私有文件夹只有特定用户能访问)。
新手小贴士
作为Documentum新手,尽量避免直接查询带_r后缀的系统视图,这类视图是内部组件使用的,权限严格且结构可能随版本变更。优先使用官方文档中推荐的用户视图(如dm_document、dm_folder)和内置函数,能减少很多不必要的问题。
内容的提问来源于stack exchange,提问作者Akhil
相关产品推荐
相关产品推荐

