#define SQLHANDLE SQLHENV
#define SQL_NULL_HANDLE 0
#define SQL_HANDLE_STMT 1
#define SQL_HANDLE_DBC 2
#define SQL_HANDLE_ENV 3
#define SQL_NO_DATA SQL_NO_DATA_FOUND
#ifndef SQL_SUCCEEDED
#define SQL_SUCCEEDED(rc) (((rc)&(~1))==0)
#endif
#undef SQLSetEnvAttr
#define SQLSetEnvAttr(henv, Attribute, Value, StringLength) (0)
#undef SQLAllocHandle
#define SQLAllocHandle(type, parent, hndl) \
( (type == SQL_HANDLE_STMT) ? SQLAllocStmt(parent, hndl) \
: (type == SQL_HANDLE_ENV) ? SQLAllocEnv(hndl) \
: SQLAllocConnect(parent, hndl) \
)
#undef SQLFreeHandle
#define SQLFreeHandle(type, hndl) \
( (type == SQL_HANDLE_STMT) ? SQLFreeStmt(hndl, SQL_DROP) \
: (type == SQL_HANDLE_ENV) ? SQLFreeEnv(hndl) \
: SQLFreeConnect(hndl) \
)
#undef SQLGetDiagRec
#define SQLGetDiagRec(type, h, i, state, native, buffer, bufsize, reslen) \
SQLError( (type == SQL_HANDLE_ENV) ? h : NULL, \
(type == SQL_HANDLE_DBC) ? h : NULL, \
(type == SQL_HANDLE_STMT) ? h : NULL, \
state, native, buffer, bufsize, reslen)
#undef SQLCloseCursor
#define SQLCloseCursor(stmt) SQLFreeStmt(stmt, SQL_CLOSE)
#undef SQLGetConnectAttr
#define SQLGetConnectAttr(hdbc, fOption, ValuePtr, BufferLength, NULL) \
SQLGetConnectOption(hdbc, fOption, ValuePtr)
#undef SQLSetConnectAttr
#define SQLSetConnectAttr(hdbc, fOption, ValuePtr, BufferLength) \
SQLSetConnectOption(hdbc, fOption, (SQLUINTEGER) ValuePtr)
#undef SQLSetStmtAttr
#define SQLSetStmtAttr(hstmt, fOption, ValuePtr, BufferLength) (0); return APR_ENOTIMPL;
#undef SQLEndTran
#define SQLEndTran(hType, hdbc,type) SQLTransact(henv, hdbc, type)
#undef SQLFetchScroll
#define SQLFetchScroll(stmt, orient, rownum) (0); return APR_ENOTIMPL;
#define SQL_DESC_TYPE SQL_COLUMN_TYPE
#define SQL_DESC_CONCISE_TYPE SQL_COLUMN_TYPE
#define SQL_DESC_DISPLAY_SIZE SQL_COLUMN_DISPLAY_SIZE
#define SQL_DESC_OCTET_LENGTH SQL_COLUMN_LENGTH
#define SQL_DESC_UNSIGNED SQL_COLUMN_UNSIGNED
#undef SQLColAttribute
#define SQLColAttribute(s, c, f, a, l, m, n) SQLColAttributes(s, c, f, a, l, m, n)
#define SQL_ATTR_ACCESS_MODE SQL_ACCESS_MODE
#define SQL_ATTR_AUTOCOMMIT SQL_AUTOCOMMIT
#define SQL_ATTR_CONNECTION_TIMEOUT 113
#define SQL_ATTR_CURRENT_CATALOG SQL_CURRENT_QUALIFIER
#define SQL_ATTR_DISCONNECT_BEHAVIOR 114
#define SQL_ATTR_ENLIST_IN_DTC 1207
#define SQL_ATTR_ENLIST_IN_XA 1208
#define SQL_ATTR_CONNECTION_DEAD 1209
#define SQL_CD_TRUE 1L
#define SQL_CD_FALSE 0L
#define SQL_ATTR_LOGIN_TIMEOUT SQL_LOGIN_TIMEOUT
#define SQL_ATTR_ODBC_CURSORS SQL_ODBC_CURSORS
#define SQL_ATTR_PACKET_SIZE SQL_PACKET_SIZE
#define SQL_ATTR_QUIET_MODE SQL_QUIET_MODE
#define SQL_ATTR_TRACE SQL_OPT_TRACE
#define SQL_ATTR_TRACEFILE SQL_OPT_TRACEFILE
#define SQL_ATTR_TRANSLATE_LIB SQL_TRANSLATE_DLL
#define SQL_ATTR_TRANSLATE_OPTION SQL_TRANSLATE_OPTION
#define SQL_ATTR_TXN_ISOLATION SQL_TXN_ISOLATION
#define SQL_ATTR_CURSOR_SCROLLABLE -1
#define SQL_C_SBIGINT (SQL_BIGINT+SQL_SIGNED_OFFSET)
#define SQL_C_UBIGINT (SQL_BIGINT+SQL_UNSIGNED_OFFSET)
#define SQL_FALSE 0
#define SQL_TRUE 1