2013-03-20 66 views
0

我需要將權限添加,更新和刪除權限授予我連接到的數據庫中名爲「test」的用戶。DB2 Grant向用戶添加,更新和刪除

什麼是語法?我試過了:

db2 grant add, update, delete on database to test 

沒有運氣。

我在AIX(命令行)

回答

1

使用DB2 10你必須檢查的那種權限,你可以在一個數據庫及其對象授予。

我想「添加」是插入,但這是通過表而不是數據庫授予的。同樣用於更新和刪除。

只有擁有supperior權限(如sysadm,dbadm或secadm)(取決於DB2版本和已配置的安全性),您纔可以授予您自己的權限。

例如:

db2 grant insert, update, delete on table db2inst1.emp to user test 

授予在架構表EMP的所有DML權限DB2INST1

如果要授予,爲所有的表,你應該生成批的句子:

db2 -x +o -z commands.sql "select 'grant insert, update, delete on table ' || trim(tabschema) || '.' || trim(tabname) || ' to user test;' from syscat.tables where type = 'T'" > 
db2 -tvf commands.sql 

第一條命令只是通過訪問目錄來產生所有的授予。第二個是執行第一個命令的輸出。

您最終可以通過管道在一行中執行這兩個命令,但是存在阻止輸出的Unix限制。

db2 -x "select 'grant inser... ... pe = 'T'" | db2 +p -tv 
+0

非常感謝AngoCA,真是幫了我很多 – user1961382 2013-03-21 11:45:03