xref: /trunk/main/unixODBC/inc/sql.h (revision 24201887d045077ca6577569d19dbdc91eb93ab6)
1*24201887SPedro Giffuni /*
2cdf0e10cSrcweir  *  sql.h
3cdf0e10cSrcweir  *
4*24201887SPedro Giffuni  *  $Id: sql.h,v 1.9 2006/01/20 15:58:34 source Exp $
5cdf0e10cSrcweir  *
6*24201887SPedro Giffuni  *  ODBC defines
7*24201887SPedro Giffuni  *
8*24201887SPedro Giffuni  *  The iODBC driver manager.
9*24201887SPedro Giffuni  *
10*24201887SPedro Giffuni  *  Copyright (C) 1995 by Ke Jin <kejin@empress.com>
11*24201887SPedro Giffuni  *  Copyright (C) 1996-2006 by OpenLink Software <iodbc@openlinksw.com>
12*24201887SPedro Giffuni  *  All Rights Reserved.
13*24201887SPedro Giffuni  *
14*24201887SPedro Giffuni  *  This software is released under the terms of either of the following
15*24201887SPedro Giffuni  *  licenses:
16*24201887SPedro Giffuni  *
17*24201887SPedro Giffuni  *      - GNU Library General Public License (see LICENSE.LGPL)
18*24201887SPedro Giffuni  *      - The BSD License (see LICENSE.BSD).
19*24201887SPedro Giffuni  *
20*24201887SPedro Giffuni  *  Note that the only valid version of the LGPL license as far as this
21*24201887SPedro Giffuni  *  project is concerned is the original GNU Library General Public License
22*24201887SPedro Giffuni  *  Version 2, dated June 1991.
23*24201887SPedro Giffuni  *
24*24201887SPedro Giffuni  *  While not mandated by the BSD license, any patches you make to the
25*24201887SPedro Giffuni  *  iODBC source code may be contributed back into the iODBC project
26*24201887SPedro Giffuni  *  at your discretion. Contributions will benefit the Open Source and
27*24201887SPedro Giffuni  *  Data Access community as a whole. Submissions may be made at:
28*24201887SPedro Giffuni  *
29*24201887SPedro Giffuni  *      http://www.iodbc.org
30*24201887SPedro Giffuni  *
31*24201887SPedro Giffuni  *
32*24201887SPedro Giffuni  *  GNU Library Generic Public License Version 2
33*24201887SPedro Giffuni  *  ============================================
34*24201887SPedro Giffuni  *  This library is free software; you can redistribute it and/or
35*24201887SPedro Giffuni  *  modify it under the terms of the GNU Library General Public
36*24201887SPedro Giffuni  *  License as published by the Free Software Foundation; only
37*24201887SPedro Giffuni  *  Version 2 of the License dated June 1991.
38*24201887SPedro Giffuni  *
39*24201887SPedro Giffuni  *  This library is distributed in the hope that it will be useful,
40*24201887SPedro Giffuni  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
41*24201887SPedro Giffuni  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
42*24201887SPedro Giffuni  *  Library General Public License for more details.
43*24201887SPedro Giffuni  *
44*24201887SPedro Giffuni  *  You should have received a copy of the GNU Library General Public
45*24201887SPedro Giffuni  *  License along with this library; if not, write to the Free
46*24201887SPedro Giffuni  *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
47*24201887SPedro Giffuni  *
48*24201887SPedro Giffuni  *
49*24201887SPedro Giffuni  *  The BSD License
50*24201887SPedro Giffuni  *  ===============
51*24201887SPedro Giffuni  *  Redistribution and use in source and binary forms, with or without
52*24201887SPedro Giffuni  *  modification, are permitted provided that the following conditions
53*24201887SPedro Giffuni  *  are met:
54*24201887SPedro Giffuni  *
55*24201887SPedro Giffuni  *  1. Redistributions of source code must retain the above copyright
56*24201887SPedro Giffuni  *     notice, this list of conditions and the following disclaimer.
57*24201887SPedro Giffuni  *  2. Redistributions in binary form must reproduce the above copyright
58*24201887SPedro Giffuni  *     notice, this list of conditions and the following disclaimer in
59*24201887SPedro Giffuni  *     the documentation and/or other materials provided with the
60*24201887SPedro Giffuni  *     distribution.
61*24201887SPedro Giffuni  *  3. Neither the name of OpenLink Software Inc. nor the names of its
62*24201887SPedro Giffuni  *     contributors may be used to endorse or promote products derived
63*24201887SPedro Giffuni  *     from this software without specific prior written permission.
64*24201887SPedro Giffuni  *
65*24201887SPedro Giffuni  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
66*24201887SPedro Giffuni  *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
67*24201887SPedro Giffuni  *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
68*24201887SPedro Giffuni  *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL OPENLINK OR
69*24201887SPedro Giffuni  *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
70*24201887SPedro Giffuni  *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
71*24201887SPedro Giffuni  *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
72*24201887SPedro Giffuni  *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
73*24201887SPedro Giffuni  *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
74*24201887SPedro Giffuni  *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
75*24201887SPedro Giffuni  *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
76*24201887SPedro Giffuni  */
77cdf0e10cSrcweir 
78*24201887SPedro Giffuni #ifndef _SQL_H
79*24201887SPedro Giffuni #define _SQL_H
80cdf0e10cSrcweir 
81*24201887SPedro Giffuni /*
82*24201887SPedro Giffuni  *  Set default specification to ODBC 3.51
83*24201887SPedro Giffuni  */
84cdf0e10cSrcweir #ifndef ODBCVER
85cdf0e10cSrcweir #define ODBCVER     0x0351
86cdf0e10cSrcweir #endif
87cdf0e10cSrcweir 
88*24201887SPedro Giffuni /*
89*24201887SPedro Giffuni  *  Include Windows style defines and typedefs on Unix
90*24201887SPedro Giffuni  */
91*24201887SPedro Giffuni #ifndef _IODBCUNIX_H
92*24201887SPedro Giffuni #include <odbc/iodbcunix.h>
93*24201887SPedro Giffuni #endif
94*24201887SPedro Giffuni 
95*24201887SPedro Giffuni #ifndef _SQLTYPES_H
96*24201887SPedro Giffuni #include <odbc/sqltypes.h>
97cdf0e10cSrcweir #endif
98cdf0e10cSrcweir 
99cdf0e10cSrcweir #ifdef __cplusplus
100cdf0e10cSrcweir extern "C" {
101cdf0e10cSrcweir #endif
102cdf0e10cSrcweir 
103*24201887SPedro Giffuni /*
104*24201887SPedro Giffuni  *  Useful Constants
105*24201887SPedro Giffuni  */
106cdf0e10cSrcweir #define SQL_MAX_MESSAGE_LENGTH          512
107cdf0e10cSrcweir 
108cdf0e10cSrcweir 
109*24201887SPedro Giffuni /*
110*24201887SPedro Giffuni  *  Handle types
111*24201887SPedro Giffuni  */
112cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
113cdf0e10cSrcweir #define SQL_HANDLE_ENV              1
114cdf0e10cSrcweir #define SQL_HANDLE_DBC              2
115cdf0e10cSrcweir #define SQL_HANDLE_STMT             3
116cdf0e10cSrcweir #define SQL_HANDLE_DESC             4
117*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
118cdf0e10cSrcweir 
119*24201887SPedro Giffuni 
120*24201887SPedro Giffuni /*
121*24201887SPedro Giffuni  *  Function return codes
122*24201887SPedro Giffuni  */
123*24201887SPedro Giffuni #define SQL_SUCCESS             0
124*24201887SPedro Giffuni #define SQL_SUCCESS_WITH_INFO           1
125*24201887SPedro Giffuni #define SQL_STILL_EXECUTING         2
126*24201887SPedro Giffuni #define SQL_ERROR               (-1)
127*24201887SPedro Giffuni #define SQL_INVALID_HANDLE          (-2)
128*24201887SPedro Giffuni #define SQL_NEED_DATA               99
129cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
130*24201887SPedro Giffuni #define SQL_NO_DATA             100
131*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
132cdf0e10cSrcweir 
133*24201887SPedro Giffuni 
134*24201887SPedro Giffuni /*
135*24201887SPedro Giffuni  *  Test for SQL_SUCCESS or SQL_SUCCESS_WITH_INFO
136*24201887SPedro Giffuni  */
137*24201887SPedro Giffuni #define SQL_SUCCEEDED(rc)           (((rc) & (~1)) == 0)
138*24201887SPedro Giffuni 
139*24201887SPedro Giffuni 
140*24201887SPedro Giffuni /*
141*24201887SPedro Giffuni  *  Special length values
142*24201887SPedro Giffuni  */
143*24201887SPedro Giffuni #define SQL_NULL_DATA               (-1)
144*24201887SPedro Giffuni #define SQL_DATA_AT_EXEC            (-2)
145*24201887SPedro Giffuni 
146*24201887SPedro Giffuni 
147*24201887SPedro Giffuni /*
148*24201887SPedro Giffuni  *  Flags for null-terminated strings
149*24201887SPedro Giffuni  */
150*24201887SPedro Giffuni #define SQL_NTS                 (-3)
151*24201887SPedro Giffuni #define SQL_NTSL                (-3L)
152*24201887SPedro Giffuni 
153*24201887SPedro Giffuni 
154*24201887SPedro Giffuni /*
155*24201887SPedro Giffuni  *  Standard SQL datatypes, using ANSI type numbering
156*24201887SPedro Giffuni  */
157*24201887SPedro Giffuni #define SQL_UNKNOWN_TYPE            0
158*24201887SPedro Giffuni #define SQL_CHAR                1
159*24201887SPedro Giffuni #define SQL_NUMERIC             2
160*24201887SPedro Giffuni #define SQL_DECIMAL             3
161*24201887SPedro Giffuni #define SQL_INTEGER             4
162*24201887SPedro Giffuni #define SQL_SMALLINT                5
163*24201887SPedro Giffuni #define SQL_FLOAT               6
164*24201887SPedro Giffuni #define SQL_REAL                7
165*24201887SPedro Giffuni #define SQL_DOUBLE              8
166*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
167*24201887SPedro Giffuni #define SQL_DATETIME                9
168*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
169*24201887SPedro Giffuni #define SQL_VARCHAR             12
170*24201887SPedro Giffuni 
171*24201887SPedro Giffuni 
172*24201887SPedro Giffuni /*
173*24201887SPedro Giffuni  *  SQLGetTypeInfo request for all data types
174*24201887SPedro Giffuni  */
175*24201887SPedro Giffuni #define SQL_ALL_TYPES               0
176*24201887SPedro Giffuni 
177*24201887SPedro Giffuni 
178*24201887SPedro Giffuni /*
179*24201887SPedro Giffuni  *  Statement attribute values for date/time data types
180*24201887SPedro Giffuni  */
181*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
182*24201887SPedro Giffuni #define SQL_TYPE_DATE               91
183*24201887SPedro Giffuni #define SQL_TYPE_TIME               92
184*24201887SPedro Giffuni #define SQL_TYPE_TIMESTAMP          93
185*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
186*24201887SPedro Giffuni 
187*24201887SPedro Giffuni 
188*24201887SPedro Giffuni /*
189*24201887SPedro Giffuni  *  Date/Time length constants
190*24201887SPedro Giffuni  */
191*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
192*24201887SPedro Giffuni #define SQL_DATE_LEN                10
193*24201887SPedro Giffuni #define SQL_TIME_LEN                8   /* add P+1 if prec >0 */
194*24201887SPedro Giffuni #define SQL_TIMESTAMP_LEN           19  /* add P+1 if prec >0 */
195*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
196*24201887SPedro Giffuni 
197*24201887SPedro Giffuni 
198*24201887SPedro Giffuni /*
199*24201887SPedro Giffuni  *  NULL status constants
200*24201887SPedro Giffuni  */
201*24201887SPedro Giffuni #define SQL_NO_NULLS                0
202*24201887SPedro Giffuni #define SQL_NULLABLE                1
203*24201887SPedro Giffuni #define SQL_NULLABLE_UNKNOWN            2
204*24201887SPedro Giffuni 
205*24201887SPedro Giffuni 
206*24201887SPedro Giffuni /*
207*24201887SPedro Giffuni  *  NULL Handles
208*24201887SPedro Giffuni  */
209*24201887SPedro Giffuni #define SQL_NULL_HENV               0
210*24201887SPedro Giffuni #define SQL_NULL_HDBC               0
211*24201887SPedro Giffuni #define SQL_NULL_HSTMT              0
212*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
213*24201887SPedro Giffuni #define SQL_NULL_HDESC              0
214*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
215*24201887SPedro Giffuni 
216*24201887SPedro Giffuni 
217*24201887SPedro Giffuni /*
218*24201887SPedro Giffuni  *  NULL handle for parent argument to SQLAllocHandle when allocating
219*24201887SPedro Giffuni  *  a SQLHENV
220*24201887SPedro Giffuni  */
221*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
222*24201887SPedro Giffuni #define SQL_NULL_HANDLE             0L
223*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
224*24201887SPedro Giffuni 
225*24201887SPedro Giffuni 
226*24201887SPedro Giffuni /*
227*24201887SPedro Giffuni  *  CLI option values
228*24201887SPedro Giffuni  */
229*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
230*24201887SPedro Giffuni #define SQL_FALSE               0
231*24201887SPedro Giffuni #define SQL_TRUE                1
232*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
233*24201887SPedro Giffuni 
234*24201887SPedro Giffuni 
235*24201887SPedro Giffuni /*
236*24201887SPedro Giffuni  *  Default conversion code for SQLBindCol(), SQLBindParam() and SQLGetData()
237*24201887SPedro Giffuni  */
238*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
239*24201887SPedro Giffuni #define SQL_DEFAULT             99
240*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
241*24201887SPedro Giffuni 
242*24201887SPedro Giffuni 
243*24201887SPedro Giffuni /*
244*24201887SPedro Giffuni  *  SQLDataSources/SQLFetchScroll - FetchOrientation
245*24201887SPedro Giffuni  */
246*24201887SPedro Giffuni #define SQL_FETCH_NEXT              1
247*24201887SPedro Giffuni #define SQL_FETCH_FIRST             2
248*24201887SPedro Giffuni 
249*24201887SPedro Giffuni 
250*24201887SPedro Giffuni /*
251*24201887SPedro Giffuni  *  SQLFetchScroll - FetchOrientation
252*24201887SPedro Giffuni  */
253*24201887SPedro Giffuni #define SQL_FETCH_LAST              3
254*24201887SPedro Giffuni #define SQL_FETCH_PRIOR             4
255*24201887SPedro Giffuni #define SQL_FETCH_ABSOLUTE          5
256*24201887SPedro Giffuni #define SQL_FETCH_RELATIVE          6
257*24201887SPedro Giffuni 
258*24201887SPedro Giffuni 
259*24201887SPedro Giffuni /*
260*24201887SPedro Giffuni  *  SQLFreeStmt
261*24201887SPedro Giffuni  */
262*24201887SPedro Giffuni #define SQL_CLOSE               0
263*24201887SPedro Giffuni #define SQL_DROP                1
264*24201887SPedro Giffuni #define SQL_UNBIND              2
265*24201887SPedro Giffuni #define SQL_RESET_PARAMS            3
266*24201887SPedro Giffuni 
267*24201887SPedro Giffuni 
268*24201887SPedro Giffuni /*
269*24201887SPedro Giffuni  *  SQLGetConnectAttr - connection attributes
270*24201887SPedro Giffuni  */
271cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
272cdf0e10cSrcweir #define SQL_ATTR_AUTO_IPD           10001
273cdf0e10cSrcweir #define SQL_ATTR_METADATA_ID            10014
274cdf0e10cSrcweir #endif  /* ODBCVER >= 0x0300 */
275cdf0e10cSrcweir 
276cdf0e10cSrcweir 
277*24201887SPedro Giffuni /*
278*24201887SPedro Giffuni  *   SQLGetData() code indicating that the application row descriptor
279*24201887SPedro Giffuni  *   specifies the data type
280*24201887SPedro Giffuni  */
281cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
282*24201887SPedro Giffuni #define SQL_ARD_TYPE                (-99)
283cdf0e10cSrcweir #endif  /* ODBCVER >= 0x0300 */
284cdf0e10cSrcweir 
285*24201887SPedro Giffuni 
286*24201887SPedro Giffuni /*
287*24201887SPedro Giffuni  *  SQLGetDescField - identifiers of fields in the SQL descriptor
288*24201887SPedro Giffuni  */
289cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
290cdf0e10cSrcweir #define SQL_DESC_COUNT              1001
291cdf0e10cSrcweir #define SQL_DESC_TYPE               1002
292cdf0e10cSrcweir #define SQL_DESC_LENGTH             1003
293cdf0e10cSrcweir #define SQL_DESC_OCTET_LENGTH_PTR       1004
294cdf0e10cSrcweir #define SQL_DESC_PRECISION          1005
295cdf0e10cSrcweir #define SQL_DESC_SCALE              1006
296cdf0e10cSrcweir #define SQL_DESC_DATETIME_INTERVAL_CODE     1007
297cdf0e10cSrcweir #define SQL_DESC_NULLABLE           1008
298cdf0e10cSrcweir #define SQL_DESC_INDICATOR_PTR          1009
299cdf0e10cSrcweir #define SQL_DESC_DATA_PTR           1010
300cdf0e10cSrcweir #define SQL_DESC_NAME               1011
301cdf0e10cSrcweir #define SQL_DESC_UNNAMED            1012
302cdf0e10cSrcweir #define SQL_DESC_OCTET_LENGTH           1013
303cdf0e10cSrcweir #define SQL_DESC_ALLOC_TYPE         1099
304*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
305cdf0e10cSrcweir 
306*24201887SPedro Giffuni 
307*24201887SPedro Giffuni /*
308*24201887SPedro Giffuni  *  SQLGetDescField - SQL_DESC_ALLOC_TYPE
309*24201887SPedro Giffuni  */
310*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
311*24201887SPedro Giffuni #define SQL_DESC_ALLOC_AUTO         1
312*24201887SPedro Giffuni #define SQL_DESC_ALLOC_USER         2
313*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
314*24201887SPedro Giffuni 
315*24201887SPedro Giffuni 
316*24201887SPedro Giffuni /*
317*24201887SPedro Giffuni  *  SQLGetDescField - SQL_DESC_DATETIME_INTERVAL_CODE
318*24201887SPedro Giffuni  */
319*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
320*24201887SPedro Giffuni #define SQL_CODE_DATE               1
321*24201887SPedro Giffuni #define SQL_CODE_TIME               2
322*24201887SPedro Giffuni #define SQL_CODE_TIMESTAMP          3
323*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
324*24201887SPedro Giffuni 
325*24201887SPedro Giffuni 
326*24201887SPedro Giffuni /*
327*24201887SPedro Giffuni  *  SQLGetDescField - SQL_DESC_UNNAMED
328*24201887SPedro Giffuni  */
329*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
330*24201887SPedro Giffuni #define SQL_NAMED               0
331*24201887SPedro Giffuni #define SQL_UNNAMED             1
332*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
333*24201887SPedro Giffuni 
334*24201887SPedro Giffuni 
335*24201887SPedro Giffuni /*
336*24201887SPedro Giffuni  *  SQLGetDiagField - identifiers of fields in the diagnostics area
337*24201887SPedro Giffuni  */
338cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
339cdf0e10cSrcweir #define SQL_DIAG_RETURNCODE         1
340cdf0e10cSrcweir #define SQL_DIAG_NUMBER             2
341cdf0e10cSrcweir #define SQL_DIAG_ROW_COUNT          3
342cdf0e10cSrcweir #define SQL_DIAG_SQLSTATE           4
343cdf0e10cSrcweir #define SQL_DIAG_NATIVE             5
344cdf0e10cSrcweir #define SQL_DIAG_MESSAGE_TEXT           6
345cdf0e10cSrcweir #define SQL_DIAG_DYNAMIC_FUNCTION       7
346cdf0e10cSrcweir #define SQL_DIAG_CLASS_ORIGIN           8
347cdf0e10cSrcweir #define SQL_DIAG_SUBCLASS_ORIGIN        9
348cdf0e10cSrcweir #define SQL_DIAG_CONNECTION_NAME        10
349cdf0e10cSrcweir #define SQL_DIAG_SERVER_NAME            11
350cdf0e10cSrcweir #define SQL_DIAG_DYNAMIC_FUNCTION_CODE      12
351*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
352cdf0e10cSrcweir 
353*24201887SPedro Giffuni 
354*24201887SPedro Giffuni /*
355*24201887SPedro Giffuni  *  SQLGetDiagField - SQL_DIAG_DYNAMIC_FUNCTION_CODE
356*24201887SPedro Giffuni  */
357cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
358cdf0e10cSrcweir #define SQL_DIAG_ALTER_DOMAIN           3
359cdf0e10cSrcweir #define SQL_DIAG_ALTER_TABLE            4
360cdf0e10cSrcweir #define SQL_DIAG_CALL               7
361cdf0e10cSrcweir #define SQL_DIAG_CREATE_ASSERTION       6
362cdf0e10cSrcweir #define SQL_DIAG_CREATE_CHARACTER_SET       8
363cdf0e10cSrcweir #define SQL_DIAG_CREATE_COLLATION       10
364cdf0e10cSrcweir #define SQL_DIAG_CREATE_DOMAIN          23
365cdf0e10cSrcweir #define SQL_DIAG_CREATE_INDEX           (-1)
366cdf0e10cSrcweir #define SQL_DIAG_CREATE_SCHEMA          64
367cdf0e10cSrcweir #define SQL_DIAG_CREATE_TABLE           77
368cdf0e10cSrcweir #define SQL_DIAG_CREATE_TRANSLATION     79
369cdf0e10cSrcweir #define SQL_DIAG_CREATE_VIEW            84
370cdf0e10cSrcweir #define SQL_DIAG_DELETE_WHERE           19
371cdf0e10cSrcweir #define SQL_DIAG_DROP_ASSERTION         24
372cdf0e10cSrcweir #define SQL_DIAG_DROP_CHARACTER_SET     25
373cdf0e10cSrcweir #define SQL_DIAG_DROP_COLLATION         26
374cdf0e10cSrcweir #define SQL_DIAG_DROP_DOMAIN            27
375cdf0e10cSrcweir #define SQL_DIAG_DROP_INDEX         (-2)
376cdf0e10cSrcweir #define SQL_DIAG_DROP_SCHEMA            31
377cdf0e10cSrcweir #define SQL_DIAG_DROP_TABLE         32
378cdf0e10cSrcweir #define SQL_DIAG_DROP_TRANSLATION       33
379cdf0e10cSrcweir #define SQL_DIAG_DROP_VIEW          36
380cdf0e10cSrcweir #define SQL_DIAG_DYNAMIC_DELETE_CURSOR      38
381cdf0e10cSrcweir #define SQL_DIAG_DYNAMIC_UPDATE_CURSOR      81
382cdf0e10cSrcweir #define SQL_DIAG_GRANT              48
383cdf0e10cSrcweir #define SQL_DIAG_INSERT             50
384cdf0e10cSrcweir #define SQL_DIAG_REVOKE             59
385cdf0e10cSrcweir #define SQL_DIAG_SELECT_CURSOR          85
386cdf0e10cSrcweir #define SQL_DIAG_UNKNOWN_STATEMENT      0
387cdf0e10cSrcweir #define SQL_DIAG_UPDATE_WHERE           82
388cdf0e10cSrcweir #endif  /* ODBCVER >= 0x0300 */
389cdf0e10cSrcweir 
390cdf0e10cSrcweir 
391*24201887SPedro Giffuni /*
392*24201887SPedro Giffuni  *  SQLGetEnvAttr - environment attribute
393cdf0e10cSrcweir  */
394cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
395*24201887SPedro Giffuni #define SQL_ATTR_OUTPUT_NTS         10001
396*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
397cdf0e10cSrcweir 
398cdf0e10cSrcweir 
399*24201887SPedro Giffuni /*
400*24201887SPedro Giffuni  *  SQLGetFunctions
401cdf0e10cSrcweir  */
402cdf0e10cSrcweir #define SQL_API_SQLALLOCCONNECT         1
403cdf0e10cSrcweir #define SQL_API_SQLALLOCENV         2
404cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
405cdf0e10cSrcweir #define SQL_API_SQLALLOCHANDLE          1001
406*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
407cdf0e10cSrcweir #define SQL_API_SQLALLOCSTMT            3
408cdf0e10cSrcweir #define SQL_API_SQLBINDCOL          4
409cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
410cdf0e10cSrcweir #define SQL_API_SQLBINDPARAM            1002
411*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
412cdf0e10cSrcweir #define SQL_API_SQLCANCEL           5
413cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
414cdf0e10cSrcweir #define SQL_API_SQLCLOSECURSOR          1003
415cdf0e10cSrcweir #define SQL_API_SQLCOLATTRIBUTE         6
416*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
417cdf0e10cSrcweir #define SQL_API_SQLCOLUMNS          40
418cdf0e10cSrcweir #define SQL_API_SQLCONNECT          7
419cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
420cdf0e10cSrcweir #define SQL_API_SQLCOPYDESC         1004
421*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
422cdf0e10cSrcweir #define SQL_API_SQLDATASOURCES          57
423cdf0e10cSrcweir #define SQL_API_SQLDESCRIBECOL          8
424cdf0e10cSrcweir #define SQL_API_SQLDISCONNECT           9
425cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
426cdf0e10cSrcweir #define SQL_API_SQLENDTRAN          1005
427*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
428cdf0e10cSrcweir #define SQL_API_SQLERROR            10
429cdf0e10cSrcweir #define SQL_API_SQLEXECDIRECT           11
430cdf0e10cSrcweir #define SQL_API_SQLEXECUTE          12
431cdf0e10cSrcweir #define SQL_API_SQLFETCH            13
432cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
433cdf0e10cSrcweir #define SQL_API_SQLFETCHSCROLL          1021
434*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
435cdf0e10cSrcweir #define SQL_API_SQLFREECONNECT          14
436cdf0e10cSrcweir #define SQL_API_SQLFREEENV          15
437cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
438cdf0e10cSrcweir #define SQL_API_SQLFREEHANDLE           1006
439*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
440cdf0e10cSrcweir #define SQL_API_SQLFREESTMT         16
441cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
442cdf0e10cSrcweir #define SQL_API_SQLGETCONNECTATTR       1007
443*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
444cdf0e10cSrcweir #define SQL_API_SQLGETCONNECTOPTION     42
445cdf0e10cSrcweir #define SQL_API_SQLGETCURSORNAME        17
446cdf0e10cSrcweir #define SQL_API_SQLGETDATA          43
447cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
448cdf0e10cSrcweir #define SQL_API_SQLGETDESCFIELD         1008
449cdf0e10cSrcweir #define SQL_API_SQLGETDESCREC           1009
450cdf0e10cSrcweir #define SQL_API_SQLGETDIAGFIELD         1010
451cdf0e10cSrcweir #define SQL_API_SQLGETDIAGREC           1011
452cdf0e10cSrcweir #define SQL_API_SQLGETENVATTR           1012
453*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
454cdf0e10cSrcweir #define SQL_API_SQLGETFUNCTIONS         44
455cdf0e10cSrcweir #define SQL_API_SQLGETINFO          45
456cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
457cdf0e10cSrcweir #define SQL_API_SQLGETSTMTATTR          1014
458*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
459cdf0e10cSrcweir #define SQL_API_SQLGETSTMTOPTION        46
460cdf0e10cSrcweir #define SQL_API_SQLGETTYPEINFO          47
461cdf0e10cSrcweir #define SQL_API_SQLNUMRESULTCOLS        18
462cdf0e10cSrcweir #define SQL_API_SQLPARAMDATA            48
463cdf0e10cSrcweir #define SQL_API_SQLPREPARE          19
464cdf0e10cSrcweir #define SQL_API_SQLPUTDATA          49
465cdf0e10cSrcweir #define SQL_API_SQLROWCOUNT         20
466cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
467cdf0e10cSrcweir #define SQL_API_SQLSETCONNECTATTR       1016
468*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
469cdf0e10cSrcweir #define SQL_API_SQLSETCONNECTOPTION     50
470cdf0e10cSrcweir #define SQL_API_SQLSETCURSORNAME        21
471cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
472cdf0e10cSrcweir #define SQL_API_SQLSETDESCFIELD         1017
473cdf0e10cSrcweir #define SQL_API_SQLSETDESCREC           1018
474cdf0e10cSrcweir #define SQL_API_SQLSETENVATTR           1019
475*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
476cdf0e10cSrcweir #define SQL_API_SQLSETPARAM         22
477cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
478cdf0e10cSrcweir #define SQL_API_SQLSETSTMTATTR          1020
479*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
480cdf0e10cSrcweir #define SQL_API_SQLSETSTMTOPTION        51
481cdf0e10cSrcweir #define SQL_API_SQLSPECIALCOLUMNS       52
482cdf0e10cSrcweir #define SQL_API_SQLSTATISTICS           53
483cdf0e10cSrcweir #define SQL_API_SQLTABLES           54
484cdf0e10cSrcweir #define SQL_API_SQLTRANSACT         23
485cdf0e10cSrcweir 
486*24201887SPedro Giffuni 
487*24201887SPedro Giffuni /*
488*24201887SPedro Giffuni  *  SQLGetInfo
489*24201887SPedro Giffuni  */
490cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
491cdf0e10cSrcweir #define SQL_MAX_DRIVER_CONNECTIONS      0
492cdf0e10cSrcweir #define SQL_MAXIMUM_DRIVER_CONNECTIONS      SQL_MAX_DRIVER_CONNECTIONS
493cdf0e10cSrcweir #define SQL_MAX_CONCURRENT_ACTIVITIES       1
494cdf0e10cSrcweir #define SQL_MAXIMUM_CONCURRENT_ACTIVITIES   SQL_MAX_CONCURRENT_ACTIVITIES
495*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
496cdf0e10cSrcweir #define SQL_DATA_SOURCE_NAME            2
497cdf0e10cSrcweir #define SQL_FETCH_DIRECTION         8
498cdf0e10cSrcweir #define SQL_SERVER_NAME             13
499cdf0e10cSrcweir #define SQL_SEARCH_PATTERN_ESCAPE       14
500cdf0e10cSrcweir #define SQL_DBMS_NAME               17
501cdf0e10cSrcweir #define SQL_DBMS_VER                18
502cdf0e10cSrcweir #define SQL_ACCESSIBLE_TABLES           19
503cdf0e10cSrcweir #define SQL_ACCESSIBLE_PROCEDURES       20
504cdf0e10cSrcweir #define SQL_CURSOR_COMMIT_BEHAVIOR      23
505cdf0e10cSrcweir #define SQL_DATA_SOURCE_READ_ONLY       25
506cdf0e10cSrcweir #define SQL_DEFAULT_TXN_ISOLATION       26
507cdf0e10cSrcweir #define SQL_IDENTIFIER_CASE         28
508cdf0e10cSrcweir #define SQL_IDENTIFIER_QUOTE_CHAR       29
509cdf0e10cSrcweir #define SQL_MAX_COLUMN_NAME_LEN         30
510cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMN_NAME_LENGTH      SQL_MAX_COLUMN_NAME_LEN
511cdf0e10cSrcweir #define SQL_MAX_CURSOR_NAME_LEN         31
512cdf0e10cSrcweir #define SQL_MAXIMUM_CURSOR_NAME_LENGTH      SQL_MAX_CURSOR_NAME_LEN
513cdf0e10cSrcweir #define SQL_MAX_SCHEMA_NAME_LEN         32
514cdf0e10cSrcweir #define SQL_MAXIMUM_SCHEMA_NAME_LENGTH      SQL_MAX_SCHEMA_NAME_LEN
515cdf0e10cSrcweir #define SQL_MAX_CATALOG_NAME_LEN        34
516cdf0e10cSrcweir #define SQL_MAXIMUM_CATALOG_NAME_LENGTH     SQL_MAX_CATALOG_NAME_LEN
517cdf0e10cSrcweir #define SQL_MAX_TABLE_NAME_LEN          35
518cdf0e10cSrcweir #define SQL_SCROLL_CONCURRENCY          43
519cdf0e10cSrcweir #define SQL_TXN_CAPABLE             46
520cdf0e10cSrcweir #define SQL_TRANSACTION_CAPABLE         SQL_TXN_CAPABLE
521cdf0e10cSrcweir #define SQL_USER_NAME               47
522cdf0e10cSrcweir #define SQL_TXN_ISOLATION_OPTION        72
523cdf0e10cSrcweir #define SQL_TRANSACTION_ISOLATION_OPTION    SQL_TXN_ISOLATION_OPTION
524cdf0e10cSrcweir #define SQL_INTEGRITY               73
525cdf0e10cSrcweir #define SQL_GETDATA_EXTENSIONS          81
526cdf0e10cSrcweir #define SQL_NULL_COLLATION          85
527cdf0e10cSrcweir #define SQL_ALTER_TABLE             86
528cdf0e10cSrcweir #define SQL_ORDER_BY_COLUMNS_IN_SELECT      90
529cdf0e10cSrcweir #define SQL_SPECIAL_CHARACTERS          94
530cdf0e10cSrcweir #define SQL_MAX_COLUMNS_IN_GROUP_BY     97
531cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_GROUP_BY     SQL_MAX_COLUMNS_IN_GROUP_BY
532cdf0e10cSrcweir #define SQL_MAX_COLUMNS_IN_INDEX        98
533cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_INDEX        SQL_MAX_COLUMNS_IN_INDEX
534cdf0e10cSrcweir #define SQL_MAX_COLUMNS_IN_ORDER_BY     99
535cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_ORDER_BY     SQL_MAX_COLUMNS_IN_ORDER_BY
536cdf0e10cSrcweir #define SQL_MAX_COLUMNS_IN_SELECT       100
537cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_SELECT       SQL_MAX_COLUMNS_IN_SELECT
538cdf0e10cSrcweir #define SQL_MAX_COLUMNS_IN_TABLE        101
539cdf0e10cSrcweir #define SQL_MAX_INDEX_SIZE          102
540cdf0e10cSrcweir #define SQL_MAXIMUM_INDEX_SIZE          SQL_MAX_INDEX_SIZE
541cdf0e10cSrcweir #define SQL_MAX_ROW_SIZE            104
542cdf0e10cSrcweir #define SQL_MAXIMUM_ROW_SIZE            SQL_MAX_ROW_SIZE
543cdf0e10cSrcweir #define SQL_MAX_STATEMENT_LEN           105
544cdf0e10cSrcweir #define SQL_MAXIMUM_STATEMENT_LENGTH        SQL_MAX_STATEMENT_LEN
545cdf0e10cSrcweir #define SQL_MAX_TABLES_IN_SELECT        106
546cdf0e10cSrcweir #define SQL_MAXIMUM_TABLES_IN_SELECT        SQL_MAX_TABLES_IN_SELECT
547cdf0e10cSrcweir #define SQL_MAX_USER_NAME_LEN           107
548cdf0e10cSrcweir #define SQL_MAXIMUM_USER_NAME_LENGTH        SQL_MAX_USER_NAME_LEN
549cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
550cdf0e10cSrcweir #define SQL_OJ_CAPABILITIES         115
551cdf0e10cSrcweir #define SQL_OUTER_JOIN_CAPABILITIES     SQL_OJ_CAPABILITIES
552cdf0e10cSrcweir #endif  /* ODBCVER >= 0x0300 */
553cdf0e10cSrcweir 
554cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
555cdf0e10cSrcweir #define SQL_XOPEN_CLI_YEAR          10000
556cdf0e10cSrcweir #define SQL_CURSOR_SENSITIVITY          10001
557cdf0e10cSrcweir #define SQL_DESCRIBE_PARAMETER          10002
558cdf0e10cSrcweir #define SQL_CATALOG_NAME            10003
559cdf0e10cSrcweir #define SQL_COLLATION_SEQ           10004
560cdf0e10cSrcweir #define SQL_MAX_IDENTIFIER_LEN          10005
561cdf0e10cSrcweir #define SQL_MAXIMUM_IDENTIFIER_LENGTH       SQL_MAX_IDENTIFIER_LEN
562cdf0e10cSrcweir #endif  /* ODBCVER >= 0x0300 */
563cdf0e10cSrcweir 
564*24201887SPedro Giffuni 
565*24201887SPedro Giffuni /*
566*24201887SPedro Giffuni  *  SQLGetInfo - SQL_ALTER_TABLE
567*24201887SPedro Giffuni  */
568cdf0e10cSrcweir #if (ODBCVER >= 0x0200)
569cdf0e10cSrcweir #define SQL_AT_ADD_COLUMN           0x00000001L
570cdf0e10cSrcweir #define SQL_AT_DROP_COLUMN          0x00000002L
571*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
572cdf0e10cSrcweir 
573cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
574cdf0e10cSrcweir #define SQL_AT_ADD_CONSTRAINT           0x00000008L
575*24201887SPedro Giffuni /*
576*24201887SPedro Giffuni  * The following bitmasks are ODBC extensions and defined in sqlext.h:
577*24201887SPedro Giffuni  *
578cdf0e10cSrcweir  * #define SQL_AT_COLUMN_SINGLE             0x00000020L
579cdf0e10cSrcweir  * #define SQL_AT_ADD_COLUMN_DEFAULT            0x00000040L
580cdf0e10cSrcweir  * #define SQL_AT_ADD_COLUMN_COLLATION          0x00000080L
581cdf0e10cSrcweir  * #define SQL_AT_SET_COLUMN_DEFAULT            0x00000100L
582cdf0e10cSrcweir  * #define SQL_AT_DROP_COLUMN_DEFAULT           0x00000200L
583cdf0e10cSrcweir  * #define SQL_AT_DROP_COLUMN_CASCADE           0x00000400L
584cdf0e10cSrcweir  * #define SQL_AT_DROP_COLUMN_RESTRICT          0x00000800L
585cdf0e10cSrcweir  * #define SQL_AT_ADD_TABLE_CONSTRAINT          0x00001000L
586cdf0e10cSrcweir  * #define SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE     0x00002000L
587cdf0e10cSrcweir  * #define SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT    0x00004000L
588cdf0e10cSrcweir  * #define SQL_AT_CONSTRAINT_NAME_DEFINITION        0x00008000L
589cdf0e10cSrcweir  * #define SQL_AT_CONSTRAINT_INITIALLY_DEFERRED     0x00010000L
590cdf0e10cSrcweir  * #define SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE    0x00020000L
591cdf0e10cSrcweir  * #define SQL_AT_CONSTRAINT_DEFERRABLE         0x00040000L
592cdf0e10cSrcweir  * #define SQL_AT_CONSTRAINT_NON_DEFERRABLE     0x00080000L
593cdf0e10cSrcweir  */
594cdf0e10cSrcweir #endif  /* ODBCVER >= 0x0300 */
595cdf0e10cSrcweir 
596cdf0e10cSrcweir 
597*24201887SPedro Giffuni /*
598*24201887SPedro Giffuni  *  SQLGetInfo - SQL_ASYNC_MODE
599*24201887SPedro Giffuni  */
600cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
601cdf0e10cSrcweir #define SQL_AM_NONE             0
602cdf0e10cSrcweir #define SQL_AM_CONNECTION           1
603cdf0e10cSrcweir #define SQL_AM_STATEMENT            2
604*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
605cdf0e10cSrcweir 
606*24201887SPedro Giffuni 
607*24201887SPedro Giffuni /*
608*24201887SPedro Giffuni  *  SQLGetInfo - SQL_CURSOR_COMMIT_BEHAVIOR
609*24201887SPedro Giffuni  */
610cdf0e10cSrcweir #define SQL_CB_DELETE               0
611cdf0e10cSrcweir #define SQL_CB_CLOSE                1
612cdf0e10cSrcweir #define SQL_CB_PRESERVE             2
613cdf0e10cSrcweir 
614*24201887SPedro Giffuni 
615*24201887SPedro Giffuni /*
616*24201887SPedro Giffuni  *  SQLGetInfo - SQL_FETCH_DIRECTION
617*24201887SPedro Giffuni  */
618cdf0e10cSrcweir #define SQL_FD_FETCH_NEXT           0x00000001L
619cdf0e10cSrcweir #define SQL_FD_FETCH_FIRST          0x00000002L
620cdf0e10cSrcweir #define SQL_FD_FETCH_LAST           0x00000004L
621cdf0e10cSrcweir #define SQL_FD_FETCH_PRIOR          0x00000008L
622cdf0e10cSrcweir #define SQL_FD_FETCH_ABSOLUTE           0x00000010L
623cdf0e10cSrcweir #define SQL_FD_FETCH_RELATIVE           0x00000020L
624cdf0e10cSrcweir 
625*24201887SPedro Giffuni 
626*24201887SPedro Giffuni /*
627*24201887SPedro Giffuni  *  SQLGetInfo - SQL_GETDATA_EXTENSIONS
628*24201887SPedro Giffuni  */
629cdf0e10cSrcweir #define SQL_GD_ANY_COLUMN           0x00000001L
630cdf0e10cSrcweir #define SQL_GD_ANY_ORDER            0x00000002L
631cdf0e10cSrcweir 
632*24201887SPedro Giffuni 
633*24201887SPedro Giffuni /*
634*24201887SPedro Giffuni  *  SQLGetInfo - SQL_IDENTIFIER_CASE
635*24201887SPedro Giffuni  */
636cdf0e10cSrcweir #define SQL_IC_UPPER                1
637cdf0e10cSrcweir #define SQL_IC_LOWER                2
638cdf0e10cSrcweir #define SQL_IC_SENSITIVE            3
639cdf0e10cSrcweir #define SQL_IC_MIXED                4
640cdf0e10cSrcweir 
641*24201887SPedro Giffuni 
642*24201887SPedro Giffuni /*
643*24201887SPedro Giffuni  *  SQLGetInfo - SQL_NULL_COLLATION
644*24201887SPedro Giffuni  */
645*24201887SPedro Giffuni #define SQL_NC_HIGH             0
646*24201887SPedro Giffuni #define SQL_NC_LOW              1
647cdf0e10cSrcweir 
648cdf0e10cSrcweir 
649*24201887SPedro Giffuni /*
650*24201887SPedro Giffuni  *  SQLGetInfo - SQL_OJ_CAPABILITIES
651*24201887SPedro Giffuni  */
652cdf0e10cSrcweir #if (ODBCVER >= 0x0201)
653cdf0e10cSrcweir #define SQL_OJ_LEFT             0x00000001L
654cdf0e10cSrcweir #define SQL_OJ_RIGHT                0x00000002L
655cdf0e10cSrcweir #define SQL_OJ_FULL             0x00000004L
656cdf0e10cSrcweir #define SQL_OJ_NESTED               0x00000008L
657cdf0e10cSrcweir #define SQL_OJ_NOT_ORDERED          0x00000010L
658cdf0e10cSrcweir #define SQL_OJ_INNER                0x00000020L
659cdf0e10cSrcweir #define SQL_OJ_ALL_COMPARISON_OPS       0x00000040L
660cdf0e10cSrcweir #endif
661cdf0e10cSrcweir 
662*24201887SPedro Giffuni 
663*24201887SPedro Giffuni /*
664*24201887SPedro Giffuni  *  SQLGetInfo - SQL_SCROLL_CONCURRENCY
665*24201887SPedro Giffuni  */
666cdf0e10cSrcweir #define SQL_SCCO_READ_ONLY          0x00000001L
667cdf0e10cSrcweir #define SQL_SCCO_LOCK               0x00000002L
668cdf0e10cSrcweir #define SQL_SCCO_OPT_ROWVER         0x00000004L
669cdf0e10cSrcweir #define SQL_SCCO_OPT_VALUES         0x00000008L
670cdf0e10cSrcweir 
671*24201887SPedro Giffuni 
672*24201887SPedro Giffuni /*
673*24201887SPedro Giffuni  *  SQLGetInfo - SQL_TXN_CAPABLE
674*24201887SPedro Giffuni  */
675cdf0e10cSrcweir #define SQL_TC_NONE             0
676cdf0e10cSrcweir #define SQL_TC_DML              1
677cdf0e10cSrcweir #define SQL_TC_ALL              2
678cdf0e10cSrcweir #define SQL_TC_DDL_COMMIT           3
679cdf0e10cSrcweir #define SQL_TC_DDL_IGNORE           4
680cdf0e10cSrcweir 
681*24201887SPedro Giffuni 
682*24201887SPedro Giffuni /*
683*24201887SPedro Giffuni  *  SQLGetInfo - SQL_TXN_ISOLATION_OPTION
684*24201887SPedro Giffuni  */
685cdf0e10cSrcweir #define SQL_TXN_READ_UNCOMMITTED        0x00000001L
686cdf0e10cSrcweir #define SQL_TRANSACTION_READ_UNCOMMITTED    SQL_TXN_READ_UNCOMMITTED
687cdf0e10cSrcweir #define SQL_TXN_READ_COMMITTED          0x00000002L
688cdf0e10cSrcweir #define SQL_TRANSACTION_READ_COMMITTED      SQL_TXN_READ_COMMITTED
689cdf0e10cSrcweir #define SQL_TXN_REPEATABLE_READ         0x00000004L
690cdf0e10cSrcweir #define SQL_TRANSACTION_REPEATABLE_READ     SQL_TXN_REPEATABLE_READ
691cdf0e10cSrcweir #define SQL_TXN_SERIALIZABLE            0x00000008L
692cdf0e10cSrcweir #define SQL_TRANSACTION_SERIALIZABLE        SQL_TXN_SERIALIZABLE
693cdf0e10cSrcweir 
694cdf0e10cSrcweir 
695*24201887SPedro Giffuni /*
696*24201887SPedro Giffuni  *  SQLGetStmtAttr - statement attributes
697*24201887SPedro Giffuni  */
698*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
699*24201887SPedro Giffuni #define SQL_ATTR_APP_ROW_DESC           10010
700*24201887SPedro Giffuni #define SQL_ATTR_APP_PARAM_DESC         10011
701*24201887SPedro Giffuni #define SQL_ATTR_IMP_ROW_DESC           10012
702*24201887SPedro Giffuni #define SQL_ATTR_IMP_PARAM_DESC         10013
703*24201887SPedro Giffuni #define SQL_ATTR_CURSOR_SCROLLABLE      (-1)
704*24201887SPedro Giffuni #define SQL_ATTR_CURSOR_SENSITIVITY     (-2)
705*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
706*24201887SPedro Giffuni 
707*24201887SPedro Giffuni 
708*24201887SPedro Giffuni /*
709*24201887SPedro Giffuni  *  SQLGetStmtAttr - SQL_ATTR_CURSOR_SCROLLABLE
710*24201887SPedro Giffuni  */
711*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
712*24201887SPedro Giffuni #define SQL_NONSCROLLABLE           0
713*24201887SPedro Giffuni #define SQL_SCROLLABLE              1
714*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
715*24201887SPedro Giffuni 
716*24201887SPedro Giffuni 
717*24201887SPedro Giffuni /*
718*24201887SPedro Giffuni  *  SQLGetStmtAttr - SQL_ATTR_CURSOR_SENSITIVITY
719*24201887SPedro Giffuni  */
720*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
721*24201887SPedro Giffuni #define SQL_UNSPECIFIED             0
722*24201887SPedro Giffuni #define SQL_INSENSITIVE             1
723*24201887SPedro Giffuni #define SQL_SENSITIVE               2
724*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
725*24201887SPedro Giffuni 
726*24201887SPedro Giffuni 
727*24201887SPedro Giffuni /*
728*24201887SPedro Giffuni  *  SQLGetTypeInfo - SEARCHABLE
729*24201887SPedro Giffuni  */
730*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
731*24201887SPedro Giffuni #define SQL_PRED_NONE               0
732*24201887SPedro Giffuni #define SQL_PRED_CHAR               1
733*24201887SPedro Giffuni #define SQL_PRED_BASIC              2
734*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
735*24201887SPedro Giffuni 
736*24201887SPedro Giffuni 
737*24201887SPedro Giffuni /*
738*24201887SPedro Giffuni  *  SQLSpecialColumns - Column scopes
739*24201887SPedro Giffuni  */
740*24201887SPedro Giffuni #define SQL_SCOPE_CURROW            0
741*24201887SPedro Giffuni #define SQL_SCOPE_TRANSACTION           1
742*24201887SPedro Giffuni #define SQL_SCOPE_SESSION           2
743*24201887SPedro Giffuni 
744*24201887SPedro Giffuni 
745*24201887SPedro Giffuni /*
746*24201887SPedro Giffuni  *  SQLSpecialColumns - PSEUDO_COLUMN
747*24201887SPedro Giffuni  */
748*24201887SPedro Giffuni #define SQL_PC_UNKNOWN              0
749*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
750*24201887SPedro Giffuni #define SQL_PC_NON_PSEUDO           1
751*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
752*24201887SPedro Giffuni #define SQL_PC_PSEUDO               2
753*24201887SPedro Giffuni 
754*24201887SPedro Giffuni 
755*24201887SPedro Giffuni /*
756*24201887SPedro Giffuni  *  SQLSpecialColumns - IdentifierType
757*24201887SPedro Giffuni  */
758*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
759*24201887SPedro Giffuni #define SQL_ROW_IDENTIFIER          1
760*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
761*24201887SPedro Giffuni 
762*24201887SPedro Giffuni 
763*24201887SPedro Giffuni /*
764*24201887SPedro Giffuni  *  SQLStatistics - fUnique
765*24201887SPedro Giffuni  */
766*24201887SPedro Giffuni #define SQL_INDEX_UNIQUE            0
767*24201887SPedro Giffuni #define SQL_INDEX_ALL               1
768*24201887SPedro Giffuni 
769*24201887SPedro Giffuni 
770*24201887SPedro Giffuni /*
771*24201887SPedro Giffuni  *  SQLStatistics - TYPE
772*24201887SPedro Giffuni  */
773*24201887SPedro Giffuni #define SQL_INDEX_CLUSTERED         1
774*24201887SPedro Giffuni #define SQL_INDEX_HASHED            2
775*24201887SPedro Giffuni #define SQL_INDEX_OTHER             3
776*24201887SPedro Giffuni 
777*24201887SPedro Giffuni 
778*24201887SPedro Giffuni /*
779*24201887SPedro Giffuni  *  SQLTransact/SQLEndTran
780*24201887SPedro Giffuni  */
781*24201887SPedro Giffuni #define SQL_COMMIT              0
782*24201887SPedro Giffuni #define SQL_ROLLBACK                1
783*24201887SPedro Giffuni 
784*24201887SPedro Giffuni 
785*24201887SPedro Giffuni /*
786*24201887SPedro Giffuni  *  Function Prototypes
787*24201887SPedro Giffuni  */
788*24201887SPedro Giffuni SQLRETURN SQL_API SQLAllocConnect (
789*24201887SPedro Giffuni     SQLHENV       EnvironmentHandle,
790cdf0e10cSrcweir     SQLHDBC     * ConnectionHandle);
791cdf0e10cSrcweir 
792*24201887SPedro Giffuni SQLRETURN SQL_API SQLAllocEnv (
793*24201887SPedro Giffuni     SQLHENV     * EnvironmentHandle);
794cdf0e10cSrcweir 
795cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
796*24201887SPedro Giffuni SQLRETURN SQL_API SQLAllocHandle (
797*24201887SPedro Giffuni     SQLSMALLINT       HandleType,
798*24201887SPedro Giffuni     SQLHANDLE         InputHandle,
799*24201887SPedro Giffuni     SQLHANDLE       * OutputHandle);
800*24201887SPedro Giffuni #endif  /* ODBCVER >= 0x0300 */
801cdf0e10cSrcweir 
802*24201887SPedro Giffuni SQLRETURN SQL_API SQLAllocStmt (
803*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle,
804cdf0e10cSrcweir     SQLHSTMT        * StatementHandle);
805cdf0e10cSrcweir 
806*24201887SPedro Giffuni SQLRETURN SQL_API SQLBindCol (
807*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
808*24201887SPedro Giffuni     SQLUSMALLINT      ColumnNumber,
809*24201887SPedro Giffuni     SQLSMALLINT       TargetType,
810*24201887SPedro Giffuni     SQLPOINTER        TargetValue,
811*24201887SPedro Giffuni     SQLLEN        BufferLength,
812cdf0e10cSrcweir     SQLLEN      * StrLen_or_Ind);
813cdf0e10cSrcweir 
814cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
815*24201887SPedro Giffuni SQLRETURN SQL_API SQLBindParam (
816*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
817*24201887SPedro Giffuni     SQLUSMALLINT      ParameterNumber,
818*24201887SPedro Giffuni     SQLSMALLINT       ValueType,
819*24201887SPedro Giffuni     SQLSMALLINT       ParameterType,
820*24201887SPedro Giffuni     SQLULEN       LengthPrecision,
821*24201887SPedro Giffuni     SQLSMALLINT       ParameterScale,
822*24201887SPedro Giffuni     SQLPOINTER        ParameterValue,
823cdf0e10cSrcweir     SQLLEN      * StrLen_or_Ind);
824cdf0e10cSrcweir #endif
825cdf0e10cSrcweir 
826*24201887SPedro Giffuni SQLRETURN SQL_API SQLCancel (
827*24201887SPedro Giffuni     SQLHSTMT          StatementHandle);
828cdf0e10cSrcweir 
829cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
830*24201887SPedro Giffuni SQLRETURN SQL_API SQLCloseCursor (
831*24201887SPedro Giffuni     SQLHSTMT          StatementHandle);
832cdf0e10cSrcweir 
833*24201887SPedro Giffuni /*
834*24201887SPedro Giffuni  *  Using SQLLEN * instead of SQLPOINTER for NumericAttribute,
835*24201887SPedro Giffuni  *  makes the prototype the same as SQLColAttributes (deprecated)
836*24201887SPedro Giffuni  *  and clearer for 64bit ports
837*24201887SPedro Giffuni  */
838*24201887SPedro Giffuni SQLRETURN SQL_API SQLColAttribute (
839*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
840*24201887SPedro Giffuni     SQLUSMALLINT      ColumnNumber,
841*24201887SPedro Giffuni     SQLUSMALLINT      FieldIdentifier,
842*24201887SPedro Giffuni     SQLPOINTER        CharacterAttribute,
843*24201887SPedro Giffuni     SQLSMALLINT       BufferLength,
844*24201887SPedro Giffuni     SQLSMALLINT     * StringLength,
845*24201887SPedro Giffuni     SQLLEN      * NumericAttribute);
846cdf0e10cSrcweir #endif
847cdf0e10cSrcweir 
848*24201887SPedro Giffuni SQLRETURN SQL_API SQLColumns (
849*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
850*24201887SPedro Giffuni     SQLCHAR     * CatalogName,
851*24201887SPedro Giffuni     SQLSMALLINT       NameLength1,
852*24201887SPedro Giffuni     SQLCHAR     * SchemaName,
853*24201887SPedro Giffuni     SQLSMALLINT       NameLength2,
854*24201887SPedro Giffuni     SQLCHAR     * TableName,
855*24201887SPedro Giffuni     SQLSMALLINT       NameLength3,
856*24201887SPedro Giffuni     SQLCHAR     * ColumnName,
857*24201887SPedro Giffuni     SQLSMALLINT       NameLength4);
858cdf0e10cSrcweir 
859*24201887SPedro Giffuni SQLRETURN SQL_API SQLConnect (
860*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle,
861*24201887SPedro Giffuni     SQLCHAR     * ServerName,
862*24201887SPedro Giffuni     SQLSMALLINT       NameLength1,
863*24201887SPedro Giffuni     SQLCHAR     * UserName,
864*24201887SPedro Giffuni     SQLSMALLINT       NameLength2,
865*24201887SPedro Giffuni     SQLCHAR     * Authentication,
866*24201887SPedro Giffuni     SQLSMALLINT       NameLength3);
867cdf0e10cSrcweir 
868cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
869*24201887SPedro Giffuni SQLRETURN SQL_API SQLCopyDesc (
870*24201887SPedro Giffuni     SQLHDESC          SourceDescHandle,
871cdf0e10cSrcweir     SQLHDESC          TargetDescHandle);
872cdf0e10cSrcweir #endif
873cdf0e10cSrcweir 
874*24201887SPedro Giffuni SQLRETURN SQL_API SQLDataSources (
875*24201887SPedro Giffuni     SQLHENV       EnvironmentHandle,
876*24201887SPedro Giffuni     SQLUSMALLINT      Direction,
877*24201887SPedro Giffuni     SQLCHAR     * ServerName,
878*24201887SPedro Giffuni     SQLSMALLINT       BufferLength1,
879*24201887SPedro Giffuni     SQLSMALLINT     * NameLength1,
880*24201887SPedro Giffuni     SQLCHAR     * Description,
881*24201887SPedro Giffuni     SQLSMALLINT       BufferLength2,
882cdf0e10cSrcweir     SQLSMALLINT     * NameLength2);
883cdf0e10cSrcweir 
884*24201887SPedro Giffuni SQLRETURN SQL_API SQLDescribeCol (
885*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
886*24201887SPedro Giffuni     SQLUSMALLINT      ColumnNumber,
887*24201887SPedro Giffuni     SQLCHAR     * ColumnName,
888*24201887SPedro Giffuni     SQLSMALLINT       BufferLength,
889*24201887SPedro Giffuni     SQLSMALLINT     * NameLength,
890*24201887SPedro Giffuni     SQLSMALLINT     * DataType,
891*24201887SPedro Giffuni     SQLULEN     * ColumnSize,
892*24201887SPedro Giffuni     SQLSMALLINT     * DecimalDigits,
893*24201887SPedro Giffuni     SQLSMALLINT     * Nullable);
894cdf0e10cSrcweir 
895*24201887SPedro Giffuni SQLRETURN SQL_API SQLDisconnect (
896*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle);
897cdf0e10cSrcweir 
898cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
899*24201887SPedro Giffuni SQLRETURN SQL_API SQLEndTran (
900*24201887SPedro Giffuni     SQLSMALLINT       HandleType,
901*24201887SPedro Giffuni     SQLHANDLE         Handle,
902cdf0e10cSrcweir     SQLSMALLINT       CompletionType);
903cdf0e10cSrcweir #endif
904cdf0e10cSrcweir 
905*24201887SPedro Giffuni SQLRETURN SQL_API SQLError (
906*24201887SPedro Giffuni     SQLHENV       EnvironmentHandle,
907*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle,
908*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
909*24201887SPedro Giffuni     SQLCHAR     * Sqlstate,
910*24201887SPedro Giffuni     SQLINTEGER      * NativeError,
911*24201887SPedro Giffuni     SQLCHAR     * MessageText,
912*24201887SPedro Giffuni     SQLSMALLINT       BufferLength,
913cdf0e10cSrcweir     SQLSMALLINT     * TextLength);
914cdf0e10cSrcweir 
915*24201887SPedro Giffuni SQLRETURN SQL_API SQLExecDirect (
916*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
917*24201887SPedro Giffuni     SQLCHAR     * StatementText,
918*24201887SPedro Giffuni     SQLINTEGER        TextLength);
919cdf0e10cSrcweir 
920*24201887SPedro Giffuni SQLRETURN SQL_API SQLExecute (
921*24201887SPedro Giffuni     SQLHSTMT          StatementHandle);
922cdf0e10cSrcweir 
923*24201887SPedro Giffuni SQLRETURN SQL_API SQLFetch (
924*24201887SPedro Giffuni     SQLHSTMT          StatementHandle);
925cdf0e10cSrcweir 
926cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
927*24201887SPedro Giffuni SQLRETURN SQL_API SQLFetchScroll (
928*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
929*24201887SPedro Giffuni     SQLSMALLINT       FetchOrientation,
930*24201887SPedro Giffuni     SQLLEN        FetchOffset);
931cdf0e10cSrcweir #endif
932cdf0e10cSrcweir 
933*24201887SPedro Giffuni SQLRETURN SQL_API SQLFreeConnect (
934*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle);
935cdf0e10cSrcweir 
936*24201887SPedro Giffuni SQLRETURN SQL_API SQLFreeEnv (
937*24201887SPedro Giffuni     SQLHENV       EnvironmentHandle);
938cdf0e10cSrcweir 
939cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
940*24201887SPedro Giffuni SQLRETURN SQL_API SQLFreeHandle (
941*24201887SPedro Giffuni     SQLSMALLINT       HandleType,
942*24201887SPedro Giffuni     SQLHANDLE         Handle);
943cdf0e10cSrcweir #endif
944cdf0e10cSrcweir 
945*24201887SPedro Giffuni SQLRETURN SQL_API SQLFreeStmt (
946*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
947cdf0e10cSrcweir     SQLUSMALLINT      Option);
948cdf0e10cSrcweir 
949cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
950*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetConnectAttr (
951*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle,
952*24201887SPedro Giffuni     SQLINTEGER        Attribute,
953*24201887SPedro Giffuni     SQLPOINTER        Value,
954*24201887SPedro Giffuni     SQLINTEGER        BufferLength,
955*24201887SPedro Giffuni     SQLINTEGER      * StringLength);
956cdf0e10cSrcweir #endif
957cdf0e10cSrcweir 
958*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetConnectOption (
959*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle,
960*24201887SPedro Giffuni     SQLUSMALLINT      Option,
961*24201887SPedro Giffuni     SQLPOINTER        Value);
962cdf0e10cSrcweir 
963*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetCursorName (
964*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
965*24201887SPedro Giffuni     SQLCHAR     * CursorName,
966*24201887SPedro Giffuni     SQLSMALLINT       BufferLength,
967cdf0e10cSrcweir     SQLSMALLINT     * NameLength);
968cdf0e10cSrcweir 
969*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetData (
970*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
971*24201887SPedro Giffuni     SQLUSMALLINT      ColumnNumber,
972*24201887SPedro Giffuni     SQLSMALLINT       TargetType,
973*24201887SPedro Giffuni     SQLPOINTER        TargetValue,
974*24201887SPedro Giffuni     SQLLEN        BufferLength,
975cdf0e10cSrcweir     SQLLEN      * StrLen_or_Ind);
976cdf0e10cSrcweir 
977cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
978*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetDescField (
979*24201887SPedro Giffuni     SQLHDESC          DescriptorHandle,
980*24201887SPedro Giffuni     SQLSMALLINT       RecNumber,
981*24201887SPedro Giffuni     SQLSMALLINT       FieldIdentifier,
982*24201887SPedro Giffuni     SQLPOINTER        Value,
983*24201887SPedro Giffuni     SQLINTEGER        BufferLength,
984cdf0e10cSrcweir     SQLINTEGER      * StringLength);
985cdf0e10cSrcweir 
986*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetDescRec (
987*24201887SPedro Giffuni     SQLHDESC          DescriptorHandle,
988*24201887SPedro Giffuni     SQLSMALLINT       RecNumber,
989*24201887SPedro Giffuni     SQLCHAR     * Name,
990*24201887SPedro Giffuni     SQLSMALLINT       BufferLength,
991*24201887SPedro Giffuni     SQLSMALLINT     * StringLength,
992*24201887SPedro Giffuni     SQLSMALLINT     * Type,
993*24201887SPedro Giffuni     SQLSMALLINT     * SubType,
994*24201887SPedro Giffuni     SQLLEN      * Length,
995*24201887SPedro Giffuni     SQLSMALLINT     * Precision,
996*24201887SPedro Giffuni     SQLSMALLINT     * Scale,
997*24201887SPedro Giffuni     SQLSMALLINT     * Nullable);
998cdf0e10cSrcweir 
999*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetDiagField (
1000*24201887SPedro Giffuni     SQLSMALLINT       HandleType,
1001*24201887SPedro Giffuni     SQLHANDLE         Handle,
1002*24201887SPedro Giffuni     SQLSMALLINT       RecNumber,
1003*24201887SPedro Giffuni     SQLSMALLINT       DiagIdentifier,
1004*24201887SPedro Giffuni     SQLPOINTER        DiagInfo,
1005*24201887SPedro Giffuni     SQLSMALLINT       BufferLength,
1006cdf0e10cSrcweir     SQLSMALLINT     * StringLength);
1007cdf0e10cSrcweir 
1008*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetDiagRec (
1009*24201887SPedro Giffuni     SQLSMALLINT       HandleType,
1010*24201887SPedro Giffuni     SQLHANDLE         Handle,
1011*24201887SPedro Giffuni     SQLSMALLINT       RecNumber,
1012*24201887SPedro Giffuni     SQLCHAR     * Sqlstate,
1013*24201887SPedro Giffuni     SQLINTEGER      * NativeError,
1014*24201887SPedro Giffuni     SQLCHAR     * MessageText,
1015*24201887SPedro Giffuni     SQLSMALLINT       BufferLength,
1016*24201887SPedro Giffuni     SQLSMALLINT     * TextLength);
1017cdf0e10cSrcweir 
1018*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetEnvAttr (
1019*24201887SPedro Giffuni     SQLHENV       EnvironmentHandle,
1020*24201887SPedro Giffuni     SQLINTEGER        Attribute,
1021*24201887SPedro Giffuni     SQLPOINTER        Value,
1022*24201887SPedro Giffuni     SQLINTEGER        BufferLength,
1023*24201887SPedro Giffuni     SQLINTEGER      * StringLength);
1024cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */
1025cdf0e10cSrcweir 
1026*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetFunctions (
1027*24201887SPedro Giffuni     SQLHDBC     ConnectionHandle,
1028*24201887SPedro Giffuni     SQLUSMALLINT    FunctionId,
1029*24201887SPedro Giffuni     SQLUSMALLINT *  Supported);
1030cdf0e10cSrcweir 
1031*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetInfo (
1032*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle,
1033*24201887SPedro Giffuni     SQLUSMALLINT      InfoType,
1034*24201887SPedro Giffuni     SQLPOINTER        InfoValue,
1035*24201887SPedro Giffuni     SQLSMALLINT       BufferLength,
1036*24201887SPedro Giffuni     SQLSMALLINT     * StringLength);
1037cdf0e10cSrcweir 
1038cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
1039*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetStmtAttr (
1040*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1041*24201887SPedro Giffuni     SQLINTEGER        Attribute,
1042*24201887SPedro Giffuni     SQLPOINTER        Value,
1043*24201887SPedro Giffuni     SQLINTEGER        BufferLength,
1044*24201887SPedro Giffuni     SQLINTEGER      * StringLength);
1045cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */
1046cdf0e10cSrcweir 
1047*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetStmtOption (
1048*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1049*24201887SPedro Giffuni     SQLUSMALLINT      Option,
1050*24201887SPedro Giffuni     SQLPOINTER        Value);
1051cdf0e10cSrcweir 
1052*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetTypeInfo (
1053*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1054cdf0e10cSrcweir     SQLSMALLINT       DataType);
1055cdf0e10cSrcweir 
1056*24201887SPedro Giffuni SQLRETURN SQL_API SQLNumResultCols (
1057*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1058cdf0e10cSrcweir     SQLSMALLINT     * ColumnCount);
1059cdf0e10cSrcweir 
1060*24201887SPedro Giffuni SQLRETURN SQL_API SQLParamData (
1061*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1062cdf0e10cSrcweir     SQLPOINTER      * Value);
1063cdf0e10cSrcweir 
1064*24201887SPedro Giffuni SQLRETURN SQL_API SQLPrepare (
1065*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1066*24201887SPedro Giffuni     SQLCHAR     * StatementText,
1067*24201887SPedro Giffuni     SQLINTEGER        TextLength);
1068cdf0e10cSrcweir 
1069*24201887SPedro Giffuni SQLRETURN SQL_API SQLPutData (
1070*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1071*24201887SPedro Giffuni     SQLPOINTER        Data,
1072*24201887SPedro Giffuni     SQLLEN        StrLen_or_Ind);
1073cdf0e10cSrcweir 
1074*24201887SPedro Giffuni SQLRETURN SQL_API SQLRowCount (
1075*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1076cdf0e10cSrcweir     SQLLEN      * RowCount);
1077cdf0e10cSrcweir 
1078cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
1079*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetConnectAttr (
1080*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle,
1081*24201887SPedro Giffuni     SQLINTEGER        Attribute,
1082*24201887SPedro Giffuni     SQLPOINTER        Value,
1083cdf0e10cSrcweir     SQLINTEGER        StringLength);
1084cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */
1085cdf0e10cSrcweir 
1086*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetConnectOption (
1087*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle,
1088*24201887SPedro Giffuni     SQLUSMALLINT      Option,
1089*24201887SPedro Giffuni     SQLULEN       Value);
1090cdf0e10cSrcweir 
1091*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetCursorName (
1092*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1093*24201887SPedro Giffuni     SQLCHAR     * CursorName,
1094*24201887SPedro Giffuni     SQLSMALLINT       NameLength);
1095cdf0e10cSrcweir 
1096cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
1097*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetDescField (
1098*24201887SPedro Giffuni     SQLHDESC          DescriptorHandle,
1099*24201887SPedro Giffuni     SQLSMALLINT       RecNumber,
1100*24201887SPedro Giffuni     SQLSMALLINT       FieldIdentifier,
1101*24201887SPedro Giffuni     SQLPOINTER        Value,
1102*24201887SPedro Giffuni     SQLINTEGER        BufferLength);
1103cdf0e10cSrcweir 
1104*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetDescRec (
1105*24201887SPedro Giffuni     SQLHDESC          DescriptorHandle,
1106*24201887SPedro Giffuni     SQLSMALLINT       RecNumber,
1107*24201887SPedro Giffuni     SQLSMALLINT       Type,
1108*24201887SPedro Giffuni     SQLSMALLINT       SubType,
1109*24201887SPedro Giffuni     SQLLEN        Length,
1110*24201887SPedro Giffuni     SQLSMALLINT       Precision,
1111*24201887SPedro Giffuni     SQLSMALLINT       Scale,
1112*24201887SPedro Giffuni     SQLPOINTER        Data,
1113*24201887SPedro Giffuni     SQLLEN      * StringLength,
1114cdf0e10cSrcweir     SQLLEN      * Indicator);
1115cdf0e10cSrcweir 
1116*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetEnvAttr (
1117*24201887SPedro Giffuni     SQLHENV       EnvironmentHandle,
1118*24201887SPedro Giffuni     SQLINTEGER        Attribute,
1119*24201887SPedro Giffuni     SQLPOINTER        Value,
1120cdf0e10cSrcweir     SQLINTEGER        StringLength);
1121cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */
1122cdf0e10cSrcweir 
1123cdf0e10cSrcweir 
1124cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
1125*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetStmtAttr (
1126*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1127*24201887SPedro Giffuni     SQLINTEGER        Attribute,
1128*24201887SPedro Giffuni     SQLPOINTER        Value,
1129cdf0e10cSrcweir     SQLINTEGER        StringLength);
1130cdf0e10cSrcweir #endif
1131cdf0e10cSrcweir 
1132*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetStmtOption (
1133*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1134*24201887SPedro Giffuni     SQLUSMALLINT      Option,
1135*24201887SPedro Giffuni     SQLULEN       Value);
1136cdf0e10cSrcweir 
1137*24201887SPedro Giffuni SQLRETURN SQL_API SQLSpecialColumns (
1138*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1139*24201887SPedro Giffuni     SQLUSMALLINT      IdentifierType,
1140*24201887SPedro Giffuni     SQLCHAR     * CatalogName,
1141*24201887SPedro Giffuni     SQLSMALLINT       NameLength1,
1142*24201887SPedro Giffuni     SQLCHAR     * SchemaName,
1143*24201887SPedro Giffuni     SQLSMALLINT       NameLength2,
1144*24201887SPedro Giffuni     SQLCHAR     * TableName,
1145*24201887SPedro Giffuni     SQLSMALLINT       NameLength3,
1146*24201887SPedro Giffuni     SQLUSMALLINT      Scope,
1147cdf0e10cSrcweir     SQLUSMALLINT      Nullable);
1148cdf0e10cSrcweir 
1149*24201887SPedro Giffuni SQLRETURN SQL_API SQLStatistics (
1150*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1151*24201887SPedro Giffuni     SQLCHAR     * CatalogName,
1152*24201887SPedro Giffuni     SQLSMALLINT       NameLength1,
1153*24201887SPedro Giffuni     SQLCHAR     * SchemaName,
1154*24201887SPedro Giffuni     SQLSMALLINT       NameLength2,
1155*24201887SPedro Giffuni     SQLCHAR     * TableName,
1156*24201887SPedro Giffuni     SQLSMALLINT       NameLength3,
1157*24201887SPedro Giffuni     SQLUSMALLINT      Unique,
1158*24201887SPedro Giffuni     SQLUSMALLINT      Reserved);
1159cdf0e10cSrcweir 
1160*24201887SPedro Giffuni SQLRETURN SQL_API SQLTables (
1161*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1162*24201887SPedro Giffuni     SQLCHAR     * CatalogName,
1163*24201887SPedro Giffuni     SQLSMALLINT       NameLength1,
1164*24201887SPedro Giffuni     SQLCHAR     * SchemaName,
1165*24201887SPedro Giffuni     SQLSMALLINT       NameLength2,
1166*24201887SPedro Giffuni     SQLCHAR     * TableName,
1167*24201887SPedro Giffuni     SQLSMALLINT       NameLength3,
1168*24201887SPedro Giffuni     SQLCHAR     * TableType,
1169*24201887SPedro Giffuni     SQLSMALLINT       NameLength4);
1170cdf0e10cSrcweir 
1171*24201887SPedro Giffuni SQLRETURN SQL_API SQLTransact (
1172*24201887SPedro Giffuni     SQLHENV       EnvironmentHandle,
1173*24201887SPedro Giffuni     SQLHDBC       ConnectionHandle,
1174*24201887SPedro Giffuni     SQLUSMALLINT      CompletionType);
1175*24201887SPedro Giffuni 
1176*24201887SPedro Giffuni 
1177*24201887SPedro Giffuni /*
1178*24201887SPedro Giffuni  *  Depreciated ODBC 1.0 function - Use SQLBindParameter
1179*24201887SPedro Giffuni  */
1180*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetParam (
1181*24201887SPedro Giffuni     SQLHSTMT          StatementHandle,
1182*24201887SPedro Giffuni     SQLUSMALLINT      ParameterNumber,
1183*24201887SPedro Giffuni     SQLSMALLINT       ValueType,
1184*24201887SPedro Giffuni     SQLSMALLINT       ParameterType,
1185*24201887SPedro Giffuni     SQLULEN       LengthPrecision,
1186*24201887SPedro Giffuni     SQLSMALLINT       ParameterScale,
1187*24201887SPedro Giffuni     SQLPOINTER        ParameterValue,
1188*24201887SPedro Giffuni     SQLLEN      * StrLen_or_Ind);
1189cdf0e10cSrcweir 
1190cdf0e10cSrcweir #ifdef __cplusplus
1191cdf0e10cSrcweir }
1192cdf0e10cSrcweir #endif
1193*24201887SPedro Giffuni 
1194*24201887SPedro Giffuni #endif   /* _SQL_H */
1195