2016-11-07 56 views
0

我正在使用documentum,我想從我的dm_acl對象表中刪除少量acl。首先我確信,在存在ACL:如何從dm_acl對象表中刪除acl

select * from dm_acl where object_name = 'myAclName' 

那麼我確信沒有其他對象是使用ACL

select * from dm_folder where acl_name = 'myAclName' 

,然後我用以下命令來刪除該ACL:

delete dm_acl objects where object_name = 'myAclName' 

但後來我收到一個錯誤,說you have specified a none updatable type (dm_acl)。有什麼辦法可以刪除acl:DQLDFC

回答

1

你不能使用DQL刪除ACL對象。但是,您可以使用API​​將其與語法刪除

destroy,c,<acl_object_id> 

一兩件事,檢查你提到

select * from dm_folder where acl_name = 'myAclName' 

是不夠的。 ACL對象可以在每個SYSOBJECT所以基本上你需要擴大您的支票dm_sysobject類型中找到

select * from dm_sysobject where acl_name = 'myAclName' 

刪除ACL通過DFC是可能的,因爲有destroyACL IDfAcl接口()方法。

+0

我明白了,但是我怎樣才能真正使用像上面在java中提到的那樣的APIs?任何鏈接,資源,甚至是樣本讚賞:)我試圖谷歌它,但無法找到任何合理的結果 –

+1

您可以在Documentum Administrator中運行它,或下載Repoint或DqMan使用它時,你玩它。如果您需要使用命令行工具運行一次,則可以在Content Server上直接運行它。您可以在DFC代碼中運行它,但在這種情況下,它更易於使用IDfAcl對象並調用ddestroyACL()方法。 – Miki