~ubuntu-branches/ubuntu/gutsy/psqlodbc/gutsy

« back to all changes in this revision

Viewing changes to pgapifunc.h

  • Committer: Bazaar Package Importer
  • Author(s): Martin Pitt
  • Date: 2004-05-13 10:47:36 UTC
  • Revision ID: james.westby@ubuntu.com-20040513104736-a530gmn0p3knep89
Tags: upstream-07.03.0200
ImportĀ upstreamĀ versionĀ 07.03.0200

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*-------
 
2
 * Module:                      pgapifunc.h
 
3
 *
 
4
 *-------
 
5
 */
 
6
#ifndef _PG_API_FUNC_H__
 
7
#define _PG_API_FUNC_H__
 
8
 
 
9
#include "psqlodbc.h"
 
10
#include <stdio.h>
 
11
#include <string.h>
 
12
 
 
13
/*      Internal flags for catalog functions */
 
14
#define PODBC_NOT_SEARCH_PATTERN        1L
 
15
/*      Flags for the error handling */
 
16
#define PODBC_ALLOW_PARTIAL_EXTRACT     1L
 
17
#define PODBC_ERROR_CLEAR               (1L << 1)
 
18
 
 
19
RETCODE SQL_API PGAPI_AllocConnect(HENV EnvironmentHandle,
 
20
                                   HDBC FAR * ConnectionHandle);
 
21
RETCODE SQL_API PGAPI_AllocEnv(HENV FAR * EnvironmentHandle);
 
22
RETCODE SQL_API PGAPI_AllocStmt(HDBC ConnectionHandle,
 
23
                                HSTMT *StatementHandle);
 
24
RETCODE SQL_API PGAPI_BindCol(HSTMT StatementHandle,
 
25
                          SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType,
 
26
                          PTR TargetValue, SQLINTEGER BufferLength,
 
27
                          SQLINTEGER *StrLen_or_Ind);
 
28
RETCODE SQL_API PGAPI_Cancel(HSTMT StatementHandle);
 
29
RETCODE SQL_API PGAPI_Columns(HSTMT StatementHandle,
 
30
                          SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
 
31
                          SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
 
32
                          SQLCHAR *TableName, SQLSMALLINT NameLength3,
 
33
                          SQLCHAR *ColumnName, SQLSMALLINT NameLength4,
 
34
                          UWORD flag);
 
35
RETCODE SQL_API PGAPI_Connect(HDBC ConnectionHandle,
 
36
                          SQLCHAR *ServerName, SQLSMALLINT NameLength1,
 
37
                          SQLCHAR *UserName, SQLSMALLINT NameLength2,
 
38
                          SQLCHAR *Authentication, SQLSMALLINT NameLength3);
 
39
RETCODE SQL_API PGAPI_DriverConnect(HDBC hdbc, HWND hwnd,
 
40
                                        UCHAR FAR * szConnStrIn, SWORD cbConnStrIn,
 
41
                                        UCHAR FAR * szConnStrOut, SWORD cbConnStrOutMax,
 
42
                                        SWORD FAR * pcbConnStrOut, UWORD fDriverCompletion);
 
43
RETCODE SQL_API PGAPI_BrowseConnect(HDBC hdbc,
 
44
                                        SQLCHAR *szConnStrIn, SQLSMALLINT cbConnStrIn,
 
45
                                        SQLCHAR *szConnStrOut, SQLSMALLINT cbConnStrOutMax,
 
46
                                        SQLSMALLINT *pcbConnStrOut);
 
47
RETCODE SQL_API PGAPI_DataSources(HENV EnvironmentHandle,
 
48
                                  SQLUSMALLINT Direction, SQLCHAR *ServerName,
 
49
                                  SQLSMALLINT BufferLength1, SQLSMALLINT *NameLength1,
 
50
                                  SQLCHAR *Description, SQLSMALLINT BufferLength2,
 
51
                                  SQLSMALLINT *NameLength2);
 
52
RETCODE SQL_API PGAPI_DescribeCol(HSTMT StatementHandle,
 
53
                                  SQLUSMALLINT ColumnNumber, SQLCHAR *ColumnName,
 
54
                                  SQLSMALLINT BufferLength, SQLSMALLINT *NameLength,
 
55
                                  SQLSMALLINT *DataType, SQLUINTEGER *ColumnSize,
 
56
                                  SQLSMALLINT *DecimalDigits, SQLSMALLINT *Nullable);
 
