从android应用程序中的两个表读取

时间:2015-12-06 06:30:47

标签: android mysql

我只想问一下从两个表中读取数据,主表和临时表。 主表是'translate',temp是'translate2'。

这行代码是否能完成工作?

        db = helper.getWritableDatabase();
        cursor = db.rawQuery("SELECT LOWER(kata_indo) as kata_indo, LOWER (kata_tora) as kata_tora FROM translate WHERE LOWER(kata_indo) = ?", new String[] {temp[i]});
        cursor = db.rawQuery("SELECT LOWER(kata_indo) as kata_indo, LOWER (kata_tora) as kata_tora FROM translate2 WHERE LOWER(kata_indo) = ?", new String[] {temp[i]});
        int countRow = cursor.getCount();
        cursor.moveToFirst();
        String specialChar = "";

提前感谢您的帮助

1 个答案:

答案 0 :(得分:3)

不,它没有。你把光标填满了两次。这意味着在运行第二个rawquery方法后,将替换translate表中的数据。因此,如果您需要来自两个表的数据,则必须有两个游标。

 cursor = db.rawQuery("SELECT LOWER(kata_indo) as kata_indo, LOWER (kata_tora) as kata_tora FROM translate WHERE LOWER(kata_indo) = ?", new String[] {temp[i]});
 cursor2 = db.rawQuery("SELECT LOWER(kata_indo) as kata_indo, LOWER (kata_tora) as kata_tora FROM translate2 WHERE LOWER(kata_indo) = ?", new String[] {temp[i]});