繁体   English   中英

光标返回错误的值

[英]android - Cursor returning wrong values

我正在查询SQLite数据库中的某些产品,但是2种不同版本的相同基数android的版本会返回不同值。

使用SQLite Expert在database.db3中选择结果:

结果

选择后,我创建以下代码以进行测试:

        if(cursor.moveToFirst()){
            while(!cursor.isAfterLast()){
                log("CDPROD:" + cursor.getString(cursor.getColumnIndex("CDPROD")));
                cursor.moveToNext();
            }
        }

在Android 2.2中记录结果:

09-26 14:30:08.947: INFO/LOGG(20497): CDPROD:000000000000211934
09-26 14:30:08.967: INFO/LOGG(20497): CDPROD:000000000000211944
09-26 14:30:08.967: INFO/LOGG(20497): CDPROD:000000000000212020
09-26 14:30:08.967: INFO/LOGG(20497): CDPROD:000000000000212124
09-26 14:30:08.967: INFO/LOGG(20497): CDPROD:000000000000214280
09-26 14:30:08.967: INFO/LOGG(20497): CDPROD:000000000000212886

在Android 2.1中记录结果:

09-26 14:18:16.772: INFO/LOGG(1039): CDPROD:211934
09-26 14:18:16.772: INFO/LOGG(1039): CDPROD:211944
09-26 14:18:16.772: INFO/LOGG(1039): CDPROD:212020
09-26 14:18:16.772: INFO/LOGG(1039): CDPROD:212124
09-26 14:18:16.772: INFO/LOGG(1039): CDPROD:214280
09-26 14:18:16.772: INFO/LOGG(1039): CDPROD:212886

这是Android中的错误吗?

创建SQLiteTables时,需要使用text类型而不是stringvarchar作为列类型。 看来,如果您放置string ,它将trim您的前导zeros 另请参见SQLite数据类型

编辑:根据此答案:Android中的 SQLite versions ,它们具有不同的SQLite versions

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM