微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – 检查数据库android中是否存在记录

我想检查sqlite数据库中是否存在记录,这是我到目前为止所做的.当我搜索已经存在的记录时,我从列表中的EditText获取值.

    //code from activity class

    public View.OnClickListener searchStation = new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        arrayAdapterList=new ArrayAdapter<String>(SearchAndReview.this,
                android.R.layout.simple_list_item_1,
                list);
        String searchTextFinal=searchText.getText().toString();
        dbms.searchStation(searchTextFinal);
        Cursor cursor= dbms.searchStation(searchTextFinal);



       list.add(searchTextFinal);
        arrayAdapterList= new ArrayAdapter<String>(SearchAndReview.this,
                android.R.layout.simple_list_item_1, list);
        listView.setAdapter(arrayAdapterList);


    }
};

//来自databasehelper类的代码

   public Cursor searchStation(String name){
    sqliteDatabase database = this.getWritableDatabase();
    String searchStationQuery = "SELECT stationName FROM review WHERE stationId='"+ name+"'";
    Cursor c =database.rawQuery(searchStationQuery,null);
    if (c != null && c.movetoFirst()) {
    }
    return c;
}

解决方法:

我在我的应用程序中使用此代码,它可以实现…

LoginActivity.java

DatabaseHelper dbHelper = new DatabaseHelper(getApplicationContext());
String email_id = email.getText().toString();
boolean dbHelper.isExist(email_id);

// if record is exist then it will return true otherwise this method returns false

使用rawQuery

 public boolean isExist(String strEmailAdd) {
        db = this.getReadableDatabase();
        cur = db.rawQuery("SELECT * FROM " + USER_TABLE + " WHERE email_id = '" + strEmailAdd + "'", null);
        boolean exist = (cur.getCount() > 0);
        cur.close();
        db.close();
        return exist;

    }

使用db.query

public boolean isExist(String strEmailAdd){

        String whereClause = "email_id = ?";
        String[] whereArgs = new String[]{strEmailAdd};

        db = database.getWritableDatabase();
        cur = db.query(USER_TABLE, null, whereClause, whereArgs, null, null, null);
        boolean exist = (cur.getCount() > 0);
        cur.close();
        db.close();
        return exist;
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