0
我有一个非常基本的内容提供商,在sqlite数据库中存储4列。这些列是一个自动递增键,一个URL作为文本,一个长和一个图像的斑点。当我尝试查询网址时,即使我知道该行存在于数据库中,我也无法获得结果。我需要怎样处理/访问该网址才能将其选中。查询内容提供商的url返回没有结果
//called when storing
private void addKey(String url, final Bitmap bm) {
ContentValues values = new ContentValues();
values.put(ImagesContentProvider.URL, "'" + url + "'");
values.put(ImagesContentProvider.TIME, System.currentTimeMillis());
ByteArrayOutputStream bos = new ByteArrayOutputStream();
bm.compress(CompressFormat.PNG, 0 /* ignored for PNG */, bos);
values.put(ImagesContentProvider.BITMAP, bos.toByteArray());
cr.insert(ImagesContentProvider.CONTENT_URI, values); //cr is content resolver
}
//called for querying
private void query(String url) {
String selection = ImagesContentProvider.URL + "='" + url+ "'";
Cursor resultsCursor = cr.query(ImagesContentProvider.CONTENT_URI,
null, selection, null, null);
if (!resultsCursor.moveToFirst()) {
Log.d(TAG, "Not found in DB");
resultsCursor.close();
} else {
Log.e(TAG, "found in DB");
resultsCursor.close();
}
}
,因为搜索的youre像'HTTP网址:// someurl'并在数据库中,您有' '的http:// someurl''(用''')......如果你猜为什么 - 好你如果不是......编程不适合你...... – Selvin
哇。有点苛刻。无论如何,事实证明我只是有一个复制和粘贴错误。正如你所说,我正在添加“'网址'”并搜索“网址”。感谢您捕捉我的错误。 – user1883083
“有点苛刻”..也许,但你确实提供了插入和查询问题......我确信你会发现这:) – Selvin