3 #ifndef __ARC_DBINTERFACE_H__ 4 #define __ARC_DBINTERFACE_H__ 31 virtual bool connect(std::string& dbname, std::string& user,
32 std::string& password) = 0;
36 virtual void close() = 0;
43 virtual bool enable_ssl(
const std::string& keyfile =
"",
const std::string& certfile =
"",
44 const std::string& cafile =
"",
const std::string& capath =
"") = 0;
49 typedef std::vector<std::vector<std::string> > QueryArrayResult;
50 typedef std::vector<std::string> QueryRowResult;
73 virtual bool execute(
const std::string& sqlstr) = 0;
77 virtual QueryRowResult
get_row(
int row_number)
const = 0;
81 virtual QueryRowResult
get_row()
const = 0;
87 virtual std::string
get_row_field(
int row_number, std::string& field_name) = 0;
96 virtual bool get_array(std::string& sqlstr, QueryArrayResult& result, std::vector<std::string>& arguments) = 0;
Arc namespace contains all core ARC classes.
Definition: ArcConfig.h:11
Query(Database *db)
Constructor.
Definition: DBInterface.h:61
Class representing a database query.
Definition: DBInterface.h:54
Database(const Database &other)
Copy constructor.
Definition: DBInterface.h:22
virtual bool enable_ssl(const std::string &keyfile="", const std::string &certfile="", const std::string &cafile="", const std::string &capath="")=0
Enable ssl communication for the connection.
virtual int get_num_rows()=0
Get the row number in the query result.
virtual std::string get_row_field(int row_number, std::string &field_name)=0
Get the value of one specific field in one specific row.
Database()
Default constructor.
Definition: DBInterface.h:18
Interface for calling database client library.
Definition: DBInterface.h:15
virtual bool shutdown()=0
Ask database server to shutdown.
virtual bool isconnected() const =0
Get the connection status.
virtual bool get_array(std::string &sqlstr, QueryArrayResult &result, std::vector< std::string > &arguments)=0
Query the database by using some parameters into sql sentence.
virtual int get_num_colums()=0
Get the column number in the query result.
virtual bool execute(const std::string &sqlstr)=0
Execute the query.
virtual ~Query()
Deconstructor.
Definition: DBInterface.h:64
virtual void close()=0
Close the connection with database server.
Database(std::string &server, int port)
Constructor which uses the server's name(or IP address) and port as parameters.
Definition: DBInterface.h:20
virtual bool connect(std::string &dbname, std::string &user, std::string &password)=0
Do connection with database server.
Query()
Default constructor.
Definition: DBInterface.h:57
virtual QueryRowResult get_row() const =0
Get the value of one row in the query result.
virtual ~Database()
Deconstructor.
Definition: DBInterface.h:24