57
RETCODE SQL_API PGAPI_Disconnect(HDBC ConnectionHandle);
 
58
RETCODE SQL_API PGAPI_Error(HENV EnvironmentHandle,
 
59
                        HDBC ConnectionHandle, HSTMT StatementHandle,
 
60
                        SQLCHAR *Sqlstate, SQLINTEGER *NativeError,
 
61
                        SQLCHAR *MessageText, SQLSMALLINT BufferLength,
 
62
                        SQLSMALLINT *TextLength);
 
63
/* Helper functions for Error handling */
 
64
RETCODE SQL_API PGAPI_EnvError(HENV EnvironmentHandle, SWORD RecNumber,
 
65
                        SQLCHAR *Sqlstate, SQLINTEGER *NativeError,
 
66
                        SQLCHAR *MessageText, SQLSMALLINT BufferLength,
 
67
                        SQLSMALLINT *TextLength, UWORD flag);
 
68
RETCODE SQL_API PGAPI_ConnectError(HDBC ConnectionHandle, SWORD RecNumber,
 
69
                        SQLCHAR *Sqlstate, SQLINTEGER *NativeError,
 
70
                        SQLCHAR *MessageText, SQLSMALLINT BufferLength,
 
71
                        SQLSMALLINT *TextLength, UWORD flag);
 
72
RETCODE SQL_API PGAPI_StmtError(HSTMT StatementHandle, SWORD RecNumber,
 
73
                        SQLCHAR *Sqlstate, SQLINTEGER *NativeError,
 
74
                        SQLCHAR *MessageText, SQLSMALLINT BufferLength,
 
75
                        SQLSMALLINT *TextLength, UWORD flag);
 
76
 
 
77
RETCODE SQL_API PGAPI_ExecDirect(HSTMT StatementHandle,
 
78
                                 SQLCHAR *StatementText, SQLINTEGER TextLength);
 
79
RETCODE SQL_API PGAPI_Execute(HSTMT StatementHandle);
 
80
RETCODE SQL_API PGAPI_Fetch(HSTMT StatementHandle);
 
81
RETCODE SQL_API PGAPI_FreeConnect(HDBC ConnectionHandle);
 
82
RETCODE SQL_API PGAPI_FreeEnv(HENV EnvironmentHandle);
 
83
RETCODE SQL_API PGAPI_FreeStmt(HSTMT StatementHandle,
 
84
                           SQLUSMALLINT Option);
 
85
RETCODE SQL_API PGAPI_GetConnectOption(HDBC ConnectionHandle,
 
86
                                           SQLUSMALLINT Option, PTR Value);
 
87
RETCODE SQL_API PGAPI_GetCursorName(HSTMT StatementHandle,
 
88
                                        SQLCHAR *CursorName, SQLSMALLINT BufferLength,
 
89
                                        SQLSMALLINT *NameLength);
 
90
RETCODE SQL_API PGAPI_GetData(HSTMT StatementHandle,
 
91
                          SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType,
 
92
                          PTR TargetValue, SQLINTEGER BufferLength,
 
93
                          SQLINTEGER *StrLen_or_Ind);
 
94
RETCODE SQL_API PGAPI_GetFunctions(HDBC ConnectionHandle,
 
95
                                   SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported);
 
96
RETCODE SQL_API PGAPI_GetFunctions30(HDBC ConnectionHandle,
 
97
                                         SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported);
 
98
RETCODE SQL_API PGAPI_GetInfo(HDBC ConnectionHandle,
 
99
                          SQLUSMALLINT InfoType, PTR InfoValue,
 
100
                          SQLSMALLINT BufferLength, SQLSMALLINT *StringLength);
 
101
RETCODE SQL_API PGAPI_GetInfo30(HDBC ConnectionHandle,
 
102
                                SQLUSMALLINT InfoType, PTR InfoValue,
 
103
                                SQLSMALLINT BufferLength, SQLSMALLINT *StringLength);
 
104
RETCODE SQL_API PGAPI_GetStmtOption(HSTMT StatementHandle,
 
105
                                        SQLUSMALLINT Option, PTR Value);
 
