android中的SQLiteException和SQLException之间的区别?

时间:2014-04-24 10:33:42

标签: android sqlite android-sqlite sqlexception

我在android中使用 SQLite 数据库

在我的代码中,无论我使用SQLite Adapter类进行rawQueryexecSQL等数据库操作,我通常都使用try-catch语句。

例如---

try
{
    //Database Operations using rawQuery or execSQL..
}
catch(SQLiteException e)
{
   e.printStackTrace();
}

但显然SQLiteExceptionSQLException的子类。

注意:

有两种类型的 SQLException

android.database.SQLExceptionjava.sql.SQLException

我说的是前者。

那么为什么我们不能只使用---

    try
    {
        //Database Operations using rawQuery or execSQL..
    }
    catch(SQLException e)
    {
       e.printStackTrace();
    }

SQLiteExceptionSQLException之间的遗传或谎言,如果我们只使用SQLiteException只能抓住的SQLException,则可以保持未被捕获状态?

1 个答案:

答案 0 :(得分:0)

<强>的SQLException

  

异常表示SQL解析或错误   执行。

java.lang.Object
   ↳    java.lang.Throwable
       ↳    java.lang.Exception
           ↳    java.lang.RuntimeException
               ↳    android.database.SQLException

链接:http://developer.android.com/reference/android/database/SQLException.html

<强> SQLiteException

  

SQLite异常,表示SQL解析出错   或执行。

java.lang.Object
   ↳    java.lang.Throwable
       ↳    java.lang.Exception
           ↳    java.lang.RuntimeException
               ↳    android.database.SQLException
                   ↳    android.database.sqlite.SQLiteException

链接:http://developer.android.com/reference/android/database/sqlite/SQLiteException.html


SQLiteException是特定的sqlite错误,而SQLException可能不是。