获取JDBC中的ResultSet的记录的条数】的更多相关文章

方法一:利用ResultSet的getRow方法来获得ResultSet的总行数 Java代码 ResultSet rs; rs.last(); //移到最后一行 int rowCount = rs.getRow(); //得到当前行号,也就是记录数 rs.beforeFirst(); //如果还要用结果集,就把指针再移到初始化的位置 方法二:利用循环ResultSet的元素来获得ResultSet的总行数 Java代码 ResultSet rs; int rowCount = 0; while…
  在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值.其原因是 distinct只能返回它的目标字段,而无法返回其它字段,这个问题让我困扰了很久,用distinct不能解决的话,我只有用二重循环查询来解决,而 这样对于一个数据量非常大的站来说,无疑是会直接影响到效率的.所以我花了很多时间来研究这个问题,网上也查不到解决方案,期间把容容拉来帮…
最近在使用NHibernate,发现进行分页查询无法得到数据库记录的总条数,在网上找了很久没找到具体的实现方法,找到的资料都说得不是很清楚,研究了很久终于写出了这样一个方法. NHibernate下分页要使用Icriteria约束查询条件,但是返回的只有当前页的记录数,无法返回数据库总记录条数,这样在使用的时候就算不出总页数.自定义一个分页响应对象PageResponse用于返回记录总条数和分页查询结果集. /// <summary> /// 分页响应对象 /// </summary&g…
最近做了一个小任务,要求是:使用MySQL #筛选BETWEEN '2018-1-1 00:00:00' AND '2018-5-18 00:00:00'每日`status`='1'的记录总条数 SELECT DATE_FORMAT(createTime,'%Y-%m-%d') as time , count(*) as count FROM hm_stu_order WHERE `status`='1' AND createTime BETWEEN '2018-1-1 00:00:00' AN…
当我们执行完一条Sql语句,获取到一个 ResultSet 对象后,有时我们需要立即知道到底返回了多少个元素,但是 ResultSet 并没有提供一个 size() 方法 or length 的属性,我们可以一个一个调用 next() 去累加计算,但是我们还有更好的办法 : PreparedStatement statement = ......; ResultSet results = statement.executeQuery(); // 将游标移动到最后一行上results.last()…
前几天碰见了一个很奇葩的问题,使我百思不得其解,今天就写一下我遇见的问题吧,也供大家参考,别和我犯同样的毛病. 首先说下jdbc,jdbc是java是一种用于执行SQL语句的Java API,从jdbc中取值我们一般都是Statement stmt 的next()方法,或者是PreStatement  的next()方法, next()方法用来判断下一条记录是否存在,如果存在就执行一次,游标就向后移动.最开始的时候,游标位于第一条记录之前,也就是说执行一次后,游标移动到第一条记录的位置,随着循环…
//PageHelper.startPage会返回一个page对象,这个对象在查询结果出来后会把页数,记录总数给page对象,用page.getPages()和getTotal()获取页数和记录总数. Page page = PageHelper.startPage(request.getPageNum(), request.getPageSize()); List list = Service.list(request); PageInfo pageInfo = new PageInfo(li…
ResultSet:结果集.存放数据库中的数据,可以将它想象成一张数据表,通过Statement对象中的executeQuery()方法获得 import com.mysql.jdbc.Statement;import java.sql.Connection;import java.sql.Driver;import java.sql.ResultSet;import java.util.Properties; /** * Created by I am master on 2016/9/29.…
引用 6 楼  的回复: 好吧各位,应该写getInt(1)但是我要问的是为什么第二次用会出错 啊,好古老的一个问题... 第二次出错的原因,是因为你创建Statement的时候,没有指定结果集(游标)模式! createStatement(int resultSetType, int resultSetConcurrency) resultSetType 就是结果集模式,取值范围是:ResultSet.TYPE_FORWARD_ONLY: cursor may move only forwar…
如下方式使用Spring EL @Value("#{'${my.list.of.strings}'.split(',')}") private List<String> myList; 然后在.properties中这样配置 my.list.of.strings=A , B , C , D…
1.子查询,查询出的数据随便起一个别名,然后根据分组和条件查询出的数据,作为一个具有一列的一个表,然后外面的查询查询这个数据表的这一列的总数,即可. SELECT COUNT( * ) FROM ( SELECT COUNT( * ) FROM data_report_statistics WHERE CREATE_TIME > '2018-11-06 01:00:00' GROUP BY PROVINCE ) A;…
select table_name,table_rows from information_schema.tables where TABLE_SCHEMA = '数据库名称' order by table_rows desc;…
JDBC查询优化分析: 现有以下查询语句: String sql1 = "select * from userinfo";// 创建语句 String sql2 = "select count(*) from userinfo";// 创建语句 String sql3 = "select count(0) from userinfo";// 创建语句 String sql4 = "select username  from userin…
在平常开发中,去重复数据经常使用到,本人新手,接触Oracle也不久,开发中用到的小知识点,记录一下,老鸟可绕道,如果有写错的,请指正. 去重复记录可以使用distinct,当只查询一列数据时,可以轻松去掉重复的数据,当查询多列数据时,如果有一列的数据不相同,distinct则认为数据是不相同的,也就是数据将不会合并,这时类似是group by 某写字段的结果一样,此时的结果可能不是我们想要的.下面说下查询多列时去重复及合计重复记录的条数. 当做个不同的链接查询,得到的结果如下: select…
Linux Find Out Last System Reboot Time and Date Command - nixCraft https://www.cyberciti.biz/tips/linux-last-reboot-time-and-date-find-out.html Linux开机和关机记录查看 - CSDN博客 https://blog.csdn.net/u014717036/article/details/71036562 last命令 > last 查看最近一次开机时间…
参考: https://blog.csdn.net/liaoxiaoyi121121/article/details/80541901 需求: 开发需要保存查询记录的条数从10万改到100万 /etc/hue/conf/hue.ini搜download_row_limit, 改默认的条数重启服务 如果不成功,改源码:/opt/cloudera/parcels/CDH-6.2.0-1.cdh6.2.0.p0.967373/lib/hue/apps/beeswax/src/beeswaxvim co…
例如这样一个表,我想统计email和passwords都不相同的记录的条数 CREATE TABLE IF NOT EXISTS `test_users` ( `email_id` ) unsigned NOT NULL auto_increment, `email` ) NOT NULL, `passwords` ) NOT NULL, PRIMARY KEY (`email_id`) ) ENGINE ; INSERT INTO `test_users` (`email_id`, `emai…
网上使用union all 查询记录总条数的参考资料比较少,所以记录下来,以便有同样需求的人使用. $rs_num = Db::query("select sum(a.b) as num from ( select count() as b from table1 where afrom = '".condition1."' UNION ALL select count() as b from table2 where afrom = '".condition2.&…
通过jdbc获取数据库中的表结构 主键 各个表字段类型及应用生成实体类   1.JDBC中通过MetaData来获取具体的表的相关信息.可以查询数据库中的有哪些表,表有哪些字段,字段的属性等等.MetaData中通过一系列getXXX函数,将这些信息存放到ResultSet里面,然后返回给用户.关于MetaData的说明网上也有不少,这里我只是从我自身学习的角度来记录一下简单使用JDBC以及获取数据表相关信息的方法. DatabaseMetaData dbmd = con.getMetaData…
http://www.cnblogs.com/lbangel/p/3487796.html 1.JDBC中通过MetaData来获取具体的表的相关信息.可以查询数据库中的有哪些表,表有哪些字段,字段的属性等等.MetaData中通过一系列getXXX函数,将这些信息存放到ResultSet里面,然后返回给用户.关于MetaData的说明网上也有不少,这里我只是从我自身学习的角度来记录一下简单使用JDBC以及获取数据表相关信息的方法. DatabaseMetaData dbmd = con.get…
一.总结 在Webx的Velocity中获取url中参数:$rundata.getRequest().getParameter('userId') 在Webx项目中,防止CSRF攻击(Cross-site request forgery,跨站请求伪造),在form表单提交中要加入$!csrfToken.ajaxUniqueToken 在MyBatis的mapper层,使用标签association实现对象的关联,一个bean配多个association标签. 二.Bug描述:Velocity从U…
例如在mysql中的一张表中存在一个字段opr_time为datetime类型, 在JDBC 中通过rs.getString("opr_time");来获取使会在日期后面添加".0", 例如日期为:2014-06-01 12:10:20 查询出来为:2014-06-01 12:10:20.0 解决方法:通过rs.getTimestamp("opr_time")获取对应的时间戳然后调用toDateStr(Timestamp tt)方法就可以. pu…
在GridView控件中,每行记录内会放置一个铵钮,当用户点击这个铵钮时,获取当笔记录的主键值.可看演示(是一个gif动画,重新播放尝试刷新网页): 实现这个功能,你需要为GridView控件设置DataKeyNames属性和OnRowCreated事件. <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" DataKeyNames="Me…
获取分组后取某字段最大一条记录 方法一:(效率最高) select * from test as a where typeindex = (select max(b.typeindex) from test as b where a.type = b.type ); 方法二:(效率次之) select a.* from test a, (select type,max(typeindex) typeindex from test group by type) b where a.type = b…
Statement 接口提供了三种执行 SQL 语句的方法:executeQuery.executeUpdate 和 execute.使用哪一个方法由 SQL 语句所产生的内容决定. 1>方法executeQuery 用于产生单个结果集(ResultSet)的语句,例如 SELECT 语句. 被使用最多的执行 SQL 语句的方法.这个方法被用来执行 SELECT 语句,它几乎是使用最多的 SQL 语句.但也只能执行查询语句,执行后返回代表查询结果的ResultSet对象. 如: //加载数据库驱…
Java中用类java.util.Date对日期/时间做了封装,此类提供了对年.月.日.时.分.秒.毫秒以及时区的控制方法,同时也提供一些工具方法,比如日期/时间的比较,前后判断等. java.util.Date中采用一个long型的数来保存日期/时间,它表示从格林威治时间1970年1月1日00点00分00秒至今的毫秒数. JDBC中,在这个类的基础之上扩展了3个类:java.sql.Date,java.sql.Time,java.sql.Timestamp. java.sql.Date表示日期…
package nona; import java.io.IOException; import java.io.PrintWriter; import java.sql.Connection; import java.sql.Driver; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.…
一.DAO设计模式概述###<1>概念 DAO,Data Access Object ,用于访问数据库的对象. 位于业务逻辑和数据持久化层之间,实现对数据持久化层的访问![](1.png) ###<2>作用 隔离了业务层和数据访问层,将两层进行解耦 隔离了不同数据库的实现 增强的程序的可移植性和可扩展性 ![](2.png) ###<3>组成 1. DAO接口(内存插槽的标准):定义操作数据的接口,CRUD 2. DAO实现类(不同内存条厂商生成的内存条):DAO接口的…
JDBC中的主要类(接口) 在JDBC中常用的类有: 1.DriverManager 2.Connection 3.Statement 4.ResultSet 1.DriverManager 其实我们今后只需要会用DriverManager的getConnection( )方法即可: 1. Class.forName("com.mysql.jdbc.Driver");//注册驱动 2. String url = "jdbc:mysq  l://localhost:3306/m…
数据库在当今的应用越来越广泛了,同样伴随着领域的广泛,存储的内容也不在是只有数值.字符.boolean几种类型,而是越来越多样化.在这样的前提下就出现了Blob和Clob两个类型.下面我将对这个两个类型在JDBC中的应用,进行一个简短的介绍 Blob是指二进制大对象也就是英文Binary Large Object的所写,而Clob是指大字符对象也就是英文Character Large Object的所写.由此可见这两个类型都是用来存储大量数据而设计的,其中BLOB是用来存储大量二进制数据的:CL…