2011年1月25日火曜日

groovyとSpiderDBでプライマリーキーの列を列挙する

groovyとSpiderDBでプライマリーキーの列を列挙するには、以下のコードを実行します。

import groovy.sql.Sql
import com.avdheshyadav.spiderdb.*

sql = Sql.newInstance(
"jdbc:postgresql://localhost:5432/liferay",
"postgres",
"postgres",
"org.postgresql.Driver")

dbc = new DBCrawler(sql.getConnection(), ConfigEnum.MAXIMUM)
db = dbc.getDatabase()
tab = "company"
// テーブルのPK列の列挙
for( schema in db.getSchemaSet().getSchemas() ){
println "-----------------"
println "schema:${schema}"
for(table in schema.getTableSet().getTables()){
if( table.getTableName() == tab ){
println "table:${table.tableName}"
pk = table.getPrimaryKey()
println "Primary Key:${pk.getPkName()}"
for(column in pk.getColumns()){
println column.getColumnName()
}
}
}
}


※以下のjarをGROOVY_HOME/libにコピーしておく
commons-lang-2.5.jar
spiderdb-1.7.jar

動作環境
JDK6 Update22, groovy 1.7.5, SpiderDB 1.7

関連情報
SpiderDBのプロジェクトページ
http://code.google.com/p/spiderdb/

0 件のコメント:

コメントを投稿