22 #ifndef __ODBCXX_CONNECTION_H
23 #define __ODBCXX_CONNECTION_H
25 #include <odbc++/setup.h>
26 #include <odbc++/types.h>
27 #include <odbc++/errorhandler.h>
32 class DatabaseMetaData;
34 class PreparedStatement;
35 class CallableStatement;
42 friend class DriverInfo;
52 DriverInfo* driverInfo_;
55 SQLUINTEGER _getUIntegerOption(SQLINTEGER optnum);
56 ODBCXX_STRING _getStringOption(SQLINTEGER optnum);
57 void _setIntegerOption(SQLINTEGER optnum, SQLINTEGER value);
58 void _setUIntegerOption(SQLINTEGER optnum, SQLUINTEGER value);
59 void _setStringOption(SQLINTEGER optnum,
const ODBCXX_STRING& value);
61 SQLHSTMT _allocStmt();
66 void _connect(
const ODBCXX_STRING& dsn,
67 const ODBCXX_STRING& user,
68 const ODBCXX_STRING& password);
70 void _connect(
const ODBCXX_STRING& connectString, SQLUSMALLINT drvcompl = SQL_DRIVER_COMPLETE);
73 void _unregisterStatement(
Statement* stmt);
75 const DriverInfo* _getDriverInfo()
const {
92 TRANSACTION_SERIALIZABLE
104 void setAutoCommit(
bool autoCommit);
113 ODBCXX_STRING getCatalog();
116 void setCatalog(
const ODBCXX_STRING& catalog);
119 TransactionIsolation getTransactionIsolation();
122 void setTransactionIsolation(TransactionIsolation isolation);
128 void setReadOnly(
bool readOnly);
135 void setTrace(
bool on);
138 ODBCXX_STRING getTraceFile();
141 void setTraceFile(
const ODBCXX_STRING& s);
171 Statement* createStatement(
int resultSetType,
172 int resultSetConcurrency);
199 int resultSetConcurrency);
225 int resultSetConcurrency);
230 ODBCXX_STRING nativeSQL(
const ODBCXX_STRING& sql);
238 #endif // __ODBCXX_CONNECTION_H