From 63d9cbb434ec4f6e828083b99d638127cfce7a95 Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Thu, 24 Dec 2015 04:08:56 +0000 Subject: ODBC files prefixed with odbc- --- libodbcpp/odbc-connection.h | 56 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 libodbcpp/odbc-connection.h (limited to 'libodbcpp/odbc-connection.h') diff --git a/libodbcpp/odbc-connection.h b/libodbcpp/odbc-connection.h new file mode 100644 index 0000000..d927b70 --- /dev/null +++ b/libodbcpp/odbc-connection.h @@ -0,0 +1,56 @@ +#ifndef ODBC_CONNECTION_H +#define ODBC_CONNECTION_H + +#include +#include +#include "odbc-dsn.h" +#include "odbc-error.h" +#include + +namespace ODBC { + class Connection : public DB::Connection { + public: + Connection(const DSN& d); + Connection(const std::string & str); + ~Connection(); + SQLHENV env; + SQLHDBC conn; + + void finish() const; + int beginTx() const; + int commitTx() const; + int rollbackTx() const; + void abortTx() const; + bool txIsAborted() const; + bool inTx() const; + void ping() const; + std::string getAttrStr(SQLINTEGER) const; + SQLINTEGER getAttrInt(SQLINTEGER) const; + DB::BulkDeleteStyle bulkDeleteStyle() const; + DB::BulkUpdateStyle bulkUpdateStyle() const; + + DB::SelectCommand * newSelectCommand(const std::string & sql) const; + DB::ModifyCommand * newModifyCommand(const std::string & sql) const; + + void beginBulkUpload(const char *, const char *) const; + void endBulkUpload(const char *) const; + size_t bulkUploadData(const char *, size_t) const; + + private: + DB::BulkDeleteStyle thinkDelStyle; + DB::BulkUpdateStyle thinkUpdStyle; + + void connectPre(); + void connectPost(); + mutable unsigned int txDepth; + mutable bool txAborted; + }; + class ConnectionError : public DB::ConnectionError, public virtual Error { + public: + ConnectionError(RETCODE err, SQLSMALLINT handletype, SQLHANDLE handle, char const * stage); + ConnectionError(const ConnectionError &); + }; +} + +#endif + -- cgit v1.2.3