簡體   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