【发布时间】:2014-02-12 14:09:56
【问题描述】:
我正在运行一个查询,但它没有返回这样的列。我将该列复制并粘贴到 sqlite 查看器中,它正在运行且没有错误。
String SQL_QUERY = "SELECT m.* FROM '21_cars_models' as m INNER JOIN ( '41_cars_models_galleries' as mg
INNER JOIN ( '24_galleries' as g
INNER JOIN ( '26_galleries_pictures' as gp INNER JOIN '25_pictures' as p ON gp.picture_id=p._id )
ON g._id=gp.gallery_id ) ON mg.gallery_id=g._id )
ON m._id=mg.model_id WHERE m.brand_id LIKE '" + markaID + "'";
02-12 13:58:09.881: E/MYAPP(10962): android.database.sqlite.SQLiteException: no such column: gp.gallery_id (code 1): , while compiling: SELECT m.* FROM '21_cars_models' as m INNER JOIN ( '41_cars_models_galleries' as mg INNER JOIN ( '24_galleries' as g INNER JOIN ( '26_galleries_pictures' as gp INNER JOIN '25_pictures' as p ON gp.picture_id=p._id ) ON g._id=gp.gallery_id ) ON mg.gallery_id=g._id ) ON m._id=mg.model_id WHERE m.brand_id LIKE '339'
编辑: 如果我删除所有 INNER JOIN 并运行它一切都很好。我不明白为什么 INNER JOIN 事情会爆炸。再次提醒,如果我直接将它运行到数据库,一切都很好......
【问题讨论】:
-
贴出你所有的代码和你的sqlite数据库的截图
-
请发送证据。