我在SQLite数据库中查询一些产品,但在2个不同版本的android版本中返回不同的值。
使用SQLite Expert:
在database.db3中选择结果
我在select之后创建了这段代码来测试:
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中的一个错误?
泰
答案 0 :(得分:0)
在创建text
时,您需要使用列类型string
而不是varchar
或SQLiteTables
。看来,如果你放string
它会trim
你的领先zeros
。另请参阅SQLite Data Types。
编辑:根据此answer: Versions of SQLite in Android,他们有不同的SQLite versions
。