create/remove IBM i (as400) 中的行权限 SQL
create/remove row permission in IBM i (as400) SQL
在 Db2 for IBM i 中,我可以像这样创建行权限。
-- 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
DROP PERMISSION MYPERMISSION999;
应该做
在 Db2 for IBM i 中,我可以像这样创建行权限。
-- 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
DROP PERMISSION MYPERMISSION999;
应该做