yeg
2 天以前 d8eaa16682cf180e9563d6be05fb43057daf6c07
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
 
/**
 * 只读探针:执行一条查询并把结果按列打印出来(用于核对服务器上的数据现状)。
 *
 * <p>用法:java Query &lt;jdbc-url&gt; "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);
            }
        }
    }
}