Cod*_*ley 1 sql sqlite android
我必须在SQLite3中运行这样一个非常简单的查询.
INSERT OR REPLACE INTO tblPhoneList(Phone, PeopleId, StorageType) VALUES('+91912345789', '1','1');
Run Code Online (Sandbox Code Playgroud)
但无论我做什么,该号码都存储为91912345789. +前缀被忽略.该领域Phone是一个String.为什么忽略+前缀?反正有没有避免这个?
PS此代码在Android内部运行
编辑:这是表的架构
CREATE TABLE tblPhoneList(Phone STRING PRIMARY KEY ON CONFLICT REPLACE, StorageT
ype INTEGER, PeopleId INTEGER, FOREIGN KEY(PeopleId) references tblPeople(id));
Run Code Online (Sandbox Code Playgroud)
手册中的 < UPDATE > :
声明的"STRING"类型具有NUMERIC的亲和力,而不是TEXT
所以请将此列的类型更改为TEXT,您应该完成.</ UPDATE END >
你的Phone专栏是什么类型的(试试PRAGMA table_info (tblPhoneList))?如果它是TEXT(或BLOB),你不应该有任何问题 - 只是在这里试过.如果是INTEGER或REAL,你应该将其转换为TEXT- 你不能指望一个INTEGER或REAL列存储+字符串.
有关所有详细信息,请参阅SQLite版本3中的数据类型.
| 归档时间: |
|
| 查看次数: |
2768 次 |
| 最近记录: |