我正在尝试从数据库中选择一些数据,我有两片代码来做:
cursor = builder.query(db,new String[]{"col1","col2","col3"},"id = ?",new String[]{getSID(db)},null,null);
和
cursor = builder.query(db,"id = " + getSID(db),null);
它们之间的区别在于,根据文档,第一个似乎更正确,但它也不起作用 – 光标是空的.而不是第二个 – 我得到了我需要的所有数据.
所以我尝试在我的电脑上使用数据库副本执行不同的SQL查询,这就是我所拥有的:
SELECT col1,col2,col3 FROM SoMetables WHERE (id = '42')
SELECT col1,col3 FROM SoMetables WHERE (id = 42)
据我所知,sqlite应该自动执行类型转换,但出了点问题,我不知道为什么.您对如何修复第一个代码示例有什么想法吗? (或者,也许,数据库?)
如果重要,这里是带有id字段的表的简化CREATE脚本:
CREATE TABLE SoMetable ( ID PRIMARY KEY,col1,[...] )
UPD:顺便说一下,getSID(db)返回String Object.
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。