2012-02-13 48 views
0

我做这样的如何找到重复的价值是插入到Android的sqllite?

public void insertNewCustomere(NewCustomer ncust) { 
     ContentValues values = new ContentValues(); 
     values.put("cname", ncust.cName); 
     values.put("date", ncust.date); 
     values.put("caddress", ncust.cAddress); 
     mdb.insert(CREATE_NEWCUSTOMER, null, values); 
     if(mdb.insert(CREATE_NEWCUSTOMER, null, values)==-1) 
     { 
      Toast.makeText(this, "Name already exist", Toast.LENGTH_LONG) 
      .show(); 
      ContentValues values1 = new ContentValues(); 
     } 
     else 
     { 
      Toast.makeText(this, " \n Details Submited Successfully.Thank You", Toast.LENGTH_LONG) 
      .show(); 
      ContentValues values2= new ContentValues(); 
     } 
    } 

回答

0

尝试像这样

Cursor mCursor = null; 
      mCursor = mDb.query(DATABASE_TABLE,new String[] {KEY_NAME},KEY_NAME+" = ?", 
        new String[] {uName},null, null, null); 

      if(mCursor.getCount() > 0){ 
       return 1; 
      }else{ 
       return 0; 
      } 
0

你应该只设置在该领域的唯一约束,如果它是一个简短的现场,赶上违反唯一约束的例外。 这会为你节省很多痛苦和时间。


干杯

+0

我使用的名称column.how主键查找同名进入第二次。 – sai 2012-02-13 10:06:17

+0

捕获主键违例异常。 http://stackoverflow.com/questions/1988570/how-to-catch-a-specific-exceptions-in-jdbc - 违反完整性约束 – 2012-02-13 10:07:49