java - 如何正确构造此 SQL 查询

标签 java android sql

我想返回数据库中某一字段中的属性等于该方法的参数的行。我的代码是:

    public Cursor fetchStatus(String status){
    Cursor mCursor =  

            mDb.query(DATABASE_TABLE, new String[] {KEY_COMPANY, KEY_POSITION, KEY_NOTES, KEY_WAGE, KEY_STATUS}, 
                    KEY_STATUS+ "= "+status, null, null, null, null)
            ;
    if(mCursor!=null) mCursor.moveToFirst();
    return mCursor;
}

我想返回 KEY_COMPANY、KEY_POSITION、KEY_NOTES、KEY_WAGE 和 KEY_STATUS 列,其中 KEY_STATUS 等于参数“status”

最佳答案

也许你可以尝试这样的事情:

public object GetValues (string status)
{
   string query = "SELECT KEY_COMPANY, KEY_POSITION, KEY_NOTES, KEY_WAGE,KEY_STATUS 
   FROM DATABASE_TABLE 
   WHERE KEY_STATUS = "'" +status+ "'" " ;

   dbcomands part...

   List<object> =  execute db comand....
}

您在评论中指定的错误可能是由于查询中缺少“”造成的。只是一个想法。

关于java - 如何正确构造此 SQL 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7945136/

相关文章:

android - 如何使用 InputFilter 实现数字分组输入掩码?

android - 现在如何将 Eclipse 项目导入 Android Studio?

mysql - 如何添加命名非空约束

java - BufferedReader 正确使用

java - 我想打印带有破折号对角线的 X 的完整正方形

java - 无法在java中将UTF-8字符串转换并保存为ANSI

sql - 数据库设计 : getting more readable rows

java - For循环(元素:collection) not making permanent change

android - 在 android 上使用 com.bea.xml.stream 包

sql - Informix `interval` 函数的 Oracle 等效项是什么?