2012-05-22 138 views
0

我使用Table Adapter Screen創建一個佈局,以表格的形式顯示來自數據庫的數據。我在佈局的每一行添加了一個按鈕字段以刪除該特定的行。 下面我附上刪除代碼。它顯示異常:SQL邏輯錯誤或缺少數據庫。 我的查詢有什麼不對嗎? 在創建,表格,插入,回覆等數據庫功能沒有問題。 請幫助我在這裏。 它在.prepare();聲明。從SQLite數據庫刪除行:Blackberry

public void deletetarget(String cname) { 

     Statement deletetarget = null; 

     try 

     { 
      URI myURI = URI.create("file:///store/home/Databases/SampleDatabase.db"); 

      d.close(); 
      d = DatabaseFactory.open(myURI); 

    deletetarget = d.createStatement("DELETE FROM targetCity WHERE KEY_CITYNAME   ='"+cname+"'"); 

      deletetarget.prepare(); 

       deletetarget.execute(); 
      deletetarget.close(); 
      d.close(); 
     } 

     catch (Exception e) 

     {   

      System.out.println("Delete Statement Exception "+e); 
      e.printStackTrace(); 
     } 
    } 
+0

I M傳遞查詢的名稱,它是從選定的行獲得。 – optimus

+0

目前你有沒有調試過你的代碼? – BBdev

+0

異常:SQL邏輯錯誤或缺少數據庫 – optimus

回答

1

在創建URI之前關閉數據庫。

更改您的查詢寫這樣的...

deletetarget = d.createStatement("DELETE FROM targetCity WHERE KEY_CITYNAME = '"+cname+"'"); 
+0

BBdev ....與我的回覆相比,我的代碼沒有區別.....查詢中的空間僅僅是因爲我在粘貼時在下一行寫了代碼它在這裏......它正確寫入插件中。 – optimus

+0

okkk然後在創建你的uri之前檢查數據庫是否關閉,如果沒有則關閉它。然後嘗試創建URI和全部。我已經更新了答案。 – BBdev

+0

即時通訊已經這樣做..............準備()方法被調用時發生錯誤 – optimus