コード例 #1
0
ファイル: SqliteContext.cs プロジェクト: ellisnet/SimpleAdo
 /// <summary> Sqlite 3 step. </summary>
 /// <exception cref="ArgumentNullException"> Thrown when one or more required arguments are null. </exception>
 /// <param name="stmt"> The statement. </param>
 /// <returns> A SqliteResultCode. </returns>
 internal SqliteResultCode sqlite3_step(SqliteStatementHandle stmt)
 {
     if (stmt == null)
     {
         throw new ArgumentNullException(nameof(stmt));
     }
     lock (_stepLocker)
     {
         stmt.CheckMaintenanceMode();
         return((SqliteResultCode)DbProviderOperations.sqlite3_step(stmt.Statement));
     }
 }
コード例 #2
0
ファイル: SqliteContext.cs プロジェクト: ellisnet/SimpleAdo
 /// <summary> Sqlite 3 step return rowid. </summary>
 /// <exception cref="ArgumentNullException"> Thrown when one or more required arguments are null. </exception>
 /// <param name="db"> The database. </param>
 /// <param name="stmt"> The statement. </param>
 /// <param name="code"> [out] The code. </param>
 /// <returns> A long. </returns>
 internal long sqlite3_step_return_rowid(SqliteDatabaseHandle db, SqliteStatementHandle stmt, out SqliteResultCode code)
 {
     if (db == null)
     {
         throw new ArgumentNullException(nameof(db));
     }
     if (stmt == null)
     {
         throw new ArgumentNullException(nameof(stmt));
     }
     lock (_stepLocker) {
         stmt.CheckMaintenanceMode();
         code = (SqliteResultCode)DbProviderOperations.sqlite3_step(stmt.Statement);
         return(code.IsSuccessCode()
             ? DbProviderOperations.sqlite3_last_insert_rowid(stmt.ForMaintenance ? db.MaintenanceDb : db.Db)
             : -1);
     }
 }