00001 #include <exception> 00002 #include <string> 00003 #include <sqlite3.h> 00004 00005 namespace sqlite 00006 { 00007 00008 class SqliteException : public std::exception 00009 { 00010 public: 00011 SqliteException(sqlite3* db); 00012 SqliteException(int code, sqlite3* db); 00013 SqliteException(int code, std::string const& msg); 00014 virtual ~SqliteException() throw(); 00015 virtual const char* what() const throw(); 00016 private: 00017 std::string msg; 00018 int code; 00019 }; 00020 00021 void throw_sqlite_status(int code, sqlite3* db); 00022 00023 }