00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _SWORD_DB_DBQUERY_
00020 #define _SWORD_DB_DBQUERY_
00021
00022 #include "sword/base.Variant.h"
00023 #include "sword/time.Time.h"
00024
00025 namespace sword {
00026
00027 class SWORDDECL DbQuery {
00028 public:
00029 DbQuery() {}
00030 virtual ~DbQuery() {}
00031
00033
00044 virtual bool exec(const std::string& sql, bool reportWarningsAsErrors = true) = 0;
00045
00047
00051 virtual bool nextRow() = 0;
00052
00054
00058 virtual bool nextSet() = 0;
00059
00061 virtual int columns() = 0;
00062
00064
00065 virtual int getInt(word column);
00066
00068
00071 virtual int getInt(const std::string& column);
00072
00074
00075 virtual double getDouble(word column);
00076
00078
00081 virtual double getDouble(const std::string& column);
00082
00084
00085 virtual std::string getString(word column);
00086
00088
00091 virtual std::string getString(const std::string& column);
00092
00094
00095 virtual Time getTime(word column);
00096
00098
00101 virtual Time getTime(const std::string& column);
00102
00104
00105 virtual Variant get(word column) = 0;
00106
00108
00111 virtual Variant get(const std::string& column) = 0;
00112 };
00113
00114 }
00115
00116 #endif // _SWORD_DB_DBQUERY_