106
RETCODE SQL_API PGAPI_GetTypeInfo(HSTMT StatementHandle,
 
107
                                  SQLSMALLINT DataType);
 
108
RETCODE SQL_API PGAPI_NumResultCols(HSTMT StatementHandle,
 
109
                                        SQLSMALLINT *ColumnCount);
 
110
RETCODE SQL_API PGAPI_ParamData(HSTMT StatementHandle,
 
111
                                PTR *Value);
 
112
RETCODE SQL_API PGAPI_Prepare(HSTMT StatementHandle,
 
113
                          SQLCHAR *StatementText, SQLINTEGER TextLength);
 
114
RETCODE SQL_API PGAPI_PutData(HSTMT StatementHandle,
 
115
                          PTR Data, SQLINTEGER StrLen_or_Ind);
 
116
RETCODE SQL_API PGAPI_RowCount(HSTMT StatementHandle,
 
117
                           SQLINTEGER *RowCount);
 
118
RETCODE SQL_API PGAPI_SetConnectOption(HDBC ConnectionHandle,
 
119
                                           SQLUSMALLINT Option, SQLUINTEGER Value);
 
120
RETCODE SQL_API PGAPI_SetCursorName(HSTMT StatementHandle,
 
121
                                        SQLCHAR *CursorName, SQLSMALLINT NameLength);
 
122
RETCODE SQL_API PGAPI_SetParam(HSTMT StatementHandle,
 
123
                           SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType,
 
124
                           SQLSMALLINT ParameterType, SQLUINTEGER LengthPrecision,
 
125
                           SQLSMALLINT ParameterScale, PTR ParameterValue,
 
126
                           SQLINTEGER *StrLen_or_Ind);
 
127
RETCODE SQL_API PGAPI_SetStmtOption(HSTMT StatementHandle,
 
128
                                        SQLUSMALLINT Option, SQLUINTEGER Value);
 
129
RETCODE SQL_API PGAPI_SpecialColumns(HSTMT StatementHandle,
 
130
                                         SQLUSMALLINT IdentifierType, SQLCHAR *CatalogName,
 
131
                                         SQLSMALLINT NameLength1, SQLCHAR *SchemaName,
 
132
                                         SQLSMALLINT NameLength2, SQLCHAR *TableName,
 
133
                                         SQLSMALLINT NameLength3, SQLUSMALLINT Scope,
 
134
                                         SQLUSMALLINT Nullable);
 
135
RETCODE SQL_API PGAPI_Statistics(HSTMT StatementHandle,
 
136
                                 SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
 
137
                                 SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
 
138
                                 SQLCHAR *TableName, SQLSMALLINT NameLength3,
 
139
                                 SQLUSMALLINT Unique, SQLUSMALLINT Reserved);
 
140
RETCODE SQL_API PGAPI_Tables(HSTMT StatementHandle,
 
141
                         SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
 
142
                         SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
 
143
                         SQLCHAR *TableName, SQLSMALLINT NameLength3,
 
144
                         SQLCHAR *TableType, SQLSMALLINT NameLength4);
 
145
RETCODE SQL_API PGAPI_Transact(HENV EnvironmentHandle,
 
146
                           HDBC ConnectionHandle, SQLUSMALLINT CompletionType);
 
147
RETCODE SQL_API PGAPI_ColAttributes(
 
148
                                        HSTMT hstmt,
 
149
                                        SQLUSMALLINT icol,
 
150
                                        SQLUSMALLINT fDescType,
 
151
                                        PTR rgbDesc,
 
152
                                        SQLSMALLINT cbDescMax,
 
153
                                        SQLSMALLINT *pcbDesc,
 
154
                                        SQLINTEGER *pfDesc);
 
155
RETCODE SQL_API PGAPI_ColumnPrivileges(
 
156
                                           HSTMT hstmt,
 
157
                                           SQLCHAR *szCatalogName,
 
158
                                           SQLSMALLINT cbCatalogName,
 
159
                                           SQLCHAR *szSchemaName,
 
160
                                           SQLSMALLINT cbSchemaName,
 
161
                                           SQLCHAR *szTableName,
 
162
                                           SQLSMALLINT cbTableName,
 
163
                                           SQLCHAR *szColumnName,
 
164
                                           SQLSMALLINT cbColumnName);
 
