import java.sql.Connection;
|
import java.sql.DriverManager;
|
import java.sql.ResultSet;
|
import java.sql.ResultSetMetaData;
|
import java.sql.Statement;
|
|
/**
|
* 只读探针:执行一条查询并把结果按列打印出来(用于核对服务器上的数据现状)。
|
*
|
* <p>用法:java Query <jdbc-url> "select ..."
|
*/
|
public class Query {
|
|
public static void main(String[] args) throws Exception {
|
try (Connection connection = DriverManager.getConnection(args[0], "root", "123456");
|
Statement statement = connection.createStatement();
|
ResultSet rows = statement.executeQuery(args[1])) {
|
ResultSetMetaData meta = rows.getMetaData();
|
int columns = meta.getColumnCount();
|
StringBuilder header = new StringBuilder();
|
for (int index = 1; index <= columns; index++) header.append(meta.getColumnLabel(index)).append(" | ");
|
System.out.println(header);
|
while (rows.next()) {
|
StringBuilder line = new StringBuilder();
|
for (int index = 1; index <= columns; index++) {
|
Object value = rows.getObject(index);
|
line.append(value == null ? "NULL" : String.valueOf(value)).append(" | ");
|
}
|
System.out.println(line);
|
}
|
}
|
}
|
}
|