aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/odbc/pgapifunc.h
blob: 93f43fb6d02ed2662f299d0516b1b50e21efdd63 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
/*-------
 * Module:			pgapifunc.h
 *
 *-------
 */

#ifdef HAVE_CONFIG_H
#include "config.h"
#endif

#include "psqlodbc.h"
#include <stdio.h>
#include <string.h>

#ifndef WIN32
#include "iodbc.h"
#include "isqlext.h"
#else
#include <windows.h>
#include <sqlext.h>
#endif

SQLRETURN  SQL_API PGAPI_AllocConnect(SQLHENV EnvironmentHandle,
           SQLHDBC *ConnectionHandle);
SQLRETURN  SQL_API PGAPI_AllocEnv(SQLHENV *EnvironmentHandle);
SQLRETURN  SQL_API PGAPI_AllocStmt(SQLHDBC ConnectionHandle,
           SQLHSTMT *StatementHandle);
SQLRETURN  SQL_API PGAPI_BindCol(SQLHSTMT StatementHandle, 
		   SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, 
		   SQLPOINTER TargetValue, SQLINTEGER BufferLength, 
	   	   SQLINTEGER *StrLen_or_Ind);
SQLRETURN  SQL_API PGAPI_Cancel(SQLHSTMT StatementHandle);
SQLRETURN  SQL_API PGAPI_Columns(SQLHSTMT StatementHandle,
           SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
           SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
           SQLCHAR *TableName, SQLSMALLINT NameLength3,
           SQLCHAR *ColumnName, SQLSMALLINT NameLength4);
SQLRETURN  SQL_API PGAPI_Connect(SQLHDBC ConnectionHandle,
           SQLCHAR *ServerName, SQLSMALLINT NameLength1,
           SQLCHAR *UserName, SQLSMALLINT NameLength2,
           SQLCHAR *Authentication, SQLSMALLINT NameLength3);
SQLRETURN  SQL_API PGAPI_DriverConnect(HDBC hdbc, HWND hwnd,
	   UCHAR FAR *szConnStrIn, SWORD cbConnStrIn,
	   UCHAR FAR *szConnStrOut, SWORD cbConnStrOutMax,
	   SWORD FAR *pcbConnStrOut, UWORD fDriverCompletion);
SQLRETURN SQL_API PGAPI_BrowseConnect(SQLHDBC hdbc,
	  SQLCHAR *szConnStrIn, SQLSMALLINT cbConnStrIn,
	  SQLCHAR *szConnStrOut, SQLSMALLINT cbConnStrOutMax,
	  SQLSMALLINT *pcbConnStrOut);
SQLRETURN  SQL_API PGAPI_DataSources(SQLHENV EnvironmentHandle,
           SQLUSMALLINT Direction, SQLCHAR *ServerName,
           SQLSMALLINT BufferLength1, SQLSMALLINT *NameLength1,
           SQLCHAR *Description, SQLSMALLINT BufferLength2,
           SQLSMALLINT *NameLength2);
SQLRETURN  SQL_API PGAPI_DescribeCol(SQLHSTMT StatementHandle,
           SQLUSMALLINT ColumnNumber, SQLCHAR *ColumnName,
           SQLSMALLINT BufferLength, SQLSMALLINT *NameLength,
           SQLSMALLINT *DataType, SQLUINTEGER *ColumnSize,
           SQLSMALLINT *DecimalDigits, SQLSMALLINT *Nullable);
SQLRETURN  SQL_API PGAPI_Disconnect(SQLHDBC ConnectionHandle);
SQLRETURN  SQL_API PGAPI_Error(SQLHENV EnvironmentHandle,
           SQLHDBC ConnectionHandle, SQLHSTMT StatementHandle,
           SQLCHAR *Sqlstate, SQLINTEGER *NativeError,
           SQLCHAR *MessageText, SQLSMALLINT BufferLength,
           SQLSMALLINT *TextLength);
SQLRETURN  SQL_API PGAPI_ExecDirect(SQLHSTMT StatementHandle,
           SQLCHAR *StatementText, SQLINTEGER TextLength);
SQLRETURN  SQL_API PGAPI_Execute(SQLHSTMT StatementHandle);
SQLRETURN  SQL_API PGAPI_Fetch(SQLHSTMT StatementHandle);
SQLRETURN  SQL_API PGAPI_FreeConnect(SQLHDBC ConnectionHandle);
SQLRETURN  SQL_API PGAPI_FreeEnv(SQLHENV EnvironmentHandle);
SQLRETURN  SQL_API PGAPI_FreeStmt(SQLHSTMT StatementHandle,
           SQLUSMALLINT Option);
SQLRETURN  SQL_API PGAPI_GetConnectOption(SQLHDBC ConnectionHandle,
           SQLUSMALLINT Option, SQLPOINTER Value);
SQLRETURN  SQL_API PGAPI_GetCursorName(SQLHSTMT StatementHandle,
           SQLCHAR *CursorName, SQLSMALLINT BufferLength,
           SQLSMALLINT *NameLength);