165
RETCODE SQL_API PGAPI_DescribeParam(
 
166
                                        HSTMT hstmt,
 
167
                                        SQLUSMALLINT ipar,
 
168
                                        SQLSMALLINT *pfSqlType,
 
169
                                        SQLUINTEGER *pcbParamDef,
 
170
                                        SQLSMALLINT *pibScale,
 
171
                                        SQLSMALLINT *pfNullable);
 
172
RETCODE SQL_API PGAPI_ExtendedFetch(
 
173
                                        HSTMT hstmt,
 
174
                                        SQLUSMALLINT fFetchType,
 
175
                                        SQLINTEGER irow,
 
176
                                        SQLUINTEGER *pcrow,
 
177
                                        SQLUSMALLINT *rgfRowStatus,
 
178
                                        SQLINTEGER FetchOffset,
 
179
                                        SQLINTEGER rowsetSize);
 
180
RETCODE SQL_API PGAPI_ForeignKeys(
 
181
                                  HSTMT hstmt,
 
182
                                  SQLCHAR *szPkCatalogName,
 
183
                                  SQLSMALLINT cbPkCatalogName,
 
184
                                  SQLCHAR *szPkSchemaName,
 
185
                                  SQLSMALLINT cbPkSchemaName,
 
186
                                  SQLCHAR *szPkTableName,
 
187
                                  SQLSMALLINT cbPkTableName,
 
188
                                  SQLCHAR *szFkCatalogName,
 
189
                                  SQLSMALLINT cbFkCatalogName,
 
190
                                  SQLCHAR *szFkSchemaName,
 
191
                                  SQLSMALLINT cbFkSchemaName,
 
192
                                  SQLCHAR *szFkTableName,
 
193
                                  SQLSMALLINT cbFkTableName);
 
194
RETCODE SQL_API PGAPI_MoreResults(
 
195
                                  HSTMT hstmt);
 
196
RETCODE SQL_API PGAPI_NativeSql(
 
197
                                HDBC hdbc,
 
198
                                SQLCHAR *szSqlStrIn,
 
199
                                SQLINTEGER cbSqlStrIn,
 
200
                                SQLCHAR *szSqlStr,
 
201
                                SQLINTEGER cbSqlStrMax,
 
202
                                SQLINTEGER *pcbSqlStr);
 
203
RETCODE SQL_API PGAPI_NumParams(
 
204
                                HSTMT hstmt,
 
205
                                SQLSMALLINT *pcpar);
 
206
RETCODE SQL_API PGAPI_ParamOptions(
 
207
                                   HSTMT hstmt,
 
208
                                   SQLUINTEGER crow,
 
209
                                   SQLUINTEGER *pirow);
 
210
RETCODE SQL_API PGAPI_PrimaryKeys(
 
211
                                  HSTMT hstmt,
 
212
                                  SQLCHAR *szCatalogName,
 
213
                                  SQLSMALLINT cbCatalogName,
 
214
                                  SQLCHAR *szSchemaName,
 
215
                                  SQLSMALLINT cbSchemaName,
 
216
                                  SQLCHAR *szTableName,
 
217
                                  SQLSMALLINT cbTableName);
 
218
RETCODE SQL_API PGAPI_ProcedureColumns(
 
219
                                           HSTMT hstmt,
 
220
                                           SQLCHAR *szCatalogName,
 
221
                                           SQLSMALLINT cbCatalogName,
 
222
                                           SQLCHAR *szSchemaName,
 
223
                                           SQLSMALLINT cbSchemaName,
 
224
                                           SQLCHAR *szProcName,
 
225
                                           SQLSMALLINT cbProcName,
 
226
                                           SQLCHAR *szColumnName,
 
227
                                           SQLSMALLINT cbColumnName);
 
228
RETCODE SQL_API PGAPI_Procedures(
 
229
                                 HSTMT hstmt,
 
230
                                 SQLCHAR *szCatalogName,
 
231
                                 SQLSMALLINT cbCatalogName,
 
232
                                 SQLCHAR *szSchemaName,
 
233
                                 SQLSMALLINT cbSchemaName,
 
234
                                 SQLCHAR *szProcName,
 
235
                                 SQLSMALLINT cbProcName);
 
