import groovy.sql.Sql
sql = Sql.newInstance(
"jdbc:oracle:thin:@localhost:1521:orcl",
"scott",
"tiger",
"oracle.jdbc.driver.OracleDriver")
// インデックスの監視
sql.execute("alter index pk_emp monitoring usage")
// インデックスを使用しないクエリ
query = """
select ename from emp where to_char(empno) = '7369'
"""
sql.eachRow(query){
// 社員名
println("ename:${it.ename}")
println "----"
}
query = """
select * from v\$object_usage
"""
sql.eachRow(query){
// インデックス名
println("index_name:${it.index_name}")
// 使用されたかどうか
println("used:${it.used}")
println "----"
}
// インデックスを使用するクエリ
query = """
select ename from emp where empno = 7369
"""
sql.eachRow(query){
// 社員名
println("ename:${it.ename}")
println "----"
}
query = """
select * from v\$object_usage
"""
sql.eachRow(query){
// インデックス名
println("index_name:${it.index_name}")
// 使用されたかどうか
println("used:${it.used}")
println "----"
}
// インデックスの監視停止
sql.execute("alter index pk_emp nomonitoring usage")
動作環境
Groovy 1.6.4, JDK6 Update16, Oracle11g R1
関連情報
V$OBJECT_USAGE
http://download.oracle.com/docs/cd/B28359_01/server.111/b28320/dynviews_2077.htm#sthref3094
0 件のコメント:
コメントを投稿