2014-10-07 27 views
-1

我觸摸按鈕,什麼也沒有發生。SQLITE無法刪除簡單的行

它只是顯示文字和我想刪除的行仍然在表中。

public void deleteword (View view) { 
    db=openOrCreateDatabase("MyDB1",MODE_PRIVATE, null); 
    EditText deleteword=(EditText)findViewById(R.id.deleteword);   
    String delete = deleteword.getText().toString();   
    db.execSQL("DELETE FROM Word WHERE uword='"+delete+"'"); 
    Toast toast = Toast.makeText(getApplicationContext(), delete, Toast.LENGTH_SHORT); 
    toast.show(); 
} 
+0

你確定這個詞是如何出現在數據庫?空白將會把它扔掉。例如'在哪裏uword ='[空間] foo''完全不同於'where'uword ='foo'' – 2014-10-07 19:30:18

+0

沒有任何空格,當我刪除Toast,重啓應用程序並觸摸按鈕時,Eclipse在Log中沒有寫任何東西命令db.execSQL(「DELETE FROM Word WHERE uword ='」+ delete +「'」);是沒有答案的 – 2014-10-07 19:38:24

+0

需要考慮的事情...是否有交易或提交聲明?你將不得不自己閱讀這個。但是你需要檢查是否有某個事務/提交語句在某處發生。也許有一種方法可以設置你的sqlite驅動程序自動提交每一條語句。 – hooknc 2014-10-07 19:58:57

回答