groovy Exports all table names in database

In ant build file:

<path id=”groovy.classpath”>
<fileset dir=”${java.groovy}/lib”>
<include name=”*.jar”/>
</fileset>
<fileset dir=”${java.groovy}/embeddable”>
<include name=”*.jar”/>
</fileset>
<pathelement location=”${ext.libs.oracle}/classes12.zip”/>
</path>

<taskdef name=”groovy”
classname=”org.codehaus.groovy.ant.Groovy”
classpathref=”groovy.classpath”/>

<target name=”export.schema.to.file”>
<groovy src=”scripts/export.db.gy”>
<arg line=”${db.url} ${db.schema.owner} ${db.schema.password} ${fileName}”/>
</groovy>
</target>

Groovy script:

import groovy.sql.Sql
import oracle.jdbc.OracleDriver

println “db.url:  ” + args[0]
println “db.schema.ownver:  ” + args[1]
println “FileName: ” + args[3]

sql = Sql.newInstance(args[0], args[1],
args[2], “oracle.jdbc.OracleDriver”);

new File(args[3]).delete()
new File(args[3]).createNewFile()
def writer=new File(args[3]).newWriter()
sql.eachRow(”SELECT TABLE_NAME FROM user_tables order by TABLE_NAME asc”, {writer.writeLine(it.TABLE_NAME)});
writer.close();

List a =[]
new File(args[3]).eachLine{ line -> a.add(line) }

println(”Total number of tables:  ” + a.size());

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值