使用ExecuteNonQuery()时从SQLite检索错误代码

时间:2012-06-27 09:21:21

标签: c# sqlite system.data.sqlite executenonquery

在我的C#项目中,我正在使用从CodeProject下载的System.Data.SQLite.dll

我的问题是根据标题 - 如何在调用SqliteCommand.ExecuteNonQuery()函数后获取错误代码?

SQLITE_CONSTRAINT, SQLITE_BUSY, SQLITE_LOCKED之类的错误代码,如here所示。

3 个答案:

答案 0 :(得分:3)

使用Exception.StackTrace或SQLiteException.ErrorCode

try
{

}
catch(SQLiteException ex)
{
    string code = ex.ErrorCode;
}

答案 1 :(得分:1)

如果您正在.NET中进行开发,我将添加此内容以帮助其他人。使用

SQLiteErrorCode枚举以测试结果,强制转换为ErrorCode:

try
{

}
catch(SQLiteException ex)
{
    SQLiteErrorCode sqlLiteError= (SQLiteErrorCode)ex.ErrorCode;

    //Do whatever logic necessary based of the error type
}

答案 2 :(得分:0)

好问题。 System.Exception没有名为“.ErrorCode”的成员

    Catch Ex As SQLiteException
        E = Ex.ResultCode
        Return E
    End Try