cursor.getString() 无法正常工作(例如:code postal = "01234" 但 return "1234" 代替)

cursor.getString() doesn't work properly (ex: code postal = "01234" but return "1234" instead)

我正在使用 Android - SQLite。 我在 SQLite 数据库中将代码邮政编码存储为 CHAR[5]。

Cursor cursor = db.query( ... )
String code = cursor.getString(cursor.getColumnIndex("code"));
CREATE TABLE codepostal (
    code CHAR( 5 ) PRIMARY KEY NOT NULL UNIQUE,
    name VARCHAR( 70 ) NOT NULL
);
INSERT INTO [codepostal] ([code], [name]) VALUES (01001, 'My_city');

然而它总是return删除邮政编码的“0”开头字符? (例如:邮政编码 =“01234”,但 return 改为“1234”)

谁能解释一下?

所有回复 LeoLink、Frank N. Stein、Pawel Urban、AC-OpenSource 都是正确的。 非常感谢你们。

必须通过添加 'quote'

将值作为字符串文字插入

使用

VALUES ('01001', 'My_city');

而不是

VALUES (01001, 'My_city');