Java-DB2 JDBC:“相同”查询给出不同的结果

我被分配去开发一个小的Java应用程序来处理来自DB2数据库的某些数据(用于记录业务交易),并且我对datbase的内部设置了解得很清楚.当前,我正在努力找出为什么在我的应用程序上执行的查询(通过JDBC)与在Quest Central for DB2客户端上执行的直接查询给出的结果集不同的原因.

    String query = "SELECT disTINCT SYstem_NME FROM MISUSER.USAGE_LOGGER";

    try {
        Connection conn = DB2Connect.getDB2Connection();
        Statement stmt = conn.createStatement();

        ResultSet rs = stmt.executeQuery(query);
        while(rs.next()){
            retval.add(rs.getString(this.code.column_name));
        }

    } catch (sqlException e) {...

上面的代码返回一个有7行的ResultSet对象,而在我的db2客户机上执行的同一查询返回了30行以上.如前所述,我对数据库的使用经验很少,我需要某种想法才能使同一查询产生两个不同的结果.

解决方法:

几个原因.

>它不是相同的数据库和/或架构.
>该表具有行级安全性(DB2具有此功能),并且已登录的JDBC用户对没有返回的权限没有足够的权限.
>在未提交的同一事务中插入并选择了很多行.

相关文章

连接数据库的方式:第一种方式:ODBC:开放数据库连接是微软...
JDBCRequest 使用VariableNamesmysql:数据库连接池对象var...
 1.JDBCDBC(JavaDataBaseConnectivity):Java数据库连接技术...
1.需要jar包的支持:java.sqljavax.sqlmysql-conneter-java....
1.简介Activiti是一个业务流程管理(BPM)框架,它是覆盖了业务...
1.JDBC体系系统一组规范:接口JDBC接口(API)包括两个层次:...