Db2 在IBM i(as400)SQL中创建/删除行权限

Db2 在IBM i(as400)SQL中创建/删除行权限,db2,ibm-midrange,Db2,Ibm Midrange,在DB2forIBMi中,我可以像这样创建行权限 -- enable row access control ALTER TABLE QIWS.QCUSTCDT ACTIVATE ROW ACCESS CONTROL; -- create permission MYPERMISSION999 CREATE PERMISSION MYPERMISSION999 ON SALES.ORDHED FOR ROWS WHERE VERIFY_GROUP_FOR_USER(SESSION_USER,'MY

在DB2forIBMi中,我可以像这样创建行权限

-- enable row access control
ALTER TABLE QIWS.QCUSTCDT ACTIVATE ROW ACCESS CONTROL;

-- create permission MYPERMISSION999
CREATE PERMISSION MYPERMISSION999 ON SALES.ORDHED
FOR ROWS WHERE VERIFY_GROUP_FOR_USER(SESSION_USER,'MYGROUP') = 1
               AND SCODE = SESSION_USER                  
ENFORCED FOR ALL ACCESS

ENABLE;
COMMIT;
ALTER TABLE SALES.ORDHED ACTIVATE ROW ACCESS CONTROL;
COMMIT;
若我停用行访问控制,则规则似乎消失,但若我激活旧规则,则会恢复

 ALTER TABLE SALES.ORDHED           
     DEACTIVATE ROW ACCESS CONTROL        

应该这样做

这里的关键是表中特定权限和总体设置之间的差异。除非您按照@Paul的建议放弃特定权限,否则该权限将保持不变,无论是激活的还是停用的。
DROP PERMISSION MYPERMISSION999;