236
RETCODE SQL_API PGAPI_SetPos(
 
237
                         HSTMT hstmt,
 
238
                         SQLUSMALLINT irow,
 
239
                         SQLUSMALLINT fOption,
 
240
                         SQLUSMALLINT fLock);
 
241
RETCODE SQL_API PGAPI_TablePrivileges(
 
242
                                          HSTMT hstmt,
 
243
                                          SQLCHAR *szCatalogName,
 
244
                                          SQLSMALLINT cbCatalogName,
 
245
                                          SQLCHAR *szSchemaName,
 
246
                                          SQLSMALLINT cbSchemaName,
 
247
                                          SQLCHAR *szTableName,
 
248
                                          SQLSMALLINT cbTableName,
 
249
                                          UWORD flag);
 
250
RETCODE SQL_API PGAPI_BindParameter(
 
251
                                        HSTMT hstmt,
 
252
                                        SQLUSMALLINT ipar,
 
253
                                        SQLSMALLINT fParamType,
 
254
                                        SQLSMALLINT fCType,
 
255
                                        SQLSMALLINT fSqlType,
 
256
                                        SQLUINTEGER cbColDef,
 
257
                                        SQLSMALLINT ibScale,
 
258
                                        PTR rgbValue,
 
259
                                        SQLINTEGER cbValueMax,
 
260
                                        SQLINTEGER *pcbValue);
 
261
RETCODE SQL_API PGAPI_SetScrollOptions(
 
262
                                           HSTMT hstmt,
 
263
                                           UWORD fConcurrency,
 
264
                                           SDWORD crowKeyset,
 
265
                                           UWORD crowRowset);
 
266
 
 
267
#if (ODBCVER >= 0x0300)
 
268
RETCODE SQL_API PGAPI_GetDiagRec(SQLSMALLINT HandleType, SQLHANDLE Handle,
 
269
                SQLSMALLINT RecNumber, SQLCHAR *Sqlstate,
 
270
                SQLINTEGER *NativeError, SQLCHAR *MessageText,
 
271
                SQLSMALLINT BufferLength, SQLSMALLINT *TextLength);
 
272
RETCODE SQL_API PGAPI_GetDiagField(SQLSMALLINT HandleType, SQLHANDLE Handle,
 
273
                SQLSMALLINT RecNumber, SQLSMALLINT DiagIdentifier,
 
274
                PTR DiagInfoPtr, SQLSMALLINT BufferLength,
 
275
                SQLSMALLINT *StringLengthPtr);
 
276
RETCODE SQL_API PGAPI_GetConnectAttr(HDBC ConnectionHandle,
 
277
                        SQLINTEGER Attribute, PTR Value,
 
278
                        SQLINTEGER BufferLength, SQLINTEGER *StringLength);
 
279
RETCODE SQL_API PGAPI_GetStmtAttr(HSTMT StatementHandle,
 
280
                SQLINTEGER Attribute, PTR Value,
 
281
                SQLINTEGER BufferLength, SQLINTEGER *StringLength);
 
282
RETCODE SQL_API PGAPI_SetConnectAttr(HDBC ConnectionHandle,
 
283
                        SQLINTEGER Attribute, PTR Value,
 
284
                        SQLINTEGER StringLength);
 
285
RETCODE SQL_API PGAPI_SetStmtAttr(HSTMT StatementHandle,
 
286
                SQLINTEGER Attribute, PTR Value,
 
287
                SQLINTEGER StringLength);
 
288
RETCODE SQL_API PGAPI_BulkOperations(HSTMT StatementHandle,
 
289
                        SQLSMALLINT operation);
 
290
RETCODE SQL_API PGAPI_SetDescField(SQLHDESC DescriptorHandle,
 
291
                        SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier,
 
292
                        PTR Value, SQLINTEGER BufferLength);
 
293
RETCODE SQL_API PGAPI_GetDescField(SQLHDESC DescriptorHandle,
 
294
                        SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier,
 
295
                        PTR Value, SQLINTEGER BufferLength, SQLINTEGER *StringLength);
 
296
#endif /* ODBCVER */
 
297
#endif   /* define_PG_API_FUNC_H__ */