SQLRETURN  SQL_API PGAPI_GetData(SQLHSTMT StatementHandle,
           SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType,
           SQLPOINTER TargetValue, SQLINTEGER BufferLength,
           SQLINTEGER *StrLen_or_Ind);
SQLRETURN  SQL_API PGAPI_GetFunctions(SQLHDBC ConnectionHandle,
           SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported);
SQLRETURN  SQL_API PGAPI_GetFunctions30(SQLHDBC ConnectionHandle,
           SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported);
SQLRETURN  SQL_API PGAPI_GetInfo(SQLHDBC ConnectionHandle,
           SQLUSMALLINT InfoType, SQLPOINTER InfoValue,
           SQLSMALLINT BufferLength, SQLSMALLINT *StringLength);
SQLRETURN  SQL_API PGAPI_GetInfo30(SQLHDBC ConnectionHandle,
           SQLUSMALLINT InfoType, SQLPOINTER InfoValue,
           SQLSMALLINT BufferLength, SQLSMALLINT *StringLength);
SQLRETURN  SQL_API PGAPI_GetStmtOption(SQLHSTMT StatementHandle,
           SQLUSMALLINT Option, SQLPOINTER Value);
SQLRETURN  SQL_API PGAPI_GetTypeInfo(SQLHSTMT StatementHandle,
           SQLSMALLINT DataType);
SQLRETURN  SQL_API PGAPI_NumResultCols(SQLHSTMT StatementHandle,
           SQLSMALLINT *ColumnCount);
SQLRETURN  SQL_API PGAPI_ParamData(SQLHSTMT StatementHandle,
           SQLPOINTER *Value);
SQLRETURN  SQL_API PGAPI_Prepare(SQLHSTMT StatementHandle,
           SQLCHAR *StatementText, SQLINTEGER TextLength);
SQLRETURN  SQL_API PGAPI_PutData(SQLHSTMT StatementHandle,
           SQLPOINTER Data, SQLINTEGER StrLen_or_Ind);
SQLRETURN  SQL_API PGAPI_RowCount(SQLHSTMT StatementHandle, 
	   SQLINTEGER *RowCount);
SQLRETURN  SQL_API PGAPI_SetConnectOption(SQLHDBC ConnectionHandle,
           SQLUSMALLINT Option, SQLUINTEGER Value);
SQLRETURN  SQL_API PGAPI_SetCursorName(SQLHSTMT StatementHandle,
           SQLCHAR *CursorName, SQLSMALLINT NameLength);
SQLRETURN  SQL_API PGAPI_SetParam(SQLHSTMT StatementHandle,
           SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType,
           SQLSMALLINT ParameterType, SQLUINTEGER LengthPrecision,
           SQLSMALLINT ParameterScale, SQLPOINTER ParameterValue,
           SQLINTEGER *StrLen_or_Ind);
SQLRETURN  SQL_API PGAPI_SetStmtOption(SQLHSTMT StatementHandle,
           SQLUSMALLINT Option, SQLUINTEGER Value);
SQLRETURN  SQL_API PGAPI_SpecialColumns(SQLHSTMT StatementHandle,
           SQLUSMALLINT IdentifierType, SQLCHAR *CatalogName,
           SQLSMALLINT NameLength1, SQLCHAR *SchemaName,
           SQLSMALLINT NameLength2, SQLCHAR *TableName,
           SQLSMALLINT NameLength3, SQLUSMALLINT Scope,
           SQLUSMALLINT Nullable);
SQLRETURN  SQL_API PGAPI_Statistics(SQLHSTMT StatementHandle,
           SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
           SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
           SQLCHAR *TableName, SQLSMALLINT NameLength3,
           SQLUSMALLINT Unique, SQLUSMALLINT Reserved);
SQLRETURN  SQL_API PGAPI_Tables(SQLHSTMT StatementHandle,
           SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
           SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
           SQLCHAR *TableName, SQLSMALLINT NameLength3,
           SQLCHAR *TableType, SQLSMALLINT NameLength4);
SQLRETURN  SQL_API PGAPI_Transact(SQLHENV EnvironmentHandle,
           SQLHDBC ConnectionHandle, SQLUSMALLINT CompletionType);
SQLRETURN SQL_API PGAPI_ColAttributes(
	   SQLHSTMT hstmt,
	   SQLUSMALLINT icol,
	   SQLUSMALLINT fDescType,
	   SQLPOINTER  rgbDesc,
	   SQLSMALLINT cbDescMax,
	   SQLSMALLINT *pcbDesc,
	   SQLINTEGER *pfDesc);
SQLRETURN SQL_API PGAPI_ColumnPrivileges(
    SQLHSTMT           hstmt,
    SQLCHAR 		  *szCatalogName,
    SQLSMALLINT        cbCatalogName,
    SQLCHAR 		  *szSchemaName,
    SQLSMALLINT        cbSchemaName,
    SQLCHAR 		  *szTableName,
    SQLSMALLINT        cbTableName,
    SQLCHAR 		  *szColumnName,
    SQLSMALLINT        cbColumnName);
