public bool Read() { bool bContinue = false; SQLiteField field; SQLiteDatabase.Result exitCode = SQLiteDatabase.sqlite3_step(this.hStmt); if (exitCode == SQLiteDatabase.Result.SQLITE_DONE) { //return false; } else if (exitCode == SQLiteDatabase.Result.SQLITE_ROW) { int columns = SQLiteDatabase.sqlite3_column_count(hStmt); Fields.Clear(); for (int column = 0; column < columns; column++) { field = new SQLiteField(hStmt); field.column = column; field.name = Marshal.PtrToStringAnsi(SQLiteDatabase.sqlite3_column_name(hStmt, column)); field.Read(); Fields.Add(field.name, field); } bContinue = true; } else { throw new AmazonClientException(exitCode + "\n" + SQLiteDatabase.sqlite3_errmsg(db.hDb)); } return(bContinue); }
public SQLiteStatement Step() { SQLiteDatabase.Result eResult = SQLiteDatabase.sqlite3_step(this.hStmt); if (eResult != SQLiteDatabase.Result.SQLITE_DONE) { throw new AmazonClientException(db.ErrorMsg()); } return(this); }
internal SQLiteStatement(SQLiteDatabase db, string query) { this.db = db; SQLiteDatabase.Result exitCode = SQLiteDatabase.sqlite3_prepare_v2(db.hDb, query, -1, out hStmt, IntPtr.Zero); if (exitCode != SQLiteDatabase.Result.SQLITE_OK) { throw new AmazonClientException(exitCode + " - " + db.ErrorMsg()); } }