@miatechnet/node-odbc 2.4.10-multiresult.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/dynodbc.h ADDED
@@ -0,0 +1,383 @@
1
+ #ifndef _SRC_DYNODBC_H_
2
+ #define _SRC_DYNODBC_H_
3
+
4
+ #ifdef dynodbc
5
+
6
+ #ifdef _WIN32
7
+ #include <windows.h>
8
+ #endif
9
+ #include <sql.h>
10
+ #include <sqlext.h>
11
+
12
+ typedef RETCODE (SQL_API * pfnSQLGetData)(
13
+ SQLHSTMT StatementHandle,
14
+ SQLUSMALLINT Col_or_Param_Num,
15
+ SQLSMALLINT TargetType,
16
+ SQLPOINTER TargetValuePtr,
17
+ SQLLEN BufferLength,
18
+ SQLLEN * StrLen_or_IndPtr);
19
+
20
+ typedef RETCODE (SQL_API * pfnSQLGetFunctions)(
21
+ HDBC ConnectionHandle,
22
+ SQLUSMALLINT FunctionId,
23
+ SQLUSMALLINT * SupportedPtr);
24
+
25
+ typedef RETCODE (SQL_API * pfnSQLAllocConnect)(
26
+ HENV henv,
27
+ HDBC FAR *phdbc);
28
+
29
+ typedef RETCODE (SQL_API * pfnSQLAllocEnv)(
30
+ HENV FAR *phenv);
31
+
32
+ typedef RETCODE (SQL_API * pfnSQLAllocStmt)(
33
+ HDBC hdbc,
34
+ HSTMT FAR *phstmt);
35
+
36
+ typedef RETCODE (SQL_API * pfnSQLBindCol)(
37
+ HSTMT hstmt,
38
+ UWORD icol,
39
+ SWORD fCType,
40
+ PTR rgbValue,
41
+ SDWORD cbValueMax,
42
+ SDWORD FAR *pcbValue);
43
+
44
+ typedef RETCODE (SQL_API * pfnSQLCancel)(
45
+ HSTMT hstmt);
46
+
47
+ typedef RETCODE (SQL_API * pfnSQLColAttributes)(
48
+ HSTMT hstmt,
49
+ UWORD icol,
50
+ UWORD fDescType,
51
+ PTR rgbDesc,
52
+ SWORD cbDescMax,
53
+ SWORD FAR *pcbDesc,
54
+ SDWORD FAR *pfDesc);
55
+
56
+
57
+ typedef RETCODE (SQL_API * pfnSQLColAttribute)(
58
+ SQLHSTMT StatementHandle,
59
+ SQLUSMALLINT ColumnNumber, SQLUSMALLINT FieldIdentifier,
60
+ SQLPOINTER CharacterAttribute, SQLSMALLINT BufferLength,
61
+ SQLSMALLINT *StringLength, SQLPOINTER NumericAttribute);
62
+
63
+ typedef RETCODE (SQL_API * pfnSQLSetConnectAttr)(
64
+ SQLHDBC ConnectionHandle,
65
+ SQLINTEGER Attribute, SQLPOINTER Value,
66
+ SQLINTEGER StringLength);
67
+
68
+ typedef RETCODE (SQL_API * pfnSQLDriverConnect)(
69
+ SQLHDBC hdbc,
70
+ SQLHWND hwnd,
71
+ SQLTCHAR *szConnStrIn,
72
+ SQLSMALLINT cbConnStrIn,
73
+ SQLTCHAR *szConnStrOut,
74
+ SQLSMALLINT cbConnStrOutMax,
75
+ SQLSMALLINT *pcbConnStrOut,
76
+ SQLUSMALLINT fDriverCompletion);
77
+
78
+ typedef RETCODE (SQL_API * pfnSQLAllocHandle)(
79
+ SQLSMALLINT HandleType,
80
+ SQLHANDLE InputHandle, SQLHANDLE *OutputHandle);
81
+
82
+ typedef RETCODE (SQL_API * pfnSQLRowCount)(
83
+ SQLHSTMT StatementHandle,
84
+ SQLLEN *RowCount);
85
+
86
+ typedef RETCODE (SQL_API * pfnSQLNumResultCols)(
87
+ SQLHSTMT StatementHandle,
88
+ SQLSMALLINT *ColumnCount);
89
+
90
+ typedef RETCODE (SQL_API * pfnSQLEndTran)(
91
+ SQLSMALLINT HandleType, SQLHANDLE Handle,
92
+ SQLSMALLINT CompletionType);
93
+
94
+ typedef RETCODE (SQL_API * pfnSQLExecDirect)(
95
+ SQLHSTMT StatementHandle,
96
+ SQLTCHAR *StatementText, SQLINTEGER TextLength);
97
+
98
+
99
+ typedef RETCODE (SQL_API * pfnSQLTables)(
100
+ SQLHSTMT StatementHandle,
101
+ SQLTCHAR *CatalogName, SQLSMALLINT NameLength1,
102
+ SQLTCHAR *SchemaName, SQLSMALLINT NameLength2,
103
+ SQLTCHAR *TableName, SQLSMALLINT NameLength3,
104
+ SQLTCHAR *TableType, SQLSMALLINT NameLength4);
105
+
106
+ typedef RETCODE (SQL_API * pfnSQLColumns)(
107
+ SQLHSTMT StatementHandle,
108
+ SQLTCHAR *CatalogName, SQLSMALLINT NameLength1,
109
+ SQLTCHAR *SchemaName, SQLSMALLINT NameLength2,
110
+ SQLTCHAR *TableName, SQLSMALLINT NameLength3,
111
+ SQLTCHAR *ColumnName, SQLSMALLINT NameLength4);
112
+
113
+ typedef RETCODE (SQL_API * pfnSQLBindParameter)(
114
+ SQLHSTMT hstmt,
115
+ SQLUSMALLINT ipar,
116
+ SQLSMALLINT fParamType,
117
+ SQLSMALLINT fCType,
118
+ SQLSMALLINT fSqlType,
119
+ SQLUINTEGER cbColDef,
120
+ SQLSMALLINT ibScale,
121
+ SQLPOINTER rgbValue,
122
+ SQLINTEGER cbValueMax,
123
+ SQLLEN *pcbValue);
124
+
125
+ typedef RETCODE (SQL_API * pfnSQLPrimaryKeys)(
126
+ SQLHSTMT hstmt,
127
+ SQLTCHAR *szCatalogName,
128
+ SQLSMALLINT cbCatalogName,
129
+ SQLTCHAR *szSchemaName,
130
+ SQLSMALLINT cbSchemaName,
131
+ SQLTCHAR *szTableName,
132
+ SQLSMALLINT cbTableName);
133
+
134
+ typedef RETCODE (SQL_API * pfnSQLSetEnvAttr)(
135
+ SQLHENV EnvironmentHandle,
136
+ SQLINTEGER Attribute, SQLPOINTER Value,
137
+ SQLINTEGER StringLength);
138
+
139
+
140
+ typedef RETCODE (SQL_API * pfnSQLConnect)(
141
+ HDBC hdbc,
142
+ UCHAR FAR *szDSN,
143
+ SWORD cbDSN,
144
+ UCHAR FAR *szUID,
145
+ SWORD cbUID,
146
+ UCHAR FAR *szAuthStr,
147
+ SWORD cbAuthStr);
148
+
149
+ typedef RETCODE (SQL_API * pfnSQLDescribeCol)(
150
+ HSTMT hstmt,
151
+ UWORD icol,
152
+ UCHAR FAR *szColName,
153
+ SWORD cbColNameMax,
154
+ SWORD FAR *pcbColName,
155
+ SWORD FAR *pfSqlType,
156
+ UDWORD FAR *pcbColDef,
157
+ SWORD FAR *pibScale,
158
+ SWORD FAR *pfNullable);
159
+
160
+ typedef RETCODE (SQL_API * pfnSQLDisconnect)(
161
+ HDBC hdbc);
162
+
163
+ typedef RETCODE (SQL_API * pfnSQLError)(
164
+ HENV henv,
165
+ HDBC hdbc,
166
+ HSTMT hstmt,
167
+ UCHAR FAR *szSqlState,
168
+ SDWORD FAR *pfNativeError,
169
+ UCHAR FAR *szErrorMsg,
170
+ SWORD cbErrorMsgMax,
171
+ SWORD FAR *pcbErrorMsg);
172
+
173
+ /*typedef RETCODE (SQL_API * pfnSQLExecDirect)(
174
+ HSTMT hstmt,
175
+ UCHAR FAR *szSqlStr,
176
+ SDWORD cbSqlStr);
177
+ */
178
+ typedef RETCODE (SQL_API * pfnSQLExecute)(
179
+ HSTMT hstmt);
180
+
181
+ typedef RETCODE (SQL_API * pfnSQLFetch)(
182
+ HSTMT hstmt);
183
+
184
+ typedef RETCODE (SQL_API * pfnSQLGetDiagRec)(
185
+ SQLSMALLINT HandleType, SQLHANDLE Handle,
186
+ SQLSMALLINT RecNumber, SQLTCHAR *Sqlstate,
187
+ SQLINTEGER *NativeError, SQLTCHAR *MessageText,
188
+ SQLSMALLINT BufferLength, SQLSMALLINT *TextLength);
189
+
190
+ typedef RETCODE (SQL_API * pfnSQLGetDiagField)(
191
+ SQLSMALLINT HandleType, SQLHANDLE Handle,
192
+ SQLSMALLINT RecNumber, SQLSMALLINT DiagIdentifier,
193
+ SQLPOINTER DiagInfoPtr, SQLSMALLINT BufferLength,
194
+ SQLSMALLINT *StringLengthPtr);
195
+
196
+ typedef RETCODE (SQL_API * pfnSQLFreeHandle)(
197
+ SQLSMALLINT HandleType, SQLHANDLE Handle);
198
+
199
+ typedef RETCODE (SQL_API * pfnSQLFetchScroll)(
200
+ SQLHSTMT StatementHandle,
201
+ SQLSMALLINT FetchOrientation, SQLINTEGER FetchOffset);
202
+
203
+ typedef RETCODE (SQL_API * pfnSQLColAttribute)(
204
+ SQLHSTMT StatementHandle,
205
+ SQLUSMALLINT ColumnNumber, SQLUSMALLINT FieldIdentifier,
206
+ SQLPOINTER CharacterAttribute, SQLSMALLINT BufferLength,
207
+ SQLSMALLINT *StringLength, SQLPOINTER NumericAttribute);
208
+
209
+
210
+ typedef RETCODE (SQL_API * pfnSQLFreeConnect)(
211
+ HDBC hdbc);
212
+
213
+ typedef RETCODE (SQL_API * pfnSQLFreeEnv)(
214
+ HENV henv);
215
+
216
+ typedef RETCODE (SQL_API * pfnSQLFreeStmt)(
217
+ HSTMT hstmt,
218
+ UWORD fOption);
219
+
220
+ typedef RETCODE (SQL_API * pfnSQLGetCursorName)(
221
+ HSTMT hstmt,
222
+ UCHAR FAR *szCursor,
223
+ SWORD cbCursorMax,
224
+ SWORD FAR *pcbCursor);
225
+
226
+ typedef RETCODE (SQL_API * pfnSQLNumResultCols)(
227
+ HSTMT hstmt,
228
+ SWORD FAR *pccol);
229
+
230
+ typedef RETCODE (SQL_API * pfnSQLPrepare)(
231
+ SQLHSTMT StatementHandle,
232
+ SQLTCHAR *StatementText,
233
+ SQLINTEGER TextLength);
234
+ // HSTMT hstmt,
235
+ // UCHAR FAR *szSqlStr,
236
+ // SDWORD cbSqlStr);
237
+
238
+ typedef RETCODE (SQL_API * pfnSQLRowCount)(
239
+ HSTMT hstmt,
240
+ SQLLEN FAR *pcrow);
241
+
242
+ typedef RETCODE (SQL_API * pfnSQLSetCursorName)(
243
+ HSTMT hstmt,
244
+ UCHAR FAR *szCursor,
245
+ SWORD cbCursor);
246
+
247
+ typedef RETCODE (SQL_API * pfnSQLTransact)(
248
+ HENV henv,
249
+ HDBC hdbc,
250
+ UWORD fType);
251
+
252
+ typedef RETCODE (SQL_API * pfnSQLSetConnectOption)(
253
+ HDBC hdbc,
254
+ UWORD fOption,
255
+ UDWORD vParam);
256
+
257
+ typedef RETCODE (SQL_API * pfnSQLDrivers)(
258
+ HENV henv,
259
+ UWORD fDirection,
260
+ UCHAR FAR *szDriverDesc,
261
+ SWORD cbDriverDescMax,
262
+ SWORD FAR *pcbDriverDesc,
263
+ UCHAR FAR *szDriverAttributes,
264
+ SWORD cbDrvrAttrMax,
265
+ SWORD FAR *pcbDrvrAttr);
266
+
267
+ // typedef RETCODE (SQL_API * pfnSQLBindParameter)(
268
+ // HSTMT hstmt,
269
+ // UWORD ipar,
270
+ // SWORD fParamType,
271
+ // SWORD fCType,
272
+ // SWORD fSqlType,
273
+ // UDWORD cbColDef,
274
+ // SWORD ibScale,
275
+ // PTR rgbValue,
276
+ // SDWORD cbValueMax,
277
+ // SDWORD FAR *pcbValue);
278
+
279
+ typedef RETCODE (SQL_API * pfnSQLDataSources)(
280
+ HENV henv,
281
+ UWORD fDirection,
282
+ UCHAR FAR *szDSN,
283
+ SWORD cbDSNMax,
284
+ SWORD FAR *pcbDSN,
285
+ UCHAR FAR *szDescription,
286
+ SWORD cbDescriptionMax,
287
+ SWORD FAR *pcbDescription);
288
+
289
+ typedef RETCODE (SQL_API * pfnSQLGetInfo)(
290
+ HDBC hdbc,
291
+ UWORD fInfoType,
292
+ PTR rgbInfoValue,
293
+ SWORD cbInfoValueMax,
294
+ SWORD FAR *pcbInfoValue);
295
+
296
+ typedef RETCODE (SQL_API * pfnSQLMoreResults)(
297
+ HSTMT hstmt);
298
+
299
+ extern pfnSQLGetData pSQLGetData;
300
+ extern pfnSQLGetFunctions pSQLGetFunctions;
301
+ extern pfnSQLAllocConnect pSQLAllocConnect;
302
+ extern pfnSQLAllocEnv pSQLAllocEnv;
303
+ extern pfnSQLAllocStmt pSQLAllocStmt;
304
+ extern pfnSQLBindCol pSQLBindCol;
305
+ extern pfnSQLCancel pSQLCancel;
306
+ extern pfnSQLColAttributes pSQLColAttributes;
307
+ extern pfnSQLConnect pSQLConnect;
308
+ extern pfnSQLDescribeCol pSQLDescribeCol;
309
+ extern pfnSQLDisconnect pSQLDisconnect;
310
+ extern pfnSQLError pSQLError;
311
+ extern pfnSQLExecDirect pSQLExecDirect;
312
+ extern pfnSQLExecute pSQLExecute;
313
+ extern pfnSQLFetch pSQLFetch;
314
+ extern pfnSQLGetDiagRec pSQLGetDiagRec;
315
+ extern pfnSQLGetDiagField pSQLGetDiagField;
316
+ extern pfnSQLFreeHandle pSQLFreeHandle;
317
+ extern pfnSQLFetchScroll pSQLFetchScroll;
318
+ extern pfnSQLFetchScroll pSQLFetchScroll;
319
+ extern pfnSQLColAttribute pSQLColAttribute;
320
+ extern pfnSQLSetConnectAttr pSQLSetConnectAttr;
321
+ extern pfnSQLDriverConnect pSQLDriverConnect;
322
+ extern pfnSQLAllocHandle pSQLAllocHandle;
323
+ extern pfnSQLRowCount pSQLRowCount;
324
+ extern pfnSQLNumResultCols pSQLNumResultCols;
325
+ extern pfnSQLEndTran pSQLEndTran;
326
+ //extern pfnSQLExecDirect pSQLExecDirect;
327
+ extern pfnSQLTables pSQLTables;
328
+ extern pfnSQLColumns pSQLColumns;
329
+ // extern pfnSQLBindParameter pSQLBindParameter;
330
+ extern pfnSQLPrimaryKeys pSQLPrimaryKeys;
331
+ extern pfnSQLSetEnvAttr pSQLSetEnvAttr;
332
+ extern pfnSQLFreeConnect pSQLFreeConnect;
333
+ extern pfnSQLFreeEnv pSQLFreeEnv;
334
+ extern pfnSQLFreeStmt pSQLFreeStmt;
335
+ extern pfnSQLGetCursorName pSQLGetCursorName;
336
+ extern pfnSQLNumResultCols pSQLNumResultCols;
337
+ extern pfnSQLPrepare pSQLPrepare;
338
+ extern pfnSQLRowCount pSQLRowCount;
339
+ extern pfnSQLSetCursorName pSQLSetCursorName;
340
+ extern pfnSQLTransact pSQLTransact;
341
+ extern pfnSQLSetConnectOption pSQLSetConnectOption;
342
+ extern pfnSQLDrivers pSQLDrivers;
343
+ extern pfnSQLDataSources pSQLDataSources;
344
+ extern pfnSQLBindParameter pSQLBindParameter;
345
+ extern pfnSQLGetInfo pSQLGetInfo;
346
+ extern pfnSQLMoreResults pSQLMoreResults;
347
+
348
+ BOOL DynLoadODBC( char* odbcModuleName );
349
+
350
+ #define SQLAllocEnv pSQLAllocEnv
351
+ #define SQLAllocConnect pSQLAllocConnect
352
+ #define SQLSetConnectOption pSQLSetConnectOption
353
+ #define SQLAllocStmt pSQLAllocStmt
354
+ #define SQLGetFunctions pSQLGetFunctions
355
+ #define SQLError pSQLError
356
+ #define SQLGetData pSQLGetData
357
+ #define SQLMoreResults pSQLMoreResults
358
+ #define SQLPrepare pSQLPrepare
359
+ #define SQLExecute pSQLExecute
360
+ #define SQLGetDiagRec pSQLGetDiagRec
361
+ #define SQLGetDiagField pSQLGetDiagField
362
+ #define SQLFreeHandle pSQLFreeHandle
363
+ #define SQLFreeStmt pSQLFreeStmt
364
+ #define SQLFetchScroll pSQLFetchScroll
365
+ #define SQLFetch pSQLFetch
366
+ #define SQLBindCol pSQLBindCol
367
+ #define SQLColAttribute pSQLColAttribute
368
+ #define SQLGetInfo pSQLGetInfo
369
+ #define SQLDriverConnect pSQLDriverConnect
370
+ #define SQLAllocHandle pSQLAllocHandle
371
+ #define SQLDisconnect pSQLDisconnect
372
+ #define SQLRowCount pSQLRowCount
373
+ #define SQLNumResultCols pSQLNumResultCols
374
+ #define SQLSetConnectAttr pSQLSetConnectAttr
375
+ #define SQLEndTran pSQLEndTran
376
+ #define SQLExecDirect pSQLExecDirect
377
+ #define SQLTables pSQLTables
378
+ #define SQLColumns pSQLColumns
379
+ #define SQLBindParameter pSQLBindParameter
380
+ #define SQLPrimaryKeys pSQLPrimaryKeys
381
+ #define SQLSetEnvAttr pSQLSetEnvAttr
382
+ #endif
383
+ #endif // _SRC_DYNODBC_H_