SQLRETURN SQL_API PGAPI_DescribeParam(
    SQLHSTMT           hstmt,
    SQLUSMALLINT       ipar,
    SQLSMALLINT 	  *pfSqlType,
    SQLUINTEGER 	  *pcbParamDef,
    SQLSMALLINT 	  *pibScale,
    SQLSMALLINT 	  *pfNullable);
SQLRETURN SQL_API PGAPI_ExtendedFetch(
    SQLHSTMT           hstmt,
    SQLUSMALLINT       fFetchType,
    SQLINTEGER         irow,
    SQLUINTEGER 	  *pcrow,
    SQLUSMALLINT 	  *rgfRowStatus);
SQLRETURN SQL_API PGAPI_ForeignKeys(
    SQLHSTMT           hstmt,
    SQLCHAR 		  *szPkCatalogName,
    SQLSMALLINT        cbPkCatalogName,
    SQLCHAR 		  *szPkSchemaName,
    SQLSMALLINT        cbPkSchemaName,
    SQLCHAR 		  *szPkTableName,
    SQLSMALLINT        cbPkTableName,
    SQLCHAR 		  *szFkCatalogName,
    SQLSMALLINT        cbFkCatalogName,
    SQLCHAR 		  *szFkSchemaName,
    SQLSMALLINT        cbFkSchemaName,
    SQLCHAR 		  *szFkTableName,
    SQLSMALLINT        cbFkTableName);
SQLRETURN SQL_API PGAPI_MoreResults(
    SQLHSTMT           hstmt);
SQLRETURN SQL_API PGAPI_NativeSql(
    SQLHDBC            hdbc,
    SQLCHAR 		  *szSqlStrIn,
    SQLINTEGER         cbSqlStrIn,
    SQLCHAR 		  *szSqlStr,
    SQLINTEGER         cbSqlStrMax,
    SQLINTEGER 		  *pcbSqlStr);
SQLRETURN SQL_API PGAPI_NumParams(
    SQLHSTMT           hstmt,
    SQLSMALLINT 	  *pcpar);
SQLRETURN SQL_API PGAPI_ParamOptions(
    SQLHSTMT           hstmt,
    SQLUINTEGER        crow,
    SQLUINTEGER 	  *pirow);
SQLRETURN SQL_API PGAPI_PrimaryKeys(
    SQLHSTMT           hstmt,
    SQLCHAR 		  *szCatalogName,
    SQLSMALLINT        cbCatalogName,
    SQLCHAR 		  *szSchemaName,
    SQLSMALLINT        cbSchemaName,
    SQLCHAR 		  *szTableName,
    SQLSMALLINT        cbTableName);
SQLRETURN SQL_API PGAPI_ProcedureColumns(
    SQLHSTMT           hstmt,
    SQLCHAR 		  *szCatalogName,
    SQLSMALLINT        cbCatalogName,
    SQLCHAR 		  *szSchemaName,
    SQLSMALLINT        cbSchemaName,
    SQLCHAR 		  *szProcName,
    SQLSMALLINT        cbProcName,
    SQLCHAR 		  *szColumnName,
    SQLSMALLINT        cbColumnName);
SQLRETURN SQL_API PGAPI_Procedures(
    SQLHSTMT           hstmt,
    SQLCHAR 		  *szCatalogName,
    SQLSMALLINT        cbCatalogName,
    SQLCHAR 		  *szSchemaName,
    SQLSMALLINT        cbSchemaName,
    SQLCHAR 		  *szProcName,
    SQLSMALLINT        cbProcName);
SQLRETURN SQL_API PGAPI_SetPos(
    SQLHSTMT           hstmt,
    SQLUSMALLINT       irow,
    SQLUSMALLINT       fOption,
    SQLUSMALLINT       fLock);
SQLRETURN SQL_API PGAPI_TablePrivileges(
    SQLHSTMT           hstmt,
    SQLCHAR 		  *szCatalogName,
    SQLSMALLINT        cbCatalogName,
    SQLCHAR 		  *szSchemaName,
    SQLSMALLINT        cbSchemaName,
    SQLCHAR 		  *szTableName,
    SQLSMALLINT        cbTableName);
SQLRETURN SQL_API PGAPI_BindParameter(
    SQLHSTMT           hstmt,
    SQLUSMALLINT       ipar,
    SQLSMALLINT        fParamType,
    SQLSMALLINT        fCType,
    SQLSMALLINT        fSqlType,
    SQLUINTEGER        cbColDef,
    SQLSMALLINT        ibScale,
    SQLPOINTER         rgbValue,
    SQLINTEGER         cbValueMax,
    SQLINTEGER 		  *pcbValue);

/* #include "pg_converr_check.h" */