`
大象06
  • 浏览: 119359 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

关于ResultSet只得到第一条记录的实现

    博客分类:
  • Java
阅读更多

 今天用jdbc读取数据库,用的是ResultSet,每次读出来都是一大堆记录,但是为了处理方便,我只需要每次读取记录的第一条.网上说用什么rs.first()方法,但是不靠谱,最后的解决方案如下。

public static ResultSet excuteSql(String sql) {
		try {
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		url = GlobalsConfig.getDBUrl();
		user = GlobalsConfig.getDBUser();
		password = GlobalsConfig.getDBPwd();
		try {
			//int parameterIndex = 1;
			conn = DriverManager.getConnection(url, user, password);
			ps = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
			//ps.setString(parameterIndex, "url");
			rs = ps.executeQuery();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return rs;
	}
  1.  其实最主要就是在这句ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY
  2. 然后,你只需要调用即可,如下
ResultSet rs = QueryDB.excuteSql(sql);
		if(rs.first()) {
			System.out.println(rs.getString("url"));
		}

这样就OK了!

分享到:
评论

相关推荐

    实例讲解JSP获取ResultSet结果集中的数据的方法

    同时,在查询所有用户的记录时,如果只需要获取部分字段的数据,可以在SQL查询语句中指定需要的字段,例如“SELECT userid, username FROM user”,这样返回的结果集中只包含这两个字段的数据。 最后,为了将这些...

    JSP分页技术实现.mht

    rs.getRow()获得总计录条数,使用rs.absolute()定位到本页起始记录)。这种方式在某些数据库(如oracle)的JDBC实现中差不多也是需要遍历所有记录,实验证明在记录数很大时速度非常慢。  至于缓存结果集ResultSet的...

    java分页int pageSize:每页显示多少条记录

    - 用户可以请求查看特定页面的数据,如第一页、第二页等。 3. **`int pageCount`**:总共有多少页。 - `pageCount`表示所有数据按`pageSize`分割后的总页数。 4. **`int rowCount`**:数据库中总的记录数量。 - ...

    JSP连接SQL数据库实现数据分页显示

    3. **确定当前页显示的数据范围**:根据当前页码和每页显示的记录数,将结果集定位到当前页第一条记录的位置。 ```java rs.absolute((curPage - 1) * pageSize + 1); // 定位到当前页第一条记录 ``` 4. **显示...

    mysql的插入问题 怎么获得自动增长的ID

    - **MyISAM**:由于MyISAM使用独立的文件存储自动增长的ID值,即使在删除了一些记录并重启MySQL服务后,新的记录ID也会继续从上一个最大ID值加1开始计算,即第18条记录的ID将是18。 - **InnoDB**:重启MySQL服务后,...

    jsp分页技术

    在实际开发过程中可能会遇到一些问题,例如文中提到的问题:“JDBC数据库分页显示页面中,使用默认的排序读取数据库记录时,数据库中的第一条记录并不是在第1页第1条显示,而是跑到了最后一页最后一条显示。...

    servlet连接mysql数据库,实现分页加载

    例如,如果我们每页显示10条记录,第一页的SQL可能如下: ```java String sql = "SELECT * FROM your_table LIMIT ?, ?"; PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setInt(1, (page - 1) ...

    实验4 附加_分页显示1

    4. **定位游标并显示数据**:通过`rs.absolute(p)`方法将游标定位到当前页面的第一条记录,然后按需遍历并显示结果。 在实际应用中,我们还需要确保页面编号`currentPage`的有效性,即它必须在1和总页数`totalPages...

    一个JAVA分页方法

    // 当前记录在第一页时,索引为(pageNum-1)* countPerPage 到 pageNum * countPerPage if ((j >= (pageNum - 1) * countPerPage) && (j * countPerPage)) { currentPageV.addElement(totalV.get(j)); } // ...

    jdbc操作数据库分页

    注意,OFFSET的值是(页码 - 1) * 每页大小,因为第一页的OFFSET是0。 3. **创建Statement或PreparedStatement对象**: 使用`Connection.createStatement()`或`Connection.prepareStatement()`来创建执行SQL的`...

    web 开发 mysql+jdbc 实现信息分页显示

    这里的10是每页的记录数,OFFSET 10则表示跳过前10条记录,从第11条开始取。 接下来,我们探讨JDBC在Java中的应用。JDBC是Java标准API,用于与各种数据库进行交互。在分页显示中,我们需要编写Java代码来执行上述...

    java获取新insert数据自增id的实现方法

    这个实现使用了Statement的getGeneratedKeys方法,当Statement追加了一条记录后,可以直接调用getGeneratedKeys方法获得新追加记录的key。 测试程序如下: ```java import java.sql.Connection; import java.sql....

    分页效果 servlet

    例如,当curPage为2时,从结果集的第7条记录开始读取,直至第12条。在Java中,可以使用ResultSet的absolute(int position)方法定位到指定位置。 在上述示例中,使用了JSP技术来混合HTML、Java代码和表达式语言,...

    Jsp分页技术

    为了让结果集指针指向当前页的第一条记录,可以使用如下代码: ```java rs.absolute((curPage - 1) * PAGESIZE + 1); ``` 这里的 `PAGESIZE` 是每页显示的记录数。 ##### 7. 实现翻页链接 最后,需要实现上一页...

    apriori关联分析matlab实现.doc

    Apriori 算法的第一步是简单统计所有含一个元素的项集出现的频率,以决定最大的一维项目集。在第 k 步,分两个阶段,首先用一函数 sc_candidate(候选),通过第(k-1)步中生成的最大项目集 Lk-1 来生成侯选项目集 Ck。...

    Java获取最后插入MySQL记录的自增ID值的3种方法

    但是,需要注意的是,如果一次`INSERT`语句插入了多行,`LAST_INSERT_ID()`和`@@IDENTITY`将返回第一条插入记录的ID。 ```sql SELECT LAST_INSERT_ID(); ``` 或者 ```sql SELECT @@IDENTITY; ``` 在Java中,你...

    八皇后问题并图形化显示

    已经没有任何位置可选,则第i-1个皇后必须往后移动进行协调,同样,假如第i-1个皇后往后移动时没有找到空位置,则第i-2个皇后必须往后移动,进行协调,当找到空位置时,暂时停下,将下一个皇后重新从第一列开始寻找...

Global site tag (gtag.js) - Google Analytics