如何调用咨询的结果并将其放入文本框? MYSQL + Java的
问题描述:
我的文本框被称为pruebamax如何调用咨询的结果并将其放入文本框? MYSQL + Java的
有了这个功能,我就与数据库的连接
public ResultSet getmax() {
ResultSet r = null;
try {
String sql = "select count(*) as Cantidad from tbl_padre";
System.out.println(sql);
Statement st = cx.createStatement();
r = st.executeQuery(sql);
System.out.println(st.executeQuery(sql));
} catch (SQLException ex) {
Logger.getLogger(Tmrptryone.class.getName()).log(Level.SEVERE, null, ex);
}
return r;
}
他在一个按钮的事件方法,用这种方法我想在打印文本字段我从数据库中收到的数据,但是出现错误。
public void actualizatext() {
try {
ResultSet r = mrp.getmax();
if (r.next()) {
String ID = r.getString("Cantidad");
pruebamax.setText(ID);
}
} catch (SQLException ex) {
Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
}
}
答
现在,我不知道你用什么pruebamax手段,而是SQL语句:
String sql = "SELECT COUNT(*) AS Cantidad FROM tbl_padre";
专门用于计数目前维持在指定范围内的记录总数数据库表(tbl_padre)。来自该计数的值将保存在指定的临时字段中:Cantidad。当您使用SQL COUNT语句时,您不会返回String数据类型值。您将需要尝试获取一个整数值。
它不会获取从表中ID字段,它看起来像你期望的值。
要正确地检索记录从你的应用的SQL字符串,那么它应该在这种方式中使用计数:
int count = 0;
try {
String sql = "SELECT COUNT(*) AS rCount FROM tbl_padre";
Statement st = cx.createStatement();
ResultSet r = st.executeQuery(sql);
while (r.next()) {
count = r.getInt("rCount");
}
r.close();
st.close();
// Close your DB connection as well if desired.
// yourConnection.close();
//To apply this value to your JTextField:
pruebamax.setText(String.valueOf(count));
System.out.println("Total number of records in the tbl_padre " +
" table is: " + count);
}
catch (SQLException ex) {
ex.printStackTrace();
}
尽量不要使用临时字段名实际表的字段名。
如果你想要更具体的计数,那么你的SQL语句也必须更具体。例如,假设我们要计算保持在我们的表中的记录,其中一个字段名为年龄数包含的值大于年的时候,我们的SQL语句应该是这样的:
String sql = "SELECT COUNT(*) AS rCount FROM tbl_padre WHERE Age > 30";
您当然会注意到使用SQL WHERE子句。
+0
我工作过,谢谢! – Jorge1023
你有什么错误?请张贴stacktrace以及。 –
不打印我想要的值在文本字段中,不会在文本字段中打印任何东西 – Jorge1023
我不知道这是怎么样的语法工作 – Jorge1023