1

我遇到了 sqlite 的问题。

我将预加载的 sqlite 数据库放在我的应用程序上,一切正常,连接正常,数据库存在正常。但是,当我使用 select 查询时,某些行仅在一列中返回空数据。我检查了我的数据库,该行中唯一奇怪的是该行/列中的字符。

我如何查询我的数据库以返回所有结果,即使是带有奇怪字符的行?

这是我试图获取行的代码。

public List<Song> getAllSongs(){
        List<Song> result = new ArrayList<Song>();
        String selectQuery = "select a.Name, b.Name from Song as a, Artist as b where a.IdArtist = b._id order by a.Name";
        SQLiteDatabase db = this.getWritableDatabase();
        Cursor cursor = db.rawQuery(selectQuery, null);
        if (cursor.moveToFirst()){
            do{
                Song song = new Song();
                song.setName(cursor.getString(0));
                song.setArtist(cursor.getString(1));
                result.add(song);
            }while(cursor.moveToNext());
        }

        return result;
    }

而且,我对奇怪字符的含义是“'”,“ñ”,......

4

1 回答 1

0

您可以使用 DDMS 或 ADB 将整个数据库移动到您的计算机并在那里进行检查。

adb pull /data/data/com.your.package.name/databases/dbname

然后在 PC 上使用 sqlite 之类的东西通过命令行访问它。

http://www.sqlite.org/sqlite.html

于 2013-03-24T22:49:25.447 回答