1 #ifndef _sqlite3recordset_
\r
2 #define _sqlite3recordset_
\r
4 #include "sqlite3db.h"
\r
13 Recordset(char **rs, int rows, int cols);
\r
14 virtual ~Recordset();
\r
16 virtual void Free() { if(m_rs) { sqlite3_free_table(m_rs); m_rs=NULL; } }
\r
17 virtual const bool Empty() const { return (m_rs==NULL || m_rows==0) ? true : false ; }
\r
19 virtual const int Count() const { return m_rows; }
\r
20 virtual const bool AtBeginning() const { return m_currentrow==0; }
\r
21 virtual const bool AtEnd() const { return m_currentrow>=m_rows; }
\r
22 virtual const int Cols() const { return m_cols; }
\r
24 virtual const bool Next() { if(m_currentrow<m_rows) { m_currentrow++; return true; } else { return false; } }
\r
25 virtual const bool Previous() { if(m_currentrow-1>=0) { m_currentrow--; return true; } else { return false; } }
\r
26 virtual void Beginning() { m_currentrow=0; }
\r
28 virtual const char *Get(const int row, const int field);
\r
29 virtual const char *GetField(const int field);
\r
30 virtual const int GetInt(const int field);
\r
31 virtual const double GetDouble(const int field);
\r
32 virtual const char *GetColumnName(const int column);
\r
34 virtual void Open(const std::string &sql, DB *db);
\r
42 }; // class Recordset
\r
46 #endif // _sqlite3recordset_
\r