-2

编辑: 问题已解决,查询正确。我的问题是;我使用本地数据库。而且我没有直接从资产文件夹访问数据库。当数据库未在 SD 卡上退出时,我的代码将数据库从资产文件夹复制到 SD 卡。因此,我的数据库更改仅影响资产文件夹中的数据库。我在旧数据库上尝试了正确的查询。对不起这个问题。

我在DB Browser for SQLite上尝试了我的 SQLite 查询,它成功了。

但在 Android 上,相同的查询不起作用。

 String[] a = new String[1];
 a[0] =   yazilanKelime + '%';
 Cursor friendCursor = db.rawQuery( "SELECT * FROM kelimeler WHERE kelime LIKE ? ORDER BY sayi DESC LIMIT 10", a);

如果我删除“ORDER BY sayi DESC”部分,它的工作。我在哪里做错了?

更新:返回此异常:android.database.sqlite.SQLiteException:没有这样的列:sayi(代码1):,编译时:SELECT * FROM kelimeler WHERE kelime LIKE?由sayi DESC LIMIT 10 订购

数据库架构: 在此处输入图像描述

4

1 回答 1

1

正如例外所说,no such column: sayi意味着该列sayi在您的表中不存在kelimeler。首先检查这个。

于 2015-04-29T15:24:37.537 回答