如何在Android数据库

时间:2016-07-22 11:57:36

标签: android

我这样使用,但不知道发生了什么,它没有显示任何东西。 那么如何在我的代码中使用AND运算符: 数据库java:

public boolean loginstatus(String TABLE_NAME,String COL_3,StringCOL_4,String log,String pss)
{
try {
    SQLiteDatabase db=this.getReadableDatabase();
    Cursor cursor=db.rawQuery("SELECT "+COL_4+COL_3+" FROM
    "+TABLE_NAME+" WHERE "+COL_4+"='"+log+" AND
    "+COL_3+"=,"+pss+"'",null);  

    if (cursor.moveToFirst()) {
        db.close();
        Log.d("Record  Already Exists", "Table is:"+TABLE_NAME+"
                ColumnName:"+COL_4);
        return true;//record Exists
    }

这是活动类代码:

public void onClick(View view) {
    try {

        boolean recordExists = 
          myDb.loginstatus(DatabaseOperation.TABLE_NAME,DatabaseOperation.COL_3,user.getText().toString(),DatabaseOperation.COL_4,us.getText().toString());

        if (recordExists) { }

1 个答案:

答案 0 :(得分:1)

我认为您在查询中缺少逗号。如果您查看SELECT "+COL_4+COL_3+" FROM,就可以看到只是将列名添加到一起。

因此,如果COL_4是用户名,则COL_3是您的查询将查询的电子邮件:

SELECT usernameemail FROM ...

所以你没有得到任何结果,因为这个专栏可能不会存在。你也错过了一个' 。 尝试编辑您的查询,如下所示:

Cursor cursor = db.rawQuery("SELECT " + COL_4 + "," + COL_3 + " FROM " + TABLE_NAME + " WHERE" + COL_4 + " = '" + log + "' AND " + COL_3 + " = '" + pss + "'",null);