关于它所说的文件 execSQL(String sql)抛出:SQLException - 如果SQL字符串无效
但它不在android studio中,任何人都有这个问题?
public class test extends SQLiteOpenHelper {
public test(Context context, String name, CursorFactory factory, int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
try {
db.execSQL("some sql code");
}
catch(SQLException e){
//do something
}
}
//some other overrides
}
这会给我一个错误错误,因为execSQL()没有抛出异常。当检查它的声明时我得到了
public void execSQL(String sql) {
executeSql(sql, null);
}
所以我的问题是在文档中,甚至在Eclipse上我确信它会返回一个SQLException但是在Android Studio上却没有。
答案 0 :(得分:4)
execSQL()
可以抛出android.database.SQLException
。如果您无意中导入了Android Studio首次提出的java.sql.SQLException
,则会收到错误
异常' java.sql.SQLException'永远不会抛出相应的try块
要解决此问题,请改为导入android.database.SQLException
。