java 数据库里表的某一列取最大值

try{Statementlo=L.openDatabase().createStatement();JOptionPane.showMessageDialog(null... try {

Statement lo = L.openDatabase().createStatement();
JOptionPane.showMessageDialog(null, "1");//这个显示了
ResultSet rs = lo.executeQuery("SELECT MAX(Sid) FROM User_Student");
JOptionPane.showMessageDialog(null, rs.getString(1).trim());
String i=null;
if(rs.next())
{
i=rs.getString(1).trim();
JOptionPane.showMessageDialog(null, i);
JTFSid.setText(i+1);
}
else
JTFSid.setText("0");
}
catch (Exception e)
{
JOptionPane.showMessageDialog(null, "数据库出现问题!");
}
为了做测试,加入了几个弹出的消息框。但是只有两个对话框显示,一个是显示 1 ;另一个是try跳到了catch里弹出来现实的 数据库出现问题。 但是数据库没有问题,应该是SQL语句错了。但是这个语句在SQL2008里执行出的结果是对的啊。。。应该没错啊。

JTFSid是文本框。然后表里面Sid的数据类型是int。。
展开
 我来答
alily719
2014-03-23
知道答主
回答量:9
采纳率:0%
帮助的人:1.1万
展开全部
因为你sid的数据类型是int类型的,但是trim()这个方法是字符串才有的这个方法,属于程序在运行过程中报错了,被catch捕捉到了,所以才会运行出了两个弹框。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiaoan6688
2014-03-23 · TA获得超过214个赞
知道答主
回答量:90
采纳率:0%
帮助的人:58.1万
展开全部
rs.getString(1) 这是你用 getInt() 试一下
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式