2012-09-27 63 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