2010年12月3日金曜日

groovyとoracleでディレクトリオブジェクトのオブジェクト権限を付与する

groovyとoracleでディレクトリオブジェクトのオブジェクト権限を付与するには、以下のコードを実行します。

import groovy.sql.Sql

sql = Sql.newInstance(
"jdbc:oracle:thin:@oraclesrv:1521:orcl",
"system",
"manager",
"oracle.jdbc.driver.OracleDriver")

// ディレクトリオブジェクトに対し、読み書きの権限を与える
// (external_tablesディレクトリへの読み書きをtestユーザに付与)
sql.execute("""grant read, write on directory
external_tables to test""")

// 付与した権限を確認
query = """
select * from all_tab_privs
where grantee = 'TEST' and table_name = 'EXTERNAL_TABLES'
"""
sql.eachRow(query){
println("${it.grantee},${it.table_name},${it.privilege}")
}


動作環境
groovy 1.7.5, JDK6 Update22, Oracle11g R2

0 件のコメント:

コメントを投稿