2012-11-23 52 views
1

我有这样的事情。我想查询查看日期和用户名是否与提供的字符串(参数)匹配并返回结果。我尝试了下面的语法,但它给了我错误。感谢您的帮助有两个约束的SQlite查询

public String getOneDayEvents(String date, String username) { 
    String[] columns = new String[] { KEY_TITLE, KEY_DESCRIPTION, 
      KEY_START_TIME, KEY_END_TIME }; 
    Cursor c = ourDataBase.query(DATABASE_TABLE_EVENTS, columns, KEY_DATE 
      + " like ? " + KEY_REF + " like ?", new String[] {date,username}, null, null, null); 
    String result = ""; 

    int iTitle = c.getColumnIndex(KEY_TITLE); 
    int iDesc = c.getColumnIndex(KEY_DESCRIPTION); 
    int istartTime = c.getColumnIndex(KEY_START_TIME); 
    int iendTime = c.getColumnIndex(KEY_END_TIME); 

}

回答

1

您需要并加入您的条件:

Cursor c = ourDataBase.query(DATABASE_TABLE_EVENTS, columns, KEY_DATE 
     + " like ? and " + KEY_REF + " like ?", new String[] {date,username}, null, null, null); 
//-----------------^^^ 
+0

^非常感谢你。有用!!对不起,我对数据库没有那么多的了解 –

+0

@sukhpunjabi:现在你对数据库有了更多的了解,而不是一个小时以前,所以这一切都很好。 –