29 #ifndef CORE_DATABASEMANAGER_DATABASEMANAGER_H
30 #define CORE_DATABASEMANAGER_DATABASEMANAGER_H
32 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
37 #include <boost/filesystem.hpp>
38 #include <boost/shared_ptr.hpp>
39 #include <boost/any.hpp>
40 #include <boost/noncopyable.hpp>
50 typedef std::vector< std::map< std::string, boost::any > >
ResultSet;
67 bool run_sql_statement(
const std::string& sql_str,
ResultSet& results, std::string& error );
72 bool run_sql_statement(
const std::string& sql_str, std::string& error );
76 bool run_sql_script(
const std::string& sql_str, std::string& error );
80 bool save_database(
const boost::filesystem::path& database_file, std::string& error );
84 bool load_database(
const boost::filesystem::path& database_file, std::string& error );
88 long long get_last_insert_rowid();
93 bool get_column_metadata(
const std::string& table_name,
const std::string& column_name,
94 char const** data_type = 0,
char const** coll_seq = 0,
95 int* not_null = 0,
int* primary_key = 0,
int* auto_inc = 0 );
98 boost::shared_ptr< class DatabaseManagerPrivate > private_;
103 static std::string EscapeQuotes(
const std::string& str );
#define SCISHARE
Definition: share.h:39
boost::shared_ptr< class DatabaseManager > DatabaseManagerHandle
Definition: DatabaseManager.h:53
Definition: DatabaseManager.h:55
std::vector< std::map< std::string, boost::any > > ResultSet
Definition: DatabaseManager.h:50
boost::shared_ptr< ResultSet > ResultSetHandle
Definition: DatabaseManager.h:51