获取数据库信息
获取数据库所有Schema
获取所有表信息
获取schema下所有的表
获取表主键信息
获取表中列值信息
package com.XXXSchema;
import java.sql.*;
public class JDBCDemoHANA2 {
private static final String DRIVER = "com.sap.db.jdbc.Driver";
private static final String URL = "jdbc:sap://10.xxx.x.1xx:30515?currentschema=XXXSchema";
public JDBCDemoHANA2() {
}
//测试
public static void main(String[] args) {
JDBCDemoHANA2 demo = new JDBCDemoHANA2();
try {
demo.select();
} catch (Exception e) {
e.printStackTrace();
}
}
public void select() throws Exception {
Connection con = this.getConnection(DRIVER, URL, "username","Test_12345");
// getDataBaseInfo(con);//获取数据库信息
// getSchemasInfo(con); //获取数据库所有Schema
// getTablesList(con);//获取所有表信息
// getTablesInfo(con);//获取schema下所有的表
getPrimaryKeysInfo(con);//获取表主键信息
// getColumnsInfo(con);//获取表中列值信息
}
private void processResult(ResultSet rs) throws Exception {
if (rs.next()) {
ResultSetMetaData rsmd = rs.getMetaData();
int colNum = rsmd.getColumnCount();
System.out.println("colNum列数量:"+colNum);
for (int i = 1; i <= colNum; i++) {
System.out.println("getSchemaName:"+rsmd.getSchemaName(i));
System.out.println("getColumnName:"+rsmd.getColumnName(i));
System.out.println("getColumnType:"+ rsmd.getColumnType(i));
// System.out.println("getColumnType:"+rs.getString(rsmd.getColumnType(i)));
System.out.println("———————–");
}
do {
for (int i = 1; i <= colNum; i++) {
if (i == 1) {
System.out.print("rs.getString:"+rs.getString(i));
} else {
System.out.print("\t"
+ (rs.getString(i) == null ? "null" : rs.getString(i).trim()));
}
}
System.out.print("\n");
} while (rs.next());
} else {
System.out.println("query not result.");
}
}
/**
* 获取表中列值信息
* @param conn
*/
public void getColumnsInfo(Connection conn){
ResultSet rs = null;
try{
/**
* 设置连接属性,使得可获取到列的REMARK(备注)
*/
// ((OracleConnection)conn).setRemarksReporting(true);
DatabaseMetaData dbmd = conn.getMetaData();
/**
* 获取可在指定类别中使用的表列的描述。
* 方法