Android SQL:检查数据库中是否存在logging

我正在试图查询我的数据库基于一个特定的ID。

String sql = "SELECT * FROM mash WHERE recipe_id = '" + id + "'"; Cursor data = database.rawQuery(sql, null); 

如果这是第一次运行活动,表将与id列一起存在,但是不会有具有特定id的logging。 如何检查特定logging是否存在,如果不存在,添加? 我已经find了很多有关检查是否存在特定的列,但没有关于检查是否存在特定的logging。

到目前为止,我已经尝试获取id列索引,并检查它是否返回-1,但实际上由于某种原因返回1。 我可以在if语句中使用什么来validationid列尚未创build?

Solutions Collecting From Web of "Android SQL:检查数据库中是否存在logging"

 if (cursor.moveToFirst()) { // record exists } else { // record not found } 

我的代码是:

 public void addContact(String a, String b, String c, String d, SQLiteDatabase db) { //cursor is use to check if data is availble then show row is exist if not then execute insert query. Cursor mCursor = db.rawQuery("SELECT * FROM " + TABLE_CONTACTS + " WHERE email=? ", new String[]{b}); if (mCursor.moveToFirst()) { value=false; Toast.makeText(context,"Email alreay exist please enter anothe email id",Toast.LENGTH_LONG).show(); } else { ContentValues values = new ContentValues(); values.put(Database_Handler.NAME, a); // Contact Name values.put(Database_Handler.EMAIL, b); values.put(Database_Handler.PASSWORD, c); values.put(Database_Handler.NUMBER, d); db.insert(Database_Handler.TABLE_CONTACTS, null, values); Log.e("DATABASE OPERATION", "One row is insert"); Toast.makeText(context,"Data insert Sucessfully",Toast.LENGTH_SHORT).show(); db.close(); value=true; } }