- Reset() resets prepared statement object back to its initial state.
- Clear() clears all host parameters to null.
Change-Id: I91d7bb0e5a29bd23924bbd9bbf9cec9b9243dfb0
Signed-off-by: Sangyoon Jang <jeremy.jang@samsung.com>
virtual int GetColumnInt(int pos) const = 0;
virtual std::string GetColumnString(int pos) const = 0;
+ virtual bool Reset() = 0;
+ virtual void Clear() = 0;
+
protected:
SQLConnection* sql_conn_;
};
return std::string(val);
}
+bool SQLiteStatement::Reset() {
+ int r = sqlite3_reset(stmt_);
+ if (r != SQLITE_OK) {
+ LOG(ERROR) << "sqlite3_reset failed: " << GetErrorMessage();
+ return false;
+ }
+ return true;
+}
+
+void SQLiteStatement::Clear() {
+ sqlite3_clear_bindings(stmt_);
+}
+
std::string SQLiteStatement::GetErrorMessage() const {
return sqlite3_errmsg(sqlite3_db_handle(stmt_));
}
int GetColumnInt(int pos) const override;
std::string GetColumnString(int pos) const override;
+ bool Reset() override;
+ void Clear() override;
+
private:
std::string GetErrorMessage() const;