一个关于JDBC的问题

autiver 2002-10-11 10:11:55
我在程序中为了使记录集能够前后移动, 使用了以下语句:
stmt = connection.prepareStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE, String sql);

但是程序一执行这一句,就出错.我的数据库用的是MySQL.
不只到是否与MySQL数据库和使用的JDBC驱动程序有关.因为我用SQL Server没有出现这个问题.

...全文
34 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
tanghuan 2002-10-11
  • 打赏
  • 举报
回复
如果你使用的JDBC驱动不是2.0或更高,你就不可以滚动你的结果集
qxjavajava 2002-10-11
  • 打赏
  • 举报
回复
应当确定jdbc驱动程序是否支持这些特征:

public void testScrollable() throws SQLException
{
boolean supports;
DatabaseMetaData md = connection.getMetaData();

supports = md.supportsResultSetType(ResultSet.TYPE_FORWORD_ONLY);
if(supports)
{
System.out.println("TYPE_FORWORD_ONLY - Supports");
}
else
{
System.out.println("TYPE_FORWORD_ONLY - Does not support");
}

supports = md.supportsResultSetType(ResultSet.TYPE_SCROLL_INSENSITIVE);
if(supports)
{
System.out.println("TYPE_SCROLL_INSENSITIVE - Supports");
}
else
{
System.out.println("TYPE_SCROLL_INSENSITIVE - Does not support");
}

supports = md.supportsResultSetType(ResultSet.TYPE_SCROLL_SENSITIVE);
if(supports)
{
System.out.println("TYPE_SCROLL_SENSITIVE - Supports");
}
else
{
System.out.println("TYPE_SCROLL_SENSITIVE - Does not support");
}
}
linfei 2002-10-11
  • 打赏
  • 举报
回复
换成jdbc2.0以上版本
wjmmml 2002-10-11
  • 打赏
  • 举报
回复
不是所有的jdbc驱动程序都支持游标的前后移动。
解决办法
升级你的驱动试试吧
crm2000 2002-10-11
  • 打赏
  • 举报
回复
jdbc驱动版本太低
skyyoung 2002-10-11
  • 打赏
  • 举报
回复
是,与JDBC驱动有关。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