DB2 IBM每次在我的数据库中创建一个视图时,权限仅限于创建的用户,我想为每个人提供

问题描述:

DB2 IBM每次在我的数据库中创建一个视图时,权限仅限于创建的用户,我想成为大家:DB2 IBM每次在我的数据库中创建一个视图时,权限仅限于创建的用户,我想为每个人提供

create view stkqry.aaa as SELECT ... from ... 

现在这个“aaa”是受保护的。我想在默认情况下为每个人提供。怎么办?感谢

(这个回答假设你正在使用的Linux/UNIX/Windows的DB2)

你必须使用GRANT的特殊验证ID“公共”(每个人)的权限分配给视图。

GRANT SELECT ON stkqry.aaa TO PUBLIC 

我不认为有一种方法来自动标记通过公共所有的意见,可读的,但如果你需要回去和标记所有的人,你可以使用类似这样生成的语句你:

SELECT 'GRANT SELECT ON ' || 
     TRIM(VIEWSCHEMA) || '.' || 
     TRIM(VIEWNAME) || ' TO PUBLIC' 
FROM SYSCAT.VIEWS 
WHERE DEFINER <> 'SYSIBM' 
+0

谢谢,我会尽快测试这个(:并给出反馈意见 – 2012-04-08 22:05:03