campo-sirio/include/odbcrset.h
bonazzi 8a7486d866 Patch level : 10.0 270
Files correlati     :  ca2.exe ca2500a.msk
Ricompilazione Demo : [ ]
Commento            :

Aggiunto programma di invio a Board.
Ripristinate funzioni di visualizzazione e salvataggio ripartizione temporale delle righe nella modifica movimenti analitici

git-svn-id: svn://10.65.10.50/branches/R_10_00@23201 c028cbd2-c16b-5b4b-a496-9718f37d4682
2016-06-24 16:36:18 +00:00

76 lines
1.9 KiB
C++
Executable File

#ifndef __ODBCRSET_H
#define __ODBCRSET_H
#ifndef __RECSET_H
#include <recset.h>
#endif
enum TODBC_driver {
ODBC_generic,
ODBC_mssql,
ODBC_access,
ODBC_mysql};
class TODBC_recordset : public TRecordset
{
TString _dsn, _usr, _pwd, _dir;
TString _sql;
TRecnotype _first_row, _pagesize, _items, _current_row, _cursor_pos;
TArray _page;
TArray _column;
bool _columns_loaded;
bool _freezed;
bool _loaded;
protected:
XVT_ODBC connection() const;
void reset();
const TArray* row(TRecnotype n);
virtual void parsed_text(TString& sql) const;
TODBC_driver _driver;
public:
virtual TRecnotype items() const;
virtual unsigned int columns() const;
virtual const TRecordset_column_info& column_info(unsigned int c) const;
virtual bool move_to(TRecnotype pos);
virtual TRecnotype current_row() const;
virtual void requery();
virtual const TString& query_text() const;
virtual const TString& driver_version() const;
virtual void freeze(const bool on) { _freezed = on; }
virtual const TVariant& get(unsigned int c) const;
virtual const TVariant& get(const char* name) const;
// Callbacks
int on_get_items(int argc, char** values, char** columns);
int on_get_columns(int argc, char** values, char** columns);
int on_get_rows(int argc, char** values, char** columns);
void set(const char* sql);
long exec(const char* sql);
long begin();
long commit();
bool connect(const char* dsn, const char* usr = "", const char* pwd = "", const char* dir = "");
bool set_log_file(const char* fn);
const TODBC_driver driver() { return _driver; }
int compare_key(const TISAM_recordset& dbfset);
int compare_rec(const TISAM_recordset& dbfset);
int create_rec(const TISAM_recordset& dbfset);
void update_rec(const TISAM_recordset& dbfset);
void remove_rec(const TISAM_recordset& dbfset);
const TString& dsn() const { return _dsn; }
TODBC_recordset(const char* sql, const bool freezed = false);
virtual ~TODBC_recordset();
};
#endif