Update in sync with enterprise version.
[csql.git] / src / odbc / odbcCommon.h
blob5b16b23787c58b6e79756a1a483bbcd433ba059a
1 #ifndef _ODBC_COMMON_H_
2 #define _ODBC_COMMON_H_
4 //#define DEBUG 1
6 #include <stdio.h>
7 #include <stdlib.h>
8 #include <string.h>
9 #include <vector>
11 // SQL Standard headers
12 #include <sqlext.h>
14 // SQLAPI Interface
15 #include <AbsSqlStatement.h>
16 #include <Table.h>
18 // Forward Declaration
19 class CSqlOdbcEnv;
20 class CSqlOdbcDbc;
21 class CSqlOdbcStmt;
22 class CSqlOdbcDesc;
24 // ODBC internal headers
25 #include "odbcError.h"
26 #include "odbcEnv.h"
27 #include "odbcDbc.h"
28 #include "odbcDesc.h"
29 #include "odbcStmt.h"
31 // There is not equivalent mode in CSQL, should confirm. ??
32 #define ACCESSMODE_READ_ONLY 0
33 #define ACCESSMODE_READ_WRITE 1
35 // Is handle valid ?
36 SQLRETURN isValidHandle( SQLHANDLE hnd, SQLSMALLINT handleType );
38 // Is C type valid/supported ?
39 SQLRETURN isValidCType( SQLSMALLINT type );
41 // Is SQL type valid/supported ?
42 SQLRETURN isValidSQLType( SQLSMALLINT type );
44 // Type conversion functions
45 void copyFromOdbc(AbsSqlStatement *stmt, int paramNo, SQLUINTEGER destLen,
46 void *odbcData, SQLUINTEGER odbcLen, SQLSMALLINT type);
47 SQLINTEGER copyToOdbc(void *odbcData, SQLUINTEGER odbcLen,
48 void *sourceData, SQLUINTEGER sourceLen,SQLSMALLINT type,SQLSMALLINT apptype);
50 void getInputBuffer(void **buffer,SQLSMALLINT type,SQLUINTEGER length);
52 DataType getCSqlType( SQLSMALLINT type );
54 SQLSMALLINT getSQLType( DataType type );
56 SQLCHAR *getSQLTypeName( SQLSMALLINT type );
57 bool isFunctionSupports(SQLUSMALLINT type);
58 #endif