起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3788|回复: 5

[结贴] 为什么数据库查出来的和报表显示的不一样呢

[复制链接]

179

主题

709

帖子

2090

积分

金牌会员

QQ:1262363236

Rank: 6Rank: 6

积分
2090
QQ
发表于 2017-3-27 11:10:39 | 显示全部楼层 |阅读模式
为什么数据库查出来的和报表显示的不一样呢
数据库查出来有4条,报表里显示的时候变成了3条

玩儿玩儿玩儿51.png QQ截图201703271109333333333333318.png

QQ:1262363236

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2017-3-27 11:38:06 | 显示全部楼层
sql语句和excel文件发一下看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

179

主题

709

帖子

2090

积分

金牌会员

QQ:1262363236

Rank: 6Rank: 6

积分
2090
QQ
 楼主| 发表于 2017-3-27 12:40:44 | 显示全部楼层
jishuang 发表于 2017-3-27 11:38
sql语句和excel文件发一下看看

调用的是存储过程,在java里获取的时候就少了一条了,不好意思,估计不是报表的问题


conn = ModelUtils.getConnectionInTransaction("/aojing/gp/data");
                        // 创建一个 CallableStatement对象来调用数据库存储过程
                        // CallableStatement stat =
                        // conn.prepareCall("{call 存储过程的名称(?, ?)}");
                        proc = conn.prepareCall("{call DEBUGGERREPORT.DEBUGERFENXI (?,?,?,?)}");
                        proc.setString(1, masterid);
                        proc.registerOutParameter(2, Types.INTEGER);
                        proc.registerOutParameter(3, Types.VARCHAR);
                        proc.registerOutParameter(4, OracleTypes.CURSOR);
                        proc.execute();

                        // proc.g
                        int falg = proc.getInt(2);
                        String msg = proc.getString(3);
                        System.out.println("-----------------------------------------" + falg);
                        System.out.println(msg);
                        if (falg == 0) {
                                ResultSet rs = (ResultSet) proc.getObject(4);
//                                System.out.println(rs.getString(1)+"   rstiaoshu");
                                while (rs.next()) {
                                         System.out.println(rs.getObject(1));
                                         System.out.println(rs.getObject(2));
                                         System.out.println(rs.getObject(3));
                                         System.out.println(rs.getObject(4));
                                        table = com.justep.system.util.BizUtils.resultSet2Table(rs, "/aojing/gp/data");
                                        System.out.println(table.size()+"size   ");
                                         
                                        System.out.println(table.getColumnCount()+"--------------------------");
                                }
                        }
QQ:1262363236
回复 支持 反对

使用道具 举报

179

主题

709

帖子

2090

积分

金牌会员

QQ:1262363236

Rank: 6Rank: 6

积分
2090
QQ
 楼主| 发表于 2017-3-27 12:42:19 | 显示全部楼层
fcci 发表于 2017-3-27 12:40
调用的是存储过程,在java里获取的时候就少了一条了,不好意思,估计不是报表的问题

在  System.out.println(table.size()+"size   ");
这一句的时候就发现比数据库查出来的少了一条,数据库是4条,这里打印出来时3   
能帮我看看怎么回事吗,谢谢
QQ:1262363236
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2017-3-27 13:40:33 | 显示全部楼层
确认参数赋值的是否都正确
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

179

主题

709

帖子

2090

积分

金牌会员

QQ:1262363236

Rank: 6Rank: 6

积分
2090
QQ
 楼主| 发表于 2017-3-27 14:07:55 | 显示全部楼层
jishuang 发表于 2017-3-27 13:40
确认参数赋值的是否都正确

都正确,就是   while (rs.next()) { 这一句有问题,去掉就可以了,谢谢了!
QQ:1262363236
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-22 15:40 , Processed in 0.057489 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表