mysql查询5000条以上数据,不报错,但也不返回查询结果
这是数据库连接代码
public static Connection getConn(){
Connection con=null;
try {
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/web","root", "ROOT");
}catch (SQLException e) {
e.printStackTrace();
}
return con;
}
查询代码如下
public List<Text> queryAll() {
// TODO Auto-generated method stub
Connection conn = DBConnection.getConn();
String sql = "select id, title, classfi, body, date,commNum from news where classfi = '2' limit 5000;";
List<Text> texts = new ArrayList<Text>();
try {
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while(rs.next()){
Text text = new Text();
text.setTextId(rs.getInt("id"));
text.setTitle(rs.getString("title"));
text.setClassfi(Integer.parseInt(rs.getString("classfi").trim()));
text.setBody(rs.getString("body"));
String date = rs.getString("date");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
text.setTime(sdf.parse(date));
text.setAttention(rs.getInt("commNum"));
//text.setTagging(rs.getString("tagging"));
text.setFrom(-1);
texts.add(text);
}
DBConnection.close(rs, ps, conn);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return texts;
}
调用此函数时,程序一直陷入此函数中,占用CPU一直为0,占用内存未定不变。但是查询3000条数据时,16秒就得到结果,这是什么原因呢?
相关推荐
MySQL查询全部数据集结果不一致问题解决方案
最近出现一个很奇怪的MySQL问题,使用不同select语句查询全部数据集居然得到不同的记录数。select * 得到4条记录,select 字段得到的是3条记录。具体问题可以看下面的查询结果: [sql] mysql> select * from table_myisam; +———-+——-+———–+——+ | datetime | uid | content | type | +———-+——-+———–+——+ |1 | uid_1 | content_1 |1 | |2 | uid_2 | content_2 |1 | |4 | uid_4 | content
MySQL查询把多列返回结果集拼装成一个字段
使用场景 mysql中有种可以通过join相关操作进行表与表之间的方式查询不同结果集,但是在一对多的情况下,关键查询的结果是多条的.例如:班级和学习的关系,我想很直观的看到班级和学生的情况,列表显示出班级的信息和班级的男生女生姓名,通过关联查询肯定是无法实现的. 解决方式 1首先我们了解上述相关使用场景之后,结合相关如下相关示例 单个列表中,需要显示不同快递公司的配送区域,相关表中存储是的对应的地区id字段 2主表中记录相关业务数据,然后关联相地址表处理结果集,就可以得到我们需要的结果 原数据 最终需要的数据 执行的SQL如下 SELECT template.temple
深入理解用mysql_fetch_row()以数组的形式返回查询结果
同mysql_result()一样,mysql_fetch_row()也可以用来获取查询结果集,其区别在于函数的返回值不是一个字符串,而是一个数组。函数定义如下。复制代码 代码如下:array mysql_fetch_row(int result) 参数说明如下。result:由函数mysql_query()或mysql_db_query()返回的结果标识,用来指定所要获取的数据的SQL语句类型。函数返回值如下。成功:一个数组,该数组包含了查询结果集中当前行数据信息,数组下标范围0~记录属性数−1,数组中的第i个元素值为该记录第i个属性上的值。失败:false。下面的mysql_fetch_r
MySQL中对查询结果排序和限定结果的返回数量的用法教程
主要介绍了MySQL中对查询结果排序和限定结果的返回数量的用法教程,分别讲解了Order By语句和Limit语句的基本使用方法,需要的朋友可以参考下
MySQL 查询某个字段不重复的所有记录
现在想从这5条记录中查询所有title不重复的记录



