Microsoft的jdbc驱动用的时候发现提示Unsupported method: ResultSet.last 哦,忘了说了,是SqlServer2000的驱动! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 是不是你的ResultSet是只向前的.不能随意滚动 不是啊!提示的意思应该是不支持last和first啊!我试过别的SqlServer2000的驱动倒是发现过只能forward的 从Connection创建Statement的时候(createStatement方法)使用那个双参数的方法,参数是Result对象的静态常数.使用TYPE_SCROLL_SENSITIVE或者TYPE_SCROLL_INSENSITIVE常数。 你的Statement对象是这样创建的吗?//创建一个可以滚动的只读的SQL语句对象java.sql.Statement sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY); 你的Statement对象可能是这样建立的:Statement st=conn.createStatement();没有指定参数,改为我上面的试试 检查一下你的数据库表是否有ntext或nvarchar的列,如果有,那八成是这个原因,最好改成varchar 你的该改为如下(其中conn是Connection对象,我最上面用的是sqlCon)Statement st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); (我遇到的问题和楼主一样)不过我使用的是链接池,以为是链接池出问题!死找。原来是我创建Statement 时没有参数!加上ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY之后可以了,resultset.last()可以用了。 public ResultSet executeQuery(String sql) { openDB(); try { stmt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); rs = stmt.executeQuery(sql); } catch(SQLException ex) { //记录一个错误 ex.printStackTrace(); } return rs; } 关于异常捕获异常写入文件 救急!!! 远程访问数据库 java.net 的问题 初学Java 选定区域截图 又一applet个弱智问题(分只给一人) 有哪位兄弟有读写文本文件的现成的类。 散分拉!!!对于初学JAVA进行GUI编程的电子书的下载地址,大家有好的建议没有??另外有谁听说过buleJ的? 求解递归调用的运行全过程? 问一个关于collection与set区别的问题? 我不用jsp,为什么插入数据到mysql仍然有乱码?高手救我,在线等
//创建一个可以滚动的只读的SQL语句对象
java.sql.Statement sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);
Statement st=conn.createStatement();
没有指定参数,改为我上面的试试
Statement st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
原来是我创建Statement 时没有参数!
加上ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY之后可以了,resultset.last()可以用了。
public ResultSet executeQuery(String sql) {
openDB();
try {
stmt=con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
rs = stmt.executeQuery(sql);
} catch(SQLException ex) {
//记录一个错误
ex.printStackTrace();
}
return rs;
}