gpt4 book ai didi

java - 如何确定查询是否有效?

转载 作者:行者123 更新时间:2023-11-30 21:30:41 25 4
gpt4 key购买 nike

我看不到是否有错误,因为应用程序没有提示任何内容。我想从数据库中获取一个值并将其放入一个变量中,以便稍后在需要时显示。

我是编程新手,我曾尝试观看教程,但我似乎无法理解某些事情是如何正确完成的,因为导师有自己的做事方法。

public void selectQuery(String input) throws SQLException {
try {
Class.forName("com.mysql.cj.jdbc.Driver");

String USERNAME = "root";
String PASSWORD = "root";
String CONN_STRING =
"jdbc:mysql://localhost:3306/javaddy?serverTimezone=UTC";
Connection connection =
DriverManager.getConnection(CONN_STRING, USERNAME, PASSWORD);

try {
String q = "SELECT Inquiry_answer,Inquiry_question FROM inquiries WHERE Inquiry_question = '" + input + "'";
Statement stmt = connection.createStatement();
ResultSet res = stmt.executeQuery(q);
String answer;
answer = res.getString("Inquiry_answer");
// /* there is no value returned here (I think) because after passing to
// bot method, it doesn't print anything */
bot(answer);
} catch (SQLException e) {
System.out.println(e.getMessage());
}

} catch (ClassNotFoundException e) {
System.out.println("Could not find the database driver " + e.getMessage());
} catch (SQLException e) {
System.out.println("Could not connect to the database " + e.getMessage());
}
}

我希望从数据库中收到一个值,但没有返回任何值。

最佳答案

基本上,这是一个非常明确的案例,说明您何时应该使用调试器。我不知道您使用的是什么编程环境,但所有大型环境(IntelliJ、Eclipse、Netbeans)都支持内置调试。在这种情况下,您应该在 bot(answer) 上设置一个断点); 行,这样,你可以判断那里是否有任何数据,检查 bot 功能是否正常工作等。

此外,如上所述,如果您没有获得堆栈跟踪,则说明代码正确返回了一个值。也许数据库中的相关字段是空的?同样,使用调试器可以在这里帮助您。

如果您需要,这里有一个在 Eclipse 中调试 Java 程序的示例教程:https://www.vogella.com/tutorials/EclipseDebugging/article.html

关于java - 如何确定查询是否有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56377296/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com