2012-11-01 21 views
6

Hey all Yeni bir Androidian'ım ve bu konuda biraz yardım ister misin?Android :: SQLite, böyle bir sütun bulunamadı?

android.database.sqlite.SQLiteException: böyle sütun: asd:, derleme yaparken:

bu: isim = asd

bu burada hata am bakmaktadır ve etiketler DAN SİL kod DBhelper içinde yöntemdir:

/** 
* Delete a label table 
* */ 
public void deleteLabel(String label) { 
    SQLiteDatabase db = this.getWritableDatabase(); 

    // ContentValues values = new ContentValues(); 
    // values.remove(label); 

    // Deleting Row 
    db.delete(TABLE_LABELS, KEY_NAME + "=" + label, null); 
    db.close(); // Closing database connection 
} 

ve burada yöntemini çağırmak ana Etkinlik kod:

// for spinner onItemListener 
// and here is what label is 

final String label = parent.getItemAtPosition(position).toString(); 

Button dialogDeletelButton = (Button) dialog 
       .findViewById(R.id.deleteButton); 
     dialogDeletelButton.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // database handler 
       DatabaseHandler db = new DatabaseHandler(
         getApplicationContext()); 

       // inserting new label into database 
       db.deleteLabel(label); 

       // Hiding the keyboard 
       InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 
       imm.hideSoftInputFromWindow(inputLabel.getWindowToken(), 0); 

       // loading spinner without the deleted data 
       loadSpinnerData(); 

      } 
     }); 

cevap

13

Neredeyse kesinlikle 'asd' (kodunuzdaki label değişkenini) belirtmeniz gerekir. Alıntı yapıldıysa, name sütununa göre karşılaştırılacak bir dizedir.

Seçilmemişse, SQL bunu yalnızca başka bir sütun adı olarak ele alır.

şununla aktivitesinde yapabilirsiniz:

db.deleteLabel ("'" + label + "'"); 

ama yardımcı işlevi değiştirmek için süpürge olabilir: Eğer bir şeyler yapmak isteyebilirsiniz gibi görünüyor beri

db.delete (TABLE_LABELS, KEY_NAME + "='" + label + "'", null); 

Orada belirli bir noktada etiketsiz etiket (şu anda açıklanmış olan ContentValues şeyler).

+1

Çok teşekkür ederim, şimdi çalışıyor. – Tayseer

+0

Eğer yapabilirseniz bunu kontrol edebilir misiniz: http://stackoverflow.com/questions/13178056/android-get-data-from-another-activity – Tayseer

+0

'' zaman öldürücüdür – playmaker420