This is a sample program written using java and JDBC API , to print all the tables in a database schema . It also prints columns available in the particular table.
package com.datamigration.main; import java.sql.Connection; import java.sql.DatabaseMetaData; import java.sql.ResultSet; import java.sql.SQLException; import com.datamigration.db.DataBase; /** * @author Abhishek Somani */ public class PrintTable { public static String SCHEMA_NAME = "${YOUR_SCHEMA_NAME}"; public static void main(String[] args) { // create and setup your database and get db connection DataBase db = new DataBase(); db.init(); try { Connection con = db.getConnection(); DatabaseMetaData metaData = con.getMetaData(); String tableType[] = { "TABLE" }; StringBuilder builder = new StringBuilder(); ResultSet result = metaData.getTables( null, SCHEMA_NAME, null, tableType ); while (result.next()) { String tableName = result.getString(3); builder.append(tableName + "( "); ResultSet columns = metaData.getColumns( null, null, tableName, null ); while (columns.next()) { String columnName = columns.getString(4); builder.append(columnName); builder.append(","); } builder.deleteCharAt(builder.lastIndexOf(",")); builder.append(" )"); builder.append("\n"); builder.append("----------------"); builder.append("\n"); } System.out.println(builder.toString()); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
This program will print tables along with colmuns like this :
TABLE1( ID,NAME,STATUS,CREATED_AT,UPDATED_AT) ----------------------------------- TABLE2( ID,NAME,STATUS,CREATED_AT,UPDATED_AT)
0 回應:
張貼留言