2012-09-27 61 views
4

爲了將數據插入到Android的名爲MyTable我使用的查詢SQLite表:檢查查詢成功SQLite中爲Android

db.execSQL("INSERT INTO MYTABLE VALUES('','"+name+"',NOW());"); 

我要檢查該查詢是否成功插入到表或不。 在PHP(與MySQL),你可以很容易地做到

if($result) 
    echo 'success'; 
else   
    echo 'not inserted'; 

但什麼是機器人(使用SQLite)等價代碼來檢查查詢是否已成功 沒有任何錯誤執行?

回答

9

根據文檔execSQL拋出一個SQLException所以我認爲你最好的選擇是用try catch來包圍你的execSQL調用。然後,您可以處理捕捉中發生的任何錯誤。所以像這樣的東西是你想要的

try { 
    db.execSQL("INSERT INTO MYTABLE VALUES('','"+name+"',NOW());"); 
} catch (SQLException e) { 
    ...deal with error 
} 
+0

似乎是個好主意,我可以在catch語句中使用return來停止程序的進一步執行..謝謝。 – paul

+0

@paul - 任何時間!很高興我能幫上忙 :) – Erik