#ifndef __SQLSET_H #define __SQLSET_H #ifndef __RECSET_H #include #endif /////////////////////////////////////////////////////////// // TSQL_recordset /////////////////////////////////////////////////////////// class TSQL_recordset : public TRecordset { TString _sql; TRecnotype _first_row, _pagesize, _items, _current_row; TArray _column; TArray _page; protected: virtual void reset(); void parsed_sql_text(TString& sql) const; public: // TRecordset virtual void requery(); virtual TRecnotype items() const; virtual bool move_to(TRecnotype pos); virtual TRecnotype current_row() const { return _current_row; } virtual unsigned int columns() const; virtual const TRecordset_column_info& column_info(unsigned int c) const; virtual const TVariant& get(unsigned int column) const; virtual const TString& query_text() const { return _sql; } virtual const TString& driver_version() const; public: void set(const char* sql); // Internal use only virtual int on_get_items(int argc, char** values, char** columns); virtual int on_get_rows(int argc, char** values); const TArray* row(TRecnotype n); TSQL_recordset(const char* sql); virtual ~TSQL_recordset() { } }; #endif