Sqlite3,使用WHERE Clause从超过3个表创建View不会在android中返回结果?

时间:2012-01-04 13:21:50

标签: java android sql sqlite

我使用此代码在sqlite3 + android中创建了一个视图;

CREATE  VIEW IF NOT EXISTS viewProductList AS
  SELECT p.product_id,c.category_name,s.subcategory_name,pt.type_size
  FROM tCategory c,tproduct p,tproducttype pt,tsubcategory s WHERE (p.cat_id =c._id)
  AND (p.product_type_id=pt.producttype_id)AND(pt.subcategory_id=s.sub_id)GROUP
  BY p.product_id 

但是使用这个查询android中的View:

Cursor c = db.rawQuery("SELECT * FROM viewProductList ", null);

它不会返回结果?

1 个答案:

答案 0 :(得分:0)

您是否直接尝试了对视图的陈述?它会返回任何值吗? 您确定,视图是否已创建?

您的视图的语句没有括号可能是个问题吗? 我会这样写:

CREATE  VIEW IF NOT EXISTS viewProductList AS (
SELECT p.product_id,c.category_name,s.subcategory_name,pt.type_size
FROM tCategory c,tproduct p,tproducttype pt,tsubcategory s WHERE (p.cat_id =c._id)
AND (p.product_type_id=pt.producttype_id)AND(pt.subcategory_id=s.sub_id)GROUP
BY p.product_id)