00001
00035 #ifndef SQLDBC_C_H
00036 #define SQLDBC_C_H
00037
00044 #ifdef SQLDBC_FEATURE_TRACEOPTION_OFF
00045 #undef SQLDBC_FEATURE_TRACEOPTION
00046 #else
00047 #define SQLDBC_FEATURE_TRACEOPTION
00048 #endif
00049
00050 #include "SQLDBC_Types.h"
00051
00052 #ifdef __cplusplus
00053 extern "C" {
00054 #endif
00055
00059 #define SQLDBC_CHeaderVersion "SQLDBC_C.H 7.5.0 BUILD 034-123-118-234"
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070 #ifndef BUILD_INTERFACE_RUNTIME
00071 typedef struct SQLDBC_IRuntime SQLDBC_IRuntime;
00072 #endif
00073
00074 #ifdef WIN32
00075 #define SQLDBC_DLLEXPORT __declspec(dllexport)
00076 #else
00077 #define SQLDBC_DLLEXPORT
00078 #endif
00079
00080 #ifndef BUILD_INTERFACE_RUNTIME
00081 typedef struct SQLDBC_Statement SQLDBC_Statement;
00082 #endif
00083
00087 #ifndef BUILD_INTERFACE_RUNTIME
00088 typedef struct SQLDBC_ErrorHndl SQLDBC_ErrorHndl;
00089 #endif
00090
00096 SQLDBC_DLLEXPORT
00097 SQLDBC_Int4 SQLDBC_ErrorHndl_getErrorCode(SQLDBC_ErrorHndl *hdl);
00098
00104 SQLDBC_DLLEXPORT
00105 char* SQLDBC_ErrorHndl_getSQLState(SQLDBC_ErrorHndl* hdl);
00106
00113 SQLDBC_DLLEXPORT
00114 char * SQLDBC_ErrorHndl_getErrorText(SQLDBC_ErrorHndl* hdl);
00115
00116
00125 #ifndef BUILD_INTERFACE_RUNTIME
00126 typedef struct SQLDBC_SQLWarning SQLDBC_SQLWarning;
00127 #endif
00128
00134 SQLDBC_DLLEXPORT
00135 SQLDBC_SQLWarning* SQLDBC_SQLWarning_getNextWarning(SQLDBC_SQLWarning* hdl);
00136
00142 SQLDBC_DLLEXPORT
00143 SQLDBC_SQLWarningCode SQLDBC_SQLWarning_getWarningCode(SQLDBC_SQLWarning* hdl);
00144
00145
00151 #ifndef BUILD_INTERFACE_RUNTIME
00152 typedef struct SQLDBC_LOB SQLDBC_LOB;
00153 #endif
00154
00155 SQLDBC_DLLEXPORT SQLDBC_LOB* SQLDBC_LOB_new_SQLDBC_LOB();
00156
00157 SQLDBC_DLLEXPORT void SQLDBC_LOB_delete_SQLDBC_LOB(SQLDBC_LOB *lob);
00171 SQLDBC_DLLEXPORT SQLDBC_Retcode SQLDBC_LOB_putData(SQLDBC_LOB* hdl, void *paramAddr, SQLDBC_Length *paramLengthIndicator);
00172
00178 SQLDBC_DLLEXPORT SQLDBC_Retcode SQLDBC_LOB_close(SQLDBC_LOB* hdl);
00179
00180
00219 SQLDBC_DLLEXPORT SQLDBC_Retcode SQLDBC_LOB_getData(SQLDBC_LOB *hdl,
00220 void *paramAddr,
00221 SQLDBC_Length *LengthIndicator,
00222 SQLDBC_Length Size,
00223 SQLDBC_Bool Terminate);
00224
00266
00267 SQLDBC_DLLEXPORT SQLDBC_Retcode SQLDBC_LOB_getDataByPos(SQLDBC_LOB* hdl,
00268 void *paramAddr,
00269 SQLDBC_Length *LengthIndicator,
00270 SQLDBC_Length Size,
00271 SQLDBC_Length position,
00272 SQLDBC_Bool Terminate);
00273
00283 SQLDBC_DLLEXPORT SQLDBC_Length SQLDBC_LOB_getLength(SQLDBC_LOB *hdl);
00284
00292 SQLDBC_DLLEXPORT SQLDBC_Length SQLDBC_LOB_getPosition(SQLDBC_LOB* hdl);
00293
00294
00306 SQLDBC_DLLEXPORT SQLDBC_Length SQLDBC_LOB_getPreferredDataSize(SQLDBC_LOB* hdl);
00307
00308
00313 #ifndef BUILD_INTERFACE_RUNTIME
00314 typedef struct SQLDBC_ParameterMetaData SQLDBC_ParameterMetaData;
00315 #endif
00316
00317 #ifndef __cplusplus
00318 typedef
00319 #endif
00320 enum ParameterNullBehavior {
00324 parameterNoNulls = 0,
00325
00329 parameterNullable = 1,
00330
00334 parameterNullableUnknown = 2
00335 }
00336 #ifndef __cplusplus
00337 ParameterNullBehavior
00338 #endif
00339 ;
00340
00341 #ifndef __cplusplus
00342 typedef
00343 #endif
00344 enum ParameterMode {
00345
00349 parameterModeUnknown = 0,
00350
00354 parameterModeIn = 1,
00355
00359 parameterModeInOut = 2,
00360
00364 parameterModeOut = 4
00365 }
00366 #ifndef __cplusplus
00367 ParameterMode
00368 #endif
00369 ;
00370
00379 SQLDBC_DLLEXPORT
00380 SQLDBC_Int2 SQLDBC_ParameterMetaData_getParameterCount(SQLDBC_ParameterMetaData* hdl);
00381
00401 SQLDBC_DLLEXPORT
00402 SQLDBC_Retcode SQLDBC_ParameterMetaData_getParameterName(SQLDBC_ParameterMetaData* hdl,
00403 SQLDBC_Int2 param,
00404 char *buffer,
00405 SQLDBC_StringEncodingType_Encoding encoding,
00406 SQLDBC_Length bufferSize,
00407 SQLDBC_Length *bufferLength);
00408
00417 SQLDBC_DLLEXPORT
00418 SQLDBC_SQLType SQLDBC_ParameterMetaData_getParameterType(SQLDBC_ParameterMetaData* hdl, SQLDBC_Int2 param);
00419
00432 SQLDBC_DLLEXPORT
00433 ParameterMode SQLDBC_ParameterMetaData_getParameterMode(SQLDBC_ParameterMetaData* hdl, SQLDBC_Int2 param);
00434
00447 SQLDBC_DLLEXPORT
00448 SQLDBC_Int4 SQLDBC_ParameterMetaData_getParameterLength(SQLDBC_ParameterMetaData* hdl, SQLDBC_Int2 param);
00449
00466 SQLDBC_DLLEXPORT
00467 SQLDBC_Int4 SQLDBC_ParameterMetaData_getPrecision(SQLDBC_ParameterMetaData* hdl, SQLDBC_Int2 param);
00468
00483 SQLDBC_DLLEXPORT
00484 SQLDBC_Int4 SQLDBC_ParameterMetaData_getScale(SQLDBC_ParameterMetaData* hdl, SQLDBC_Int2 param);
00485
00497 SQLDBC_DLLEXPORT
00498 SQLDBC_Int4 SQLDBC_ParameterMetaData_getPhysicalLength(SQLDBC_ParameterMetaData* hdl, SQLDBC_Int2 param);
00499
00513 SQLDBC_DLLEXPORT
00514 ParameterNullBehavior SQLDBC_ParameterMetaData_isNullable(SQLDBC_ParameterMetaData* hdl, SQLDBC_Int2 param);
00515
00516
00521 #ifndef BUILD_INTERFACE_RUNTIME
00522 typedef struct SQLDBC_ResultSetMetaData SQLDBC_ResultSetMetaData;
00523 #endif
00524 #ifndef __cplusplus
00525 typedef
00526 #endif
00527 enum ColumnNullBehavior {
00531 columnNoNulls = 0,
00532
00536 columnNullable = 1,
00537
00541 columnNullableUnknown = 2
00542 }
00543 #ifndef __cplusplus
00544 ColumnNullBehavior
00545 #endif
00546 ;
00554 SQLDBC_DLLEXPORT
00555 SQLDBC_Int2 SQLDBC_ResultSetMetaData_getColumnCount(SQLDBC_ResultSetMetaData* hdl);
00556
00578 SQLDBC_DLLEXPORT
00579 SQLDBC_Retcode SQLDBC_ResultSetMetaData_getColumnName(SQLDBC_ResultSetMetaData* hdl,
00580 SQLDBC_Int2 column,
00581 char *buffer,
00582 SQLDBC_StringEncodingType_Encoding encoding,
00583 SQLDBC_Length bufferSize,
00584 SQLDBC_Length *bufferLength);
00585
00586
00597 SQLDBC_DLLEXPORT
00598 SQLDBC_SQLType SQLDBC_ResultSetMetaData_getColumnType(SQLDBC_ResultSetMetaData* hdl, SQLDBC_Int2 column);
00599
00610 SQLDBC_DLLEXPORT
00611 SQLDBC_Int4 SQLDBC_ResultSetMetaData_getColumnLength(SQLDBC_ResultSetMetaData* hdl,SQLDBC_Int2 column);
00612
00627 SQLDBC_DLLEXPORT
00628 SQLDBC_Int4 SQLDBC_ResultSetMetaData_getPrecision(SQLDBC_ResultSetMetaData* hdl, SQLDBC_Int2 column);
00629
00644 SQLDBC_DLLEXPORT
00645 SQLDBC_Int4 SQLDBC_ResultSetMetaData_getScale(SQLDBC_ResultSetMetaData* hdl, SQLDBC_Int2 column);
00646
00658 SQLDBC_DLLEXPORT
00659 SQLDBC_Int4 SQLDBC_ResultSetMetaData_getPhysicalLength(SQLDBC_ResultSetMetaData* hdl, SQLDBC_Int2 column);
00660
00673 SQLDBC_DLLEXPORT
00674 ColumnNullBehavior SQLDBC_ResultSetMetaData_isNullable(SQLDBC_ResultSetMetaData* hdl, SQLDBC_Int2 column);
00675
00686 SQLDBC_DLLEXPORT
00687 SQLDBC_Bool SQLDBC_ResultSetMetaData_isWritable(SQLDBC_ResultSetMetaData* hdl, SQLDBC_Int2 column);
00688
00689
00701 #ifndef BUILD_INTERFACE_RUNTIME
00702 typedef struct SQLDBC_RowSet SQLDBC_RowSet;
00703 #endif
00704
00715
00716 SQLDBC_DLLEXPORT
00717 SQLDBC_ErrorHndl* SQLDBC_RowSet_getError(SQLDBC_RowSet* hdl);
00718
00723 SQLDBC_DLLEXPORT
00724 void SQLDBC_RowSet_clearError(SQLDBC_RowSet* hdl);
00725
00735
00736 SQLDBC_DLLEXPORT
00737 SQLDBC_SQLWarning* SQLDBC_RowSet_getWarning(SQLDBC_RowSet* hdl);
00738
00743 SQLDBC_DLLEXPORT
00744 void SQLDBC_RowSet_clearWarnings(SQLDBC_RowSet* hdl);
00745
00746
00758 SQLDBC_DLLEXPORT
00759 SQLDBC_Retcode SQLDBC_RowSet_setPos(SQLDBC_RowSet* hdl, SQLDBC_UInt4 pos);
00760
00769 SQLDBC_DLLEXPORT
00770 SQLDBC_Retcode SQLDBC_RowSet_fetch(SQLDBC_RowSet* hdl);
00771
00780 SQLDBC_DLLEXPORT
00781 SQLDBC_Int4 SQLDBC_RowSet_getRowsAffected(SQLDBC_RowSet* hdl);
00782
00796 SQLDBC_DLLEXPORT
00797 SQLDBC_Int4 * SQLDBC_RowSet_getRowStatus(SQLDBC_RowSet* hdl);
00798
00852 SQLDBC_DLLEXPORT
00853 SQLDBC_Retcode SQLDBC_RowSet_getObject(SQLDBC_RowSet* hdl,
00854 SQLDBC_Int4 Index,
00855 SQLDBC_HostType Type,
00856 void *paramAddr,
00857 SQLDBC_Length *LengthIndicator,
00858 SQLDBC_Length Size,
00859 SQLDBC_Bool Terminate);
00860
00917
00918 SQLDBC_DLLEXPORT
00919 SQLDBC_Retcode SQLDBC_RowSet_getObjectByPos(SQLDBC_RowSet* hdl,
00920 SQLDBC_Int4 Index,
00921 SQLDBC_HostType Type,
00922 void *paramAddr,
00923 SQLDBC_Length *LengthIndicator,
00924 SQLDBC_Length Size,
00925 SQLDBC_Length StartPos,
00926 SQLDBC_Bool Terminate);
00927
00928
00940 #ifndef BUILD_INTERFACE_RUNTIME
00941 typedef struct SQLDBC_UpdatableRowSet SQLDBC_UpdatableRowSet;
00942 #endif
00943
00954
00955 SQLDBC_DLLEXPORT
00956 SQLDBC_ErrorHndl* SQLDBC_UpdatableRowSet_getError(SQLDBC_UpdatableRowSet* hdl);
00957
00962 SQLDBC_DLLEXPORT
00963 void SQLDBC_UpdatableRowSet_clearError(SQLDBC_UpdatableRowSet* hdl);
00964
00974
00975 SQLDBC_DLLEXPORT
00976 SQLDBC_SQLWarning* SQLDBC_UpdatableRowSet_getWarning(SQLDBC_UpdatableRowSet* hdl);
00977
00982 SQLDBC_DLLEXPORT
00983 void SQLDBC_UpdatableRowSet_clearWarnings(SQLDBC_UpdatableRowSet* hdl);
00984
00985
00986
00998 SQLDBC_DLLEXPORT
00999 SQLDBC_Retcode SQLDBC_UpdatableRowSet_setPos(SQLDBC_UpdatableRowSet* hdl, SQLDBC_UInt4 pos);
01000
01009 SQLDBC_DLLEXPORT
01010 SQLDBC_Retcode SQLDBC_UpdatableRowSet_fetch(SQLDBC_UpdatableRowSet* hdl);
01011
01020 SQLDBC_DLLEXPORT
01021 SQLDBC_Int4 SQLDBC_UpdatableRowSet_getRowsAffected(SQLDBC_UpdatableRowSet* hdl);
01022
01036 SQLDBC_DLLEXPORT
01037 SQLDBC_Int4 * SQLDBC_UpdatableRowSet_getRowStatus(SQLDBC_UpdatableRowSet* hdl);
01038
01092 SQLDBC_DLLEXPORT
01093 SQLDBC_Retcode SQLDBC_UpdatableRowSet_getObject(SQLDBC_UpdatableRowSet* hdl,
01094 SQLDBC_Int4 Index,
01095 SQLDBC_HostType Type,
01096 void *paramAddr,
01097 SQLDBC_Length *LengthIndicator,
01098 SQLDBC_Length Size,
01099 SQLDBC_Bool Terminate);
01100
01157
01158 SQLDBC_DLLEXPORT
01159 SQLDBC_Retcode SQLDBC_UpdatableRowSet_getObjectByPos(SQLDBC_UpdatableRowSet* hdl,
01160 SQLDBC_Int4 Index,
01161 SQLDBC_HostType Type,
01162 void *paramAddr,
01163 SQLDBC_Length *LengthIndicator,
01164 SQLDBC_Length Size,
01165 SQLDBC_Length StartPos,
01166 SQLDBC_Bool Terminate);
01167
01177 SQLDBC_DLLEXPORT
01178 SQLDBC_Retcode SQLDBC_UpdatableRowSet_insertAllRows(SQLDBC_UpdatableRowSet* hdl);
01179
01187 SQLDBC_DLLEXPORT
01188 SQLDBC_Retcode SQLDBC_UpdatableRowSet_insertOneRow(SQLDBC_UpdatableRowSet* hdl);
01189
01200 SQLDBC_DLLEXPORT
01201 SQLDBC_Retcode SQLDBC_UpdatableRowSet_updateRow(SQLDBC_UpdatableRowSet* hdl, int position);
01202
01212 SQLDBC_DLLEXPORT
01213 SQLDBC_Retcode SQLDBC_UpdatableRowSet_deleteRow(SQLDBC_UpdatableRowSet* hdl, int position);
01214
01215
01299 #ifndef BUILD_INTERFACE_RUNTIME
01300 typedef struct SQLDBC_ResultSet SQLDBC_ResultSet;
01301 #endif
01302
01313
01314 SQLDBC_DLLEXPORT
01315 SQLDBC_ErrorHndl* SQLDBC_ResultSet_getError(SQLDBC_ResultSet* hdl);
01316
01321 SQLDBC_DLLEXPORT
01322 void SQLDBC_ResultSet_clearError(SQLDBC_ResultSet* hdl);
01323
01333
01334 SQLDBC_DLLEXPORT
01335 SQLDBC_SQLWarning* SQLDBC_ResultSet_getWarning(SQLDBC_ResultSet* hdl);
01336
01341 SQLDBC_DLLEXPORT
01342 void SQLDBC_ResultSet_clearWarnings(SQLDBC_ResultSet* hdl);
01343
01344
01345
01356 SQLDBC_DLLEXPORT
01357 SQLDBC_ResultSetMetaData* SQLDBC_ResultSet_getResultSetMetaData(SQLDBC_ResultSet* hdl);
01358
01365 SQLDBC_DLLEXPORT
01366 SQLDBC_Int4 SQLDBC_ResultSet_getResultCount (SQLDBC_ResultSet* hdl);
01367
01408 SQLDBC_DLLEXPORT
01409 SQLDBC_Retcode SQLDBC_ResultSet_bindColumn (SQLDBC_ResultSet* hdl,
01410 SQLDBC_UInt4 Index,
01411 SQLDBC_HostType Type,
01412 void *paramAddr,
01413 SQLDBC_Length *LengthIndicator,
01414 SQLDBC_Length Size,
01415 SQLDBC_Bool Terminate);
01416
01460
01461 SQLDBC_DLLEXPORT
01462 SQLDBC_Retcode SQLDBC_ResultSet_bindColumnByPos (SQLDBC_ResultSet* hdl,
01463 SQLDBC_UInt4 Index,
01464 SQLDBC_HostType Type,
01465 void *paramAddr,
01466 SQLDBC_Length *LengthIndicator,
01467 SQLDBC_Length *PositionIndicator,
01468 SQLDBC_Length Size,
01469 SQLDBC_Bool Terminate);
01470
01479 SQLDBC_DLLEXPORT
01480 SQLDBC_Retcode SQLDBC_ResultSet_clearColumns(SQLDBC_ResultSet* hdl);
01481
01493 SQLDBC_DLLEXPORT
01494 void SQLDBC_ResultSet_setFetchSize(SQLDBC_ResultSet* hdl, SQLDBC_Int2 fetchsize);
01495
01503 SQLDBC_DLLEXPORT
01504 void SQLDBC_ResultSet_setRowSetSize (SQLDBC_ResultSet *hdl, SQLDBC_UInt4 rowsetsize);
01505
01513 SQLDBC_DLLEXPORT
01514 SQLDBC_UInt4 SQLDBC_ResultSet_getRowSetSize (SQLDBC_ResultSet* hdl);
01515
01523 SQLDBC_DLLEXPORT
01524 SQLDBC_RowSet * SQLDBC_ResultSet_getRowSet (SQLDBC_ResultSet* hdl);
01525
01534 SQLDBC_DLLEXPORT
01535 SQLDBC_UpdatableRowSet * SQLDBC_ResultSet_getUpdatableRowSet (SQLDBC_ResultSet* hdl);
01536
01544 SQLDBC_DLLEXPORT
01545 SQLDBC_Statement * SQLDBC_ResultSet_getStatement(SQLDBC_ResultSet* hdl);
01546
01553 SQLDBC_DLLEXPORT
01554 SQLDBC_Bool * SQLDBC_ResultSet_isUpdatable(SQLDBC_ResultSet* hdl);
01555
01568 SQLDBC_DLLEXPORT
01569 SQLDBC_Retcode SQLDBC_ResultSet_first(SQLDBC_ResultSet* hdl);
01570
01588 SQLDBC_DLLEXPORT
01589 SQLDBC_Retcode SQLDBC_ResultSet_next(SQLDBC_ResultSet* hdl);
01590
01602 SQLDBC_DLLEXPORT
01603 SQLDBC_Retcode SQLDBC_ResultSet_previous(SQLDBC_ResultSet* hdl);
01604
01616 SQLDBC_DLLEXPORT
01617 SQLDBC_Retcode SQLDBC_ResultSet_last(SQLDBC_ResultSet* hdl);
01618
01649 SQLDBC_DLLEXPORT
01650 SQLDBC_Retcode SQLDBC_ResultSet_absolute (SQLDBC_ResultSet* hdl, int row);
01651
01675 SQLDBC_DLLEXPORT
01676 SQLDBC_Retcode SQLDBC_ResultSet_relative(SQLDBC_ResultSet* hdl, int relativePos);
01677
01683 SQLDBC_DLLEXPORT
01684 void SQLDBC_ResultSet_close(SQLDBC_ResultSet* hdl);
01685
01693 SQLDBC_DLLEXPORT
01694 SQLDBC_UInt4 SQLDBC_ResultSet_getRowNumber(SQLDBC_ResultSet* hdl);
01695
01749 SQLDBC_DLLEXPORT
01750 SQLDBC_Retcode SQLDBC_ResultSet_getObject(SQLDBC_ResultSet* hdl,
01751 SQLDBC_Int4 Index,
01752 SQLDBC_HostType Type,
01753 void *paramAddr,
01754 SQLDBC_Length *LengthIndicator,
01755 SQLDBC_Length Size,
01756 SQLDBC_Bool Terminate);
01757
01758
01815
01816 SQLDBC_DLLEXPORT
01817 SQLDBC_Retcode SQLDBC_ResultSet_getObjectByPos(SQLDBC_ResultSet* hdl,
01818 SQLDBC_Int4 Index,
01819 SQLDBC_HostType Type,
01820 void *paramAddr,
01821 SQLDBC_Length *LengthIndicator,
01822 SQLDBC_Length Size,
01823 SQLDBC_Length StartPos,
01824 SQLDBC_Bool Terminate);
01825
01826
01912
01913 SQLDBC_DLLEXPORT
01914 SQLDBC_ErrorHndl* SQLDBC_Statement_getError(SQLDBC_Statement* hdl);
01915
01920 SQLDBC_DLLEXPORT
01921 void SQLDBC_Statement_clearError(SQLDBC_Statement* hdl);
01922
01932
01933 SQLDBC_DLLEXPORT
01934 SQLDBC_SQLWarning* SQLDBC_Statement_getWarning(SQLDBC_Statement* hdl);
01935
01940 SQLDBC_DLLEXPORT
01941 void SQLDBC_Statement_clearWarnings(SQLDBC_Statement* hdl);
01942
01960 SQLDBC_DLLEXPORT
01961 SQLDBC_Retcode SQLDBC_Statement_execute(SQLDBC_Statement* hdl,
01962 char *sql,
01963 SQLDBC_Length sqlLength,
01964 SQLDBC_StringEncodingType_Encoding encoding);
01965
01983
01984 SQLDBC_DLLEXPORT
01985 SQLDBC_Retcode SQLDBC_Statement_executeNTS(SQLDBC_Statement* hdl,
01986 char *sql,
01987 SQLDBC_StringEncodingType_Encoding encoding);
01988
02003
02004 SQLDBC_DLLEXPORT
02005 SQLDBC_Retcode SQLDBC_Statement_executeASCII(SQLDBC_Statement* hdl, char *sql);
02006
02022 SQLDBC_DLLEXPORT
02023 void SQLDBC_Statement_setResultSetFetchSize(SQLDBC_Statement* hdl, SQLDBC_Int2 rows);
02024
02039 SQLDBC_DLLEXPORT
02040 void SQLDBC_Statement_setMaxRows(SQLDBC_Statement* hdl, SQLDBC_UInt4 rows);
02041
02051 SQLDBC_DLLEXPORT
02052 SQLDBC_UInt4 SQLDBC_Statement_getMaxRows(SQLDBC_Statement* hdl);
02053
02063 SQLDBC_DLLEXPORT
02064 SQLDBC_ResultSet * SQLDBC_Statement_getResultSet(SQLDBC_Statement* hdl);
02065
02081 SQLDBC_DLLEXPORT
02082 void SQLDBC_Statement_setCursorName(SQLDBC_Statement* hdl,
02083 char *buffer,
02084 SQLDBC_Length bufferLength,
02085 SQLDBC_StringEncodingType_Encoding encoding);
02086
02105 SQLDBC_DLLEXPORT
02106 SQLDBC_Retcode SQLDBC_Statement_setCommandInfo(SQLDBC_Statement* hdl,
02107 const char *buffer,
02108 SQLDBC_Length bufferLength,
02109 SQLDBC_Int4 lineNumber);
02133 SQLDBC_DLLEXPORT
02134 SQLDBC_Retcode SQLDBC_Statement_getCursorName(SQLDBC_Statement* hdl,
02135 char *buffer,
02136 SQLDBC_StringEncodingType_Encoding encoding,
02137 SQLDBC_Length bufferSize,
02138 SQLDBC_Length *bufferLength);
02139
02157 SQLDBC_DLLEXPORT
02158 SQLDBC_Retcode SQLDBC_Statement_getTableName(SQLDBC_Statement* hdl,
02159 char *buffer,
02160 SQLDBC_StringEncodingType_Encoding encoding,
02161 SQLDBC_Length bufferSize,
02162 SQLDBC_Length *bufferLength);
02163
02179 SQLDBC_DLLEXPORT
02180 SQLDBC_Bool SQLDBC_Statement_isQuery(SQLDBC_Statement* hdl);
02181
02193 SQLDBC_DLLEXPORT
02194 SQLDBC_Int4 SQLDBC_Statement_getRowsAffected(SQLDBC_Statement* hdl);
02195
02196 typedef enum SQLDBC_Statement_ResultSetType {
02197 SQLDBC_Statement_ResultSetType_FORWARD_ONLY = 1,
02198 SQLDBC_Statement_ResultSetType_SCROLL_SENSITIVE = 2,
02199 SQLDBC_Statement_ResultSetType_SCROLL_INSENSITIVE = 3
02200 } SQLDBC_Statement_ResultSetType ;
02201
02222 SQLDBC_DLLEXPORT
02223 void SQLDBC_Statement_setResultSetType (SQLDBC_Statement* hdl, SQLDBC_Statement_ResultSetType type );
02224
02239 SQLDBC_DLLEXPORT
02240 SQLDBC_Statement_ResultSetType SQLDBC_Statement_getResultSetType(SQLDBC_Statement* hdl);
02241
02242 typedef enum SQLDBC_Statement_ConcurrencyType {
02243 SQLDBC_Statement_ConcurrencyType_CONCUR_UPDATABLE = 10,
02244 SQLDBC_Statement_ConcurrencyType_CONCUR_READ_ONLY = 11
02245 }SQLDBC_Statement_ConcurrencyType;
02246
02262 SQLDBC_DLLEXPORT
02263 void SQLDBC_Statement_setResultSetConcurrencyType (SQLDBC_Statement* hdl, SQLDBC_Statement_ConcurrencyType type);
02264
02265 typedef enum SQLDBC_Statement_HoldabilityType {
02266 SQLDBC_Statement_HoldabilityType_CURSOR_HOLD_OVER_COMMIT = 20,
02267 SQLDBC_Statement_HoldabilityType_CURSOR_CLOSE_ON_COMMIT = 21
02268 } SQLDBC_Statement_HoldabilityType;
02269
02280 SQLDBC_DLLEXPORT
02281 SQLDBC_Statement_ConcurrencyType SQLDBC_Statement_getResultSetConcurrencyType(SQLDBC_Statement* hdl);
02282
02293 SQLDBC_DLLEXPORT
02294 SQLDBC_Int4 * SQLDBC_Statement_getRowStatus(SQLDBC_Statement* hdl);
02295
02303 SQLDBC_DLLEXPORT
02304 SQLDBC_UInt4 SQLDBC_Statement_getBatchSize(SQLDBC_Statement* hdl);
02305
02318 SQLDBC_DLLEXPORT
02319 SQLDBC_Retcode SQLDBC_Statement_addBatch(SQLDBC_Statement* hdl,
02320 char *sql,
02321 SQLDBC_Length sqlLength,
02322 SQLDBC_StringEncodingType_Encoding encoding);
02323
02332
02333 SQLDBC_DLLEXPORT
02334 SQLDBC_Retcode SQLDBC_Statement_addBatchNTS(SQLDBC_Statement* hdl,
02335 char *sql,
02336 SQLDBC_StringEncodingType_Encoding encoding);
02337
02346
02347 SQLDBC_DLLEXPORT
02348 SQLDBC_Retcode SQLDBC_Statement_addBatchASCII(SQLDBC_Statement* hdl, char *sql);
02349
02358 SQLDBC_DLLEXPORT
02359 SQLDBC_Retcode SQLDBC_Statement_executeBatch(SQLDBC_Statement* hdl);
02360
02366 SQLDBC_DLLEXPORT
02367 void SQLDBC_Statement_clearBatch(SQLDBC_Statement* hdl);
02368
02384 SQLDBC_DLLEXPORT
02385 SQLDBC_Retcode SQLDBC_Statement_getLastInsertedKey(SQLDBC_Statement *hdl,
02386 SQLDBC_Int4 tag,
02387 SQLDBC_HostType type,
02388 void *paramAddr,
02389 SQLDBC_Length *lengthIndicator,
02390 SQLDBC_Length size,
02391 SQLDBC_Bool terminate);
02392
02393
02394
02461 #ifndef BUILD_INTERFACE_RUNTIME
02462 typedef struct SQLDBC_PreparedStatement SQLDBC_PreparedStatement;
02463 #endif
02464
02475
02476 SQLDBC_DLLEXPORT
02477 SQLDBC_ErrorHndl* SQLDBC_PreparedStatement_getError(SQLDBC_PreparedStatement* hdl);
02478
02483 SQLDBC_DLLEXPORT
02484 void SQLDBC_PreparedStatement_clearError(SQLDBC_PreparedStatement* hdl);
02485
02495
02496 SQLDBC_DLLEXPORT
02497 SQLDBC_SQLWarning* SQLDBC_PreparedStatement_getWarning(SQLDBC_PreparedStatement* hdl);
02498
02503 SQLDBC_DLLEXPORT
02504 void SQLDBC_PreparedStatement_clearWarnings(SQLDBC_PreparedStatement* hdl);
02505
02506
02522 SQLDBC_DLLEXPORT
02523 void SQLDBC_PreparedStatement_setResultSetFetchSize(SQLDBC_PreparedStatement* hdl, SQLDBC_Int2 rows);
02524
02539 SQLDBC_DLLEXPORT
02540 void SQLDBC_PreparedStatement_setMaxRows(SQLDBC_PreparedStatement* hdl, SQLDBC_UInt4 rows);
02541
02551 SQLDBC_DLLEXPORT
02552 SQLDBC_UInt4 SQLDBC_PreparedStatement_getMaxRows(SQLDBC_PreparedStatement* hdl);
02553
02563 SQLDBC_DLLEXPORT
02564 SQLDBC_ResultSet * SQLDBC_PreparedStatement_getResultSet(SQLDBC_PreparedStatement* hdl);
02565
02581 SQLDBC_DLLEXPORT
02582 void SQLDBC_PreparedStatement_setCursorName(SQLDBC_PreparedStatement* hdl,
02583 const char *buffer,
02584 SQLDBC_Length bufferLength,
02585 const SQLDBC_StringEncodingType_Encoding encoding);
02586
02604 SQLDBC_DLLEXPORT
02605 SQLDBC_Retcode SQLDBC_PreparedStatement_setCommandInfo(SQLDBC_PreparedStatement* hdl,
02606 const char *buffer,
02607 SQLDBC_Length bufferLength,
02608 SQLDBC_Int4 lineNumber);
02632 SQLDBC_DLLEXPORT
02633 SQLDBC_Retcode SQLDBC_PreparedStatement_getCursorName(SQLDBC_PreparedStatement* hdl,
02634 char *buffer,
02635 const SQLDBC_StringEncodingType_Encoding encoding,
02636 const SQLDBC_Length bufferSize,
02637 SQLDBC_Length *bufferLength);
02638
02656 SQLDBC_DLLEXPORT
02657 SQLDBC_Retcode SQLDBC_PreparedStatement_getTableName(SQLDBC_PreparedStatement* hdl,
02658 char *buffer,
02659 const SQLDBC_StringEncodingType_Encoding encoding,
02660 const SQLDBC_Length bufferSize,
02661 SQLDBC_Length *bufferLength);
02662
02678 SQLDBC_DLLEXPORT
02679 SQLDBC_Bool SQLDBC_PreparedStatement_isQuery(SQLDBC_PreparedStatement* hdl);
02680
02692 SQLDBC_DLLEXPORT
02693 SQLDBC_Int4 SQLDBC_PreparedStatement_getRowsAffected(SQLDBC_PreparedStatement* hdl);
02694
02716 SQLDBC_DLLEXPORT
02717 void SQLDBC_PreparedStatement_setResultSetType (SQLDBC_PreparedStatement* hdl, SQLDBC_Statement_ResultSetType type );
02718
02733 SQLDBC_DLLEXPORT
02734 SQLDBC_Statement_ResultSetType SQLDBC_PreparedStatement_getResultSetType(SQLDBC_PreparedStatement* hdl);
02735
02751 SQLDBC_DLLEXPORT
02752 void SQLDBC_PreparedStatement_setResultSetConcurrencyType (SQLDBC_PreparedStatement* hdl, SQLDBC_Statement_ConcurrencyType type);
02753
02764 SQLDBC_DLLEXPORT
02765 SQLDBC_Statement_ConcurrencyType SQLDBC_PreparedStatement_getResultSetConcurrencyType(SQLDBC_PreparedStatement* hdl);
02766
02777 SQLDBC_DLLEXPORT
02778 SQLDBC_Int4 * SQLDBC_PreparedStatement_getRowStatus(SQLDBC_PreparedStatement* hdl);
02779
02787 SQLDBC_DLLEXPORT
02788 SQLDBC_UInt4 SQLDBC_PreparedStatement_getBatchSize(SQLDBC_PreparedStatement* hdl);
02789
02790
02799 SQLDBC_DLLEXPORT
02800 SQLDBC_Retcode SQLDBC_PreparedStatement_executeBatch(SQLDBC_PreparedStatement* hdl);
02801
02807 SQLDBC_DLLEXPORT
02808 void SQLDBC_PreparedStatement_clearBatch(SQLDBC_PreparedStatement* hdl);
02809
02825 SQLDBC_DLLEXPORT
02826 SQLDBC_Retcode SQLDBC_PreparedStatement_getLastInsertedKey(SQLDBC_PreparedStatement *hdl,
02827 SQLDBC_Int4 tag,
02828 SQLDBC_HostType type,
02829 void *paramAddr,
02830 SQLDBC_Length *lengthIndicator,
02831 SQLDBC_Length size,
02832 SQLDBC_Bool terminate);
02833
02844 SQLDBC_DLLEXPORT
02845 SQLDBC_Retcode SQLDBC_PreparedStatement_prepare(SQLDBC_PreparedStatement* hdl,
02846 const char *sql,
02847 const SQLDBC_Length sqlLength,
02848 const SQLDBC_StringEncodingType_Encoding encoding);
02849
02863
02864 SQLDBC_DLLEXPORT
02865 SQLDBC_Retcode SQLDBC_PreparedStatement_prepareNTS(SQLDBC_PreparedStatement* hdl,
02866 const char *sql,
02867 const SQLDBC_StringEncodingType_Encoding encoding);
02868
02879
02880 SQLDBC_DLLEXPORT
02881 SQLDBC_Retcode SQLDBC_PreparedStatement_prepareASCII(SQLDBC_PreparedStatement* hdl, const char *sql);
02882
02897
02898 SQLDBC_DLLEXPORT
02899 SQLDBC_Retcode SQLDBC_PreparedStatement_executeASCII(SQLDBC_PreparedStatement* hdl);
02900
02912 SQLDBC_DLLEXPORT
02913 SQLDBC_ParameterMetaData* SQLDBC_PreparedStatement_getParameterMetaData(SQLDBC_PreparedStatement* hdl);
02914
02937 SQLDBC_DLLEXPORT
02938 SQLDBC_ResultSetMetaData* SQLDBC_PreparedStatement_getResultSetMetaData(SQLDBC_PreparedStatement* hdl);
02939
02948 SQLDBC_DLLEXPORT
02949 SQLDBC_Retcode SQLDBC_PreparedStatement_setBatchSize(SQLDBC_PreparedStatement* hdl, SQLDBC_UInt4 rowarraysize);
02950
02964 SQLDBC_DLLEXPORT
02965 SQLDBC_UInt4 SQLDBC_PreparedStatement_getPreferredBatchSize(SQLDBC_PreparedStatement* hdl);
02966
02967
02979 SQLDBC_DLLEXPORT
02980 SQLDBC_Retcode SQLDBC_PreparedStatement_clearParameters(SQLDBC_PreparedStatement* hdl);
02981
02982
03022 SQLDBC_DLLEXPORT
03023 SQLDBC_Retcode SQLDBC_PreparedStatement_bindParameter (SQLDBC_PreparedStatement* hdl,
03024 const SQLDBC_UInt2 Index,
03025 const SQLDBC_HostType Type,
03026 void *paramAddr,
03027 SQLDBC_Length *LengthIndicator,
03028 const SQLDBC_Length Size,
03029 const SQLDBC_Bool Terminate);
03030
03074 SQLDBC_DLLEXPORT
03075 SQLDBC_Retcode SQLDBC_PreparedStatement_bindParameterAddr(SQLDBC_PreparedStatement* hdl,
03076 const SQLDBC_UInt2 Index,
03077 const SQLDBC_HostType Type,
03078 void *paramAddr,
03079 SQLDBC_Length *LengthIndicator,
03080 const SQLDBC_Length Size,
03081 const SQLDBC_Bool Terminate);
03082
03101 SQLDBC_DLLEXPORT
03102 SQLDBC_Retcode SQLDBC_PreparedStatement_setBindingType(SQLDBC_PreparedStatement* hdl, SQLDBC_size_t size);
03103
03104
03127 SQLDBC_DLLEXPORT
03128 SQLDBC_Retcode SQLDBC_PreparedStatement_nextParameterByIndex(SQLDBC_PreparedStatement* hdl, SQLDBC_Int2* paramIndex, void** paramAddr);
03129
03130
03145 SQLDBC_DLLEXPORT
03146 SQLDBC_Retcode SQLDBC_PreparedStatement_putData(SQLDBC_PreparedStatement* hdl, void *paramAddr, SQLDBC_Length *paramLengthIndicator);
03147
03197 SQLDBC_DLLEXPORT
03198 SQLDBC_Retcode SQLDBC_PreparedStatement_getObject(
03199 SQLDBC_PreparedStatement* hdl,
03200 SQLDBC_Int4 Index,
03201 SQLDBC_HostType Type,
03202 void *paramAddr,
03203 SQLDBC_Length *LengthIndicator,
03204 SQLDBC_Length Size,
03205 SQLDBC_Bool Terminate);
03206
03259
03260 SQLDBC_DLLEXPORT
03261 SQLDBC_Retcode SQLDBC_PreparedStatement_getObjectByPos(
03262 SQLDBC_PreparedStatement* hdl,
03263 SQLDBC_Int4 Index,
03264 SQLDBC_HostType Type,
03265 void *paramAddr,
03266 SQLDBC_Length *LengthIndicator,
03267 SQLDBC_Length Size,
03268 SQLDBC_Length StartPos,
03269 SQLDBC_Bool Terminate);
03270
03271
03425 #ifndef BUILD_INTERFACE_RUNTIME
03426 typedef struct SQLDBC_ConnectProperties SQLDBC_ConnectProperties;
03427 #endif
03428
03434 SQLDBC_DLLEXPORT
03435
03436 SQLDBC_ConnectProperties* SQLDBC_ConnectProperties_new_SQLDBC_ConnectProperties();
03437
03438
03443
03444 SQLDBC_DLLEXPORT
03445 void SQLDBC_ConnectProperties_delete_SQLDBC_ConnectProperties(SQLDBC_ConnectProperties* hdl);
03446
03447
03455 SQLDBC_DLLEXPORT
03456 void SQLDBC_ConnectProperties_setProperty(SQLDBC_ConnectProperties* hdl, const char *key, const char *value);
03457
03466 SQLDBC_DLLEXPORT
03467 char * SQLDBC_ConnectProperties_getProperty(SQLDBC_ConnectProperties* hdl, const char *key, const char *defaultvalue);
03468
03469
03470
03481 #ifndef BUILD_INTERFACE_RUNTIME
03482 typedef struct SQLDBC_Connection SQLDBC_Connection;
03483 #endif
03484
03495
03496 SQLDBC_DLLEXPORT
03497 SQLDBC_ErrorHndl* SQLDBC_Connection_getError(SQLDBC_Connection* hdl);
03498
03503 SQLDBC_DLLEXPORT
03504 void SQLDBC_Connection_clearError(SQLDBC_Connection* hdl);
03505
03515
03516 SQLDBC_DLLEXPORT
03517 SQLDBC_SQLWarning* SQLDBC_Connection_getWarning(SQLDBC_Connection* hdl);
03518
03523 SQLDBC_DLLEXPORT
03524 void SQLDBC_Connection_clearWarnings(SQLDBC_Connection* hdl);
03525
03526
03650 SQLDBC_DLLEXPORT
03651 SQLDBC_Retcode SQLDBC_Connection_connect(SQLDBC_Connection* hdl,
03652 const char* servernode,
03653 SQLDBC_Length servernodeLength,
03654 const char* serverdb,
03655 SQLDBC_Length serverdbLength,
03656 const char* username,
03657 SQLDBC_Length usernameLength,
03658 const char* password,
03659 SQLDBC_Length passwordLength,
03660 const SQLDBC_StringEncodingType_Encoding userpwdEncoding,
03661 const SQLDBC_ConnectProperties* properties);
03662
03686
03687 SQLDBC_DLLEXPORT
03688 SQLDBC_Retcode SQLDBC_Connection_connectNTS(SQLDBC_Connection* hdl,
03689 const char* servernode,
03690 const char* serverdb,
03691 const char* username,
03692 const char* password,
03693 const SQLDBC_StringEncodingType_Encoding userpwdEncoding,
03694 const SQLDBC_ConnectProperties* properties);
03695
03713
03714 SQLDBC_DLLEXPORT
03715 SQLDBC_Retcode SQLDBC_Connection_connectASCII(SQLDBC_Connection* hdl,
03716 const char* servernode,
03717 const char* serverdb,
03718 const char* username,
03719 const char* password,
03720 const SQLDBC_ConnectProperties* properties);
03721
03722
03723
03738
03739 SQLDBC_DLLEXPORT
03740 SQLDBC_Retcode SQLDBC_Connection_connectPROP(SQLDBC_Connection* hdl,
03741 const SQLDBC_ConnectProperties* properties);
03742
03743
03758 SQLDBC_DLLEXPORT
03759 SQLDBC_Statement * SQLDBC_Connection_createStatement(SQLDBC_Connection* hdl);
03760
03771 SQLDBC_DLLEXPORT
03772 SQLDBC_PreparedStatement * SQLDBC_Connection_createPreparedStatement(SQLDBC_Connection* hdl);
03773
03785 SQLDBC_DLLEXPORT
03786 SQLDBC_Retcode SQLDBC_Connection_commit(SQLDBC_Connection* hdl);
03787
03794 SQLDBC_DLLEXPORT
03795 SQLDBC_Retcode SQLDBC_Connection_rollback(SQLDBC_Connection* hdl);
03796
03803 SQLDBC_DLLEXPORT
03804 void SQLDBC_Connection_releaseStatement(SQLDBC_Connection* hdl, SQLDBC_Statement *stmt);
03805
03812
03813 SQLDBC_DLLEXPORT
03814 void SQLDBC_Connection_releasePreparedStatement(SQLDBC_Connection* hdl, SQLDBC_PreparedStatement *stmt);
03815
03832 SQLDBC_DLLEXPORT
03833 SQLDBC_Retcode SQLDBC_Connection_cancel(SQLDBC_Connection* hdl);
03834
03850 SQLDBC_DLLEXPORT
03851 SQLDBC_Retcode SQLDBC_Connection_close(SQLDBC_Connection* hdl);
03852
03853
03869 SQLDBC_DLLEXPORT
03870 SQLDBC_Retcode SQLDBC_Connection_commitWorkRelease(SQLDBC_Connection* hdl);
03871
03872
03890 SQLDBC_DLLEXPORT
03891 SQLDBC_Retcode SQLDBC_Connection_disconnect(SQLDBC_Connection* hdl);
03892
03893
03901 SQLDBC_DLLEXPORT
03902 void SQLDBC_Connection_setAutoCommit(SQLDBC_Connection* hdl, SQLDBC_Bool autocommit);
03903
03912 SQLDBC_DLLEXPORT
03913 SQLDBC_Bool SQLDBC_Connection_getAutoCommit(SQLDBC_Connection* hdl);
03914
03926 SQLDBC_DLLEXPORT
03927 void SQLDBC_Connection_setSQLMode(SQLDBC_Connection* hdl, SQLDBC_SQLMode sqlmode);
03928
03941 SQLDBC_DLLEXPORT
03942 SQLDBC_Retcode SQLDBC_Connection_setTransactionIsolation(SQLDBC_Connection* hdl, SQLDBC_Int4 isolationlevel);
03943
03952 SQLDBC_DLLEXPORT
03953 SQLDBC_Int4 SQLDBC_Connection_getTransactionIsolation(SQLDBC_Connection* hdl);
03954
03964 SQLDBC_DLLEXPORT
03965 SQLDBC_Bool SQLDBC_Connection_isConnected(SQLDBC_Connection* hdl);
03966
03981 SQLDBC_DLLEXPORT
03982 SQLDBC_Int4 SQLDBC_Connection_getKernelVersion(SQLDBC_Connection* hdl);
03983
03991 SQLDBC_DLLEXPORT
03992 SQLDBC_Bool SQLDBC_Connection_isUnicodeDatabase(SQLDBC_Connection* hdl);
03993
04000 SQLDBC_DLLEXPORT
04001 SQLDBC_DateTimeFormat_Format SQLDBC_Connection_getDateTimeFormat(SQLDBC_Connection* hdl);
04002
04003
04008 #ifndef BUILD_INTERFACE_RUNTIME
04009 typedef struct SQLDBC_Environment SQLDBC_Environment;
04010 #endif
04011
04018 SQLDBC_DLLEXPORT
04019
04020 SQLDBC_Environment* SQLDBC_Environment_new_SQLDBC_Environment(SQLDBC_IRuntime* runtime);
04021
04027 SQLDBC_DLLEXPORT
04028
04029 void SQLDBC_Environment_delete_SQLDBC_Environment(SQLDBC_Environment* hdl);
04030
04038 SQLDBC_DLLEXPORT
04039 SQLDBC_Connection * SQLDBC_Environment_createConnection(SQLDBC_Environment* hdl);
04040
04041
04049 SQLDBC_DLLEXPORT
04050 void SQLDBC_Environment_releaseConnection(SQLDBC_Environment* hdl, SQLDBC_Connection *connection);
04051
04067 SQLDBC_DLLEXPORT
04068 char * SQLDBC_Environment_getLibraryVersion(SQLDBC_Environment* hdl);
04069
04079 SQLDBC_DLLEXPORT
04080
04081 char *getSDKVersion();
04082
04083
04084 #ifdef SQLDBC_FEATURE_TRACEOPTION
04085
04156 SQLDBC_DLLEXPORT
04157 void SQLDBC_Environment_setTraceOptions(SQLDBC_Environment *hdl, const SQLDBC_ConnectProperties* traceoptions);
04158
04167 SQLDBC_DLLEXPORT
04168 void SQLDBC_Environment_getTraceOptions(SQLDBC_Environment *hdl, SQLDBC_ConnectProperties* traceoptions);
04169 #endif
04170
04180
04181 SQLDBC_DLLEXPORT SQLDBC_IRuntime* ClientRuntime_GetClientRuntime(char *errorText,SQLDBC_Int4 errorTextSize);
04182
04192
04193 SQLDBC_DLLEXPORT SQLDBC_IRuntime* ClientRuntime_GetSingleThreadClientRuntime(char *errorText,SQLDBC_Int4 errorTextSize);
04194
04195 #ifdef __cplusplus
04196 }
04197 #endif
04198
04199 #endif