我正在使用jdbc为h2表开发一个简单的查询数据库。
我的代码如下:
import java.sql.*;
public class program {
public static void main(String a)
throws Exception {
Class.forName("org.h2.Driver");
Connection conn = DriverManager.getConnection("jdbc:h2://C:/Users/Office/Desktop/DED/files/db/dedserver", "sa", "");
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery(a);
ResultSetMetaData rsmd = rs.getMetaData();
int columnsNumber = rsmd.getColumnCount();
for (int a1 = 1; a1 <= columnsNumber; a1++) {
String columnName = rsmd.getColumnName(a1);
System.out.printf(columnName);
int strLength1 = columnName.length();
for(int c = 0; c+strLength1 <= 15; c++){
System.out.printf(" ");
}
}
System.out.println("\n");
while (rs.next()) {
for (int i = 1; i <= columnsNumber; i++) {
String columnValue = rs.getString(i);
System.out.printf(columnValue);
int strLength = columnValue.length();
for(int b = 0; b+strLength <= 15; b++){
System.out.printf(" ");
}
}
System.out.println("");
}
conn.close();
}
}
我有两个问题,但有一个主要问题。
主要的一个是,如何在程序运行时获取它,用户必须输入一个文本字符串,该字符串将被定义为“a”,然后用作查询。如果查询失败,它应该打印回用户友好的消息,并且还需要检测诸如用户键入“帮助”之类的东西,然后将显示其他内容。需要做些什么?
另一个问题是如何对齐数据结果,使其在表格中完全格式化并且全部对齐。
谢谢!
答案 0 :(得分:0)
回答您的主要问题:
您可以执行此代码以从控制台输入获取查询:
import java.util.Scanner;
...
Scanner scanner = new Scanner(System.in);
String a = scanner.nextLine(); // Stores the input from the console to this variable
并查看您的用户是否输入了&#34; help&#34;,请输入以下代码:
if (a.equalsIgnoreCase("help")) {
// What ever you want here
}