2010年10月7日木曜日

groovyとH2 Databaseでクエリーの結果をCSVファイルに書き込む

groovyとH2 Databaseでクエリーの結果をCSVファイルに書き込むには、以下のコードを実行します。

import groovy.sql.Sql

sql = Sql.newInstance(
"jdbc:h2:tcp://localhost/~/test",
"sa",
"",
"org.h2.Driver")

query = """
call csvwrite('C:\\share\\h2db\\output.csv',
'select * from testdata', 'MS932');
"""

// クエリーの結果をCSVファイルに書き込む
sql.execute(query)



動作環境
groovy 1.7.4, JDK6 Update 21, H2 Database 1.2.143 (2010-09-18)

2010年10月6日水曜日

groovyとH2 DatabaseでCSVファイルを読み込む

groovyとH2 DatabaseでCSVファイルを読み込むには、以下のコードを実行します。

import groovy.sql.Sql

sql = Sql.newInstance(
"jdbc:h2:tcp://localhost/~/test",
"sa",
"",
"org.h2.Driver")

query = """
select *
from
csvread('C:\\share\\h2db\\testdata.csv','COLUMN1,COLUMN2,COLUMN3')
"""

// CSVファイルを読み込む
sql.eachRow(query){
println("column1:${it.column1}")
println("column2:${it.column2}")
println("column3:${it.column3}")
println("---")
}



動作環境
groovy 1.7.4, JDK6 Update 21, H2 Database 1.2.143 (2010-09-18)

2010年10月5日火曜日

groovyとH2 Databaseで空きメモリサイズと使用メモリサイズを取得する

groovyとH2 Databaseで空きメモリサイズと使用メモリサイズを取得するには、以下のコードを実行します。

import groovy.sql.Sql

sql = Sql.newInstance(
"jdbc:h2:tcp://localhost/~/test",
"sa",
"",
"org.h2.Driver")

query = """
select memory_free() as free_kb,
memory_used() as used_kb
"""

// 空きメモリサイズと使用メモリサイズを取得する
sql.eachRow(query){
println("Free Memory:${it.free_kb}(KB)")
println("Used Memory:${it.used_kb}(KB)")
}



動作環境
groovy 1.7.4, JDK6 Update 21, H2 Database 1.2.143 (2010-09-18)

2010年10月4日月曜日

groovyとH2 DatabaseでセッションIDを取得する

groovyとH2 DatabaseでセッションIDを取得するには、以下のコードを実行します。

import groovy.sql.Sql

sql = Sql.newInstance(
"jdbc:h2:tcp://localhost/~/test",
"sa",
"",
"org.h2.Driver")

query = """
select session_id() as sid
"""

// Session IDを取得する
sql.eachRow(query){
println("session_id:${it.sid}")
}



動作環境
groovy 1.7.4, JDK6 Update 21, H2 Database 1.2.143 (2010-09-18)

2010年10月3日日曜日

groovyとH2 Databaseでファンクションエイリアスを一覧表示する

groovyとH2 Databaseでファンクションエイリアスを一覧表示するには、以下のコードを実行します。

import groovy.sql.Sql

sql = Sql.newInstance(
"jdbc:h2:tcp://localhost/~/test",
"sa",
"",
"org.h2.Driver")

query = """
select
alias_schema,
alias_name,
max(java_class) as jc,
max(java_method) as jm
from
information_schema.function_aliases
group by alias_schema, alias_name
order by alias_name
"""

// Function Aliasを一覧表示する
sql.eachRow(query){
println("alias_schema:${it.alias_schema}")
println("alias_name:${it.alias_name}")
println("java_class:${it.jc}")
println("java_method:${it.jm}")
println("-----")
}



動作環境
groovy 1.7.4, JDK6 Update 21, H2 Database 1.2.143 (2010-09-18)

2010年10月2日土曜日

groovyとH2 Databaseでセッションを一覧表示する

groovyとH2 Databaseでセッションを一覧表示するには、以下のコードを実行します。

import groovy.sql.Sql

sql = Sql.newInstance(
"jdbc:h2:tcp://localhost/~/test",
"sa",
"",
"org.h2.Driver")

query = """
select
id,
user_name,
session_start,
statement,
statement_start
from
information_schema.sessions
order by session_start
"""

// Sessionを一覧表示する
sql.eachRow(query){
println("id:${it.id}")
println("user_name:${it.user_name}")
println("session_start:${it.session_start}")
println("statement:${it.statement}")
println("statement_start:${it.statement_start}")
println("-----")
}



動作環境
groovy 1.7.4, JDK6 Update 21, H2 Database 1.2.143 (2010-09-18)

2010年10月1日金曜日

groovyとH2 Databaseで権限を一覧表示する

groovyとH2 Databaseで権限を一覧表示するには、以下のコードを実行します。

import groovy.sql.Sql

sql = Sql.newInstance(
"jdbc:h2:tcp://localhost/~/test",
"sa",
"",
"org.h2.Driver")

query = """
select
grantee,
granteetype,
grantedrole,
rights,
table_schema,
table_name
from
information_schema.rights
order by grantee, granteetype, grantedrole, rights, table_name
"""

// 権限を一覧表示する
sql.eachRow(query){
println("grantee:${it.grantee}")
println("granteetype:${it.granteetype}")
println("grantedrole:${it.grantedrole}")
println("rights:${it.rights}")
println("table_schema:${it.table_schema}")
println("table_name:${it.table_name}")
println("-----")
}



動作環境
groovy 1.7.4, JDK6 Update 21, H2 Database 1.2.143 (2010-09-18)