xref: /aoo41x/main/unixODBC/inc/sql.h (revision 24201887)
1*24201887SPedro Giffuni /*
2*24201887SPedro Giffuni  *  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
85*24201887SPedro Giffuni #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  */
106*24201887SPedro Giffuni #define SQL_MAX_MESSAGE_LENGTH			512
107cdf0e10cSrcweir 
108cdf0e10cSrcweir 
109*24201887SPedro Giffuni /*
110*24201887SPedro Giffuni  *  Handle types
111*24201887SPedro Giffuni  */
112cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
113*24201887SPedro Giffuni #define SQL_HANDLE_ENV				1
114*24201887SPedro Giffuni #define SQL_HANDLE_DBC				2
115*24201887SPedro Giffuni #define SQL_HANDLE_STMT				3
116*24201887SPedro Giffuni #define SQL_HANDLE_DESC				4
117*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
118cdf0e10cSrcweir 
119cdf0e10cSrcweir 
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 
133cdf0e10cSrcweir 
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 
153cdf0e10cSrcweir 
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
166cdf0e10cSrcweir #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
176cdf0e10cSrcweir 
177*24201887SPedro Giffuni 
178*24201887SPedro Giffuni /*
179*24201887SPedro Giffuni  *  Statement attribute values for date/time data types
180*24201887SPedro Giffuni  */
181cdf0e10cSrcweir #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 */
186cdf0e10cSrcweir 
187*24201887SPedro Giffuni 
188*24201887SPedro Giffuni /*
189*24201887SPedro Giffuni  *  Date/Time length constants
190*24201887SPedro Giffuni  */
191cdf0e10cSrcweir #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 */
196cdf0e10cSrcweir 
197cdf0e10cSrcweir 
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
212cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
213*24201887SPedro Giffuni #define SQL_NULL_HDESC				0
214*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
215*24201887SPedro Giffuni 
216cdf0e10cSrcweir 
217*24201887SPedro Giffuni /*
218*24201887SPedro Giffuni  *  NULL handle for parent argument to SQLAllocHandle when allocating
219*24201887SPedro Giffuni  *  a SQLHENV
220cdf0e10cSrcweir  */
221cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
222*24201887SPedro Giffuni #define SQL_NULL_HANDLE				0L
223*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
224*24201887SPedro Giffuni 
225cdf0e10cSrcweir 
226*24201887SPedro Giffuni /*
227*24201887SPedro Giffuni  *  CLI option values
228*24201887SPedro Giffuni  */
229cdf0e10cSrcweir #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 
234cdf0e10cSrcweir 
235*24201887SPedro Giffuni /*
236*24201887SPedro Giffuni  *  Default conversion code for SQLBindCol(), SQLBindParam() and SQLGetData()
237*24201887SPedro Giffuni  */
238cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
239*24201887SPedro Giffuni #define SQL_DEFAULT				99
240*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
241cdf0e10cSrcweir 
242cdf0e10cSrcweir 
243*24201887SPedro Giffuni /*
244*24201887SPedro Giffuni  *  SQLDataSources/SQLFetchScroll - FetchOrientation
245cdf0e10cSrcweir  */
246*24201887SPedro Giffuni #define SQL_FETCH_NEXT				1
247*24201887SPedro Giffuni #define SQL_FETCH_FIRST				2
248cdf0e10cSrcweir 
249*24201887SPedro Giffuni 
250*24201887SPedro Giffuni /*
251*24201887SPedro Giffuni  *  SQLFetchScroll - FetchOrientation
252cdf0e10cSrcweir  */
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 
258cdf0e10cSrcweir 
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)
272*24201887SPedro Giffuni #define SQL_ATTR_AUTO_IPD			10001
273*24201887SPedro Giffuni #define SQL_ATTR_METADATA_ID			10014
274*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
275cdf0e10cSrcweir 
276*24201887SPedro Giffuni 
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)
283*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
284cdf0e10cSrcweir 
285cdf0e10cSrcweir 
286*24201887SPedro Giffuni /*
287*24201887SPedro Giffuni  *  SQLGetDescField - identifiers of fields in the SQL descriptor
288*24201887SPedro Giffuni  */
289cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
290*24201887SPedro Giffuni #define SQL_DESC_COUNT				1001
291*24201887SPedro Giffuni #define SQL_DESC_TYPE				1002
292*24201887SPedro Giffuni #define SQL_DESC_LENGTH				1003
293*24201887SPedro Giffuni #define SQL_DESC_OCTET_LENGTH_PTR		1004
294*24201887SPedro Giffuni #define SQL_DESC_PRECISION			1005
295*24201887SPedro Giffuni #define SQL_DESC_SCALE				1006
296*24201887SPedro Giffuni #define SQL_DESC_DATETIME_INTERVAL_CODE		1007
297*24201887SPedro Giffuni #define SQL_DESC_NULLABLE			1008
298*24201887SPedro Giffuni #define SQL_DESC_INDICATOR_PTR			1009
299*24201887SPedro Giffuni #define SQL_DESC_DATA_PTR			1010
300*24201887SPedro Giffuni #define SQL_DESC_NAME				1011
301*24201887SPedro Giffuni #define SQL_DESC_UNNAMED			1012
302*24201887SPedro Giffuni #define SQL_DESC_OCTET_LENGTH			1013
303*24201887SPedro Giffuni #define SQL_DESC_ALLOC_TYPE			1099
304*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
305*24201887SPedro Giffuni 
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 */
314cdf0e10cSrcweir 
315cdf0e10cSrcweir 
316*24201887SPedro Giffuni /*
317*24201887SPedro Giffuni  *  SQLGetDescField - SQL_DESC_DATETIME_INTERVAL_CODE
318*24201887SPedro Giffuni  */
319cdf0e10cSrcweir #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 */
324cdf0e10cSrcweir 
325*24201887SPedro Giffuni 
326*24201887SPedro Giffuni /*
327*24201887SPedro Giffuni  *  SQLGetDescField - SQL_DESC_UNNAMED
328*24201887SPedro Giffuni  */
329cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
330*24201887SPedro Giffuni #define SQL_NAMED				0
331*24201887SPedro Giffuni #define SQL_UNNAMED				1
332*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
333cdf0e10cSrcweir 
334cdf0e10cSrcweir 
335*24201887SPedro Giffuni /*
336*24201887SPedro Giffuni  *  SQLGetDiagField - identifiers of fields in the diagnostics area
337*24201887SPedro Giffuni  */
338*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
339*24201887SPedro Giffuni #define SQL_DIAG_RETURNCODE			1
340*24201887SPedro Giffuni #define SQL_DIAG_NUMBER				2
341*24201887SPedro Giffuni #define SQL_DIAG_ROW_COUNT			3
342*24201887SPedro Giffuni #define SQL_DIAG_SQLSTATE			4
343*24201887SPedro Giffuni #define SQL_DIAG_NATIVE				5
344*24201887SPedro Giffuni #define SQL_DIAG_MESSAGE_TEXT			6
345*24201887SPedro Giffuni #define SQL_DIAG_DYNAMIC_FUNCTION		7
346*24201887SPedro Giffuni #define SQL_DIAG_CLASS_ORIGIN			8
347*24201887SPedro Giffuni #define SQL_DIAG_SUBCLASS_ORIGIN		9
348*24201887SPedro Giffuni #define SQL_DIAG_CONNECTION_NAME		10
349*24201887SPedro Giffuni #define SQL_DIAG_SERVER_NAME			11
350*24201887SPedro Giffuni #define SQL_DIAG_DYNAMIC_FUNCTION_CODE		12
351*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
352*24201887SPedro Giffuni 
353*24201887SPedro Giffuni 
354*24201887SPedro Giffuni /*
355*24201887SPedro Giffuni  *  SQLGetDiagField - SQL_DIAG_DYNAMIC_FUNCTION_CODE
356*24201887SPedro Giffuni  */
357*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
358*24201887SPedro Giffuni #define SQL_DIAG_ALTER_DOMAIN			3
359*24201887SPedro Giffuni #define SQL_DIAG_ALTER_TABLE			4
360*24201887SPedro Giffuni #define SQL_DIAG_CALL				7
361*24201887SPedro Giffuni #define SQL_DIAG_CREATE_ASSERTION		6
362*24201887SPedro Giffuni #define SQL_DIAG_CREATE_CHARACTER_SET		8
363*24201887SPedro Giffuni #define SQL_DIAG_CREATE_COLLATION		10
364*24201887SPedro Giffuni #define SQL_DIAG_CREATE_DOMAIN			23
365*24201887SPedro Giffuni #define SQL_DIAG_CREATE_INDEX			(-1)
366*24201887SPedro Giffuni #define SQL_DIAG_CREATE_SCHEMA			64
367*24201887SPedro Giffuni #define SQL_DIAG_CREATE_TABLE			77
368*24201887SPedro Giffuni #define SQL_DIAG_CREATE_TRANSLATION		79
369*24201887SPedro Giffuni #define SQL_DIAG_CREATE_VIEW			84
370*24201887SPedro Giffuni #define SQL_DIAG_DELETE_WHERE			19
371*24201887SPedro Giffuni #define	SQL_DIAG_DROP_ASSERTION			24
372*24201887SPedro Giffuni #define	SQL_DIAG_DROP_CHARACTER_SET		25
373*24201887SPedro Giffuni #define	SQL_DIAG_DROP_COLLATION			26
374*24201887SPedro Giffuni #define	SQL_DIAG_DROP_DOMAIN			27
375*24201887SPedro Giffuni #define SQL_DIAG_DROP_INDEX			(-2)
376*24201887SPedro Giffuni #define SQL_DIAG_DROP_SCHEMA			31
377*24201887SPedro Giffuni #define SQL_DIAG_DROP_TABLE			32
378*24201887SPedro Giffuni #define SQL_DIAG_DROP_TRANSLATION		33
379*24201887SPedro Giffuni #define SQL_DIAG_DROP_VIEW			36
380*24201887SPedro Giffuni #define SQL_DIAG_DYNAMIC_DELETE_CURSOR		38
381*24201887SPedro Giffuni #define SQL_DIAG_DYNAMIC_UPDATE_CURSOR		81
382*24201887SPedro Giffuni #define SQL_DIAG_GRANT				48
383*24201887SPedro Giffuni #define SQL_DIAG_INSERT				50
384*24201887SPedro Giffuni #define SQL_DIAG_REVOKE				59
385*24201887SPedro Giffuni #define SQL_DIAG_SELECT_CURSOR			85
386*24201887SPedro Giffuni #define SQL_DIAG_UNKNOWN_STATEMENT		0
387*24201887SPedro Giffuni #define SQL_DIAG_UPDATE_WHERE			82
388*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
389*24201887SPedro Giffuni 
390*24201887SPedro Giffuni 
391*24201887SPedro Giffuni /*
392*24201887SPedro Giffuni  *  SQLGetEnvAttr - environment attribute
393*24201887SPedro Giffuni  */
394*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
395*24201887SPedro Giffuni #define SQL_ATTR_OUTPUT_NTS			10001
396*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
397cdf0e10cSrcweir 
398*24201887SPedro Giffuni 
399*24201887SPedro Giffuni /*
400*24201887SPedro Giffuni  *  SQLGetFunctions
401*24201887SPedro Giffuni  */
402*24201887SPedro Giffuni #define SQL_API_SQLALLOCCONNECT			1
403*24201887SPedro Giffuni #define SQL_API_SQLALLOCENV			2
404cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
405*24201887SPedro Giffuni #define SQL_API_SQLALLOCHANDLE			1001
406*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
407*24201887SPedro Giffuni #define SQL_API_SQLALLOCSTMT			3
408*24201887SPedro Giffuni #define SQL_API_SQLBINDCOL			4
409cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
410*24201887SPedro Giffuni #define SQL_API_SQLBINDPARAM			1002
411*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
412*24201887SPedro Giffuni #define SQL_API_SQLCANCEL			5
413cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
414*24201887SPedro Giffuni #define SQL_API_SQLCLOSECURSOR			1003
415*24201887SPedro Giffuni #define SQL_API_SQLCOLATTRIBUTE			6
416*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
417*24201887SPedro Giffuni #define SQL_API_SQLCOLUMNS			40
418*24201887SPedro Giffuni #define SQL_API_SQLCONNECT			7
419cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
420*24201887SPedro Giffuni #define SQL_API_SQLCOPYDESC			1004
421*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
422*24201887SPedro Giffuni #define SQL_API_SQLDATASOURCES			57
423*24201887SPedro Giffuni #define SQL_API_SQLDESCRIBECOL			8
424*24201887SPedro Giffuni #define SQL_API_SQLDISCONNECT			9
425cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
426*24201887SPedro Giffuni #define SQL_API_SQLENDTRAN			1005
427*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
428*24201887SPedro Giffuni #define SQL_API_SQLERROR			10
429*24201887SPedro Giffuni #define SQL_API_SQLEXECDIRECT			11
430*24201887SPedro Giffuni #define SQL_API_SQLEXECUTE			12
431*24201887SPedro Giffuni #define SQL_API_SQLFETCH			13
432cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
433*24201887SPedro Giffuni #define SQL_API_SQLFETCHSCROLL			1021
434*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
435*24201887SPedro Giffuni #define SQL_API_SQLFREECONNECT			14
436*24201887SPedro Giffuni #define SQL_API_SQLFREEENV			15
437cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
438*24201887SPedro Giffuni #define SQL_API_SQLFREEHANDLE			1006
439*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
440*24201887SPedro Giffuni #define SQL_API_SQLFREESTMT			16
441cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
442*24201887SPedro Giffuni #define SQL_API_SQLGETCONNECTATTR		1007
443*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
444*24201887SPedro Giffuni #define SQL_API_SQLGETCONNECTOPTION		42
445*24201887SPedro Giffuni #define SQL_API_SQLGETCURSORNAME		17
446*24201887SPedro Giffuni #define SQL_API_SQLGETDATA			43
447cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
448*24201887SPedro Giffuni #define SQL_API_SQLGETDESCFIELD			1008
449*24201887SPedro Giffuni #define SQL_API_SQLGETDESCREC			1009
450*24201887SPedro Giffuni #define SQL_API_SQLGETDIAGFIELD			1010
451*24201887SPedro Giffuni #define SQL_API_SQLGETDIAGREC			1011
452*24201887SPedro Giffuni #define SQL_API_SQLGETENVATTR			1012
453*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
454*24201887SPedro Giffuni #define SQL_API_SQLGETFUNCTIONS			44
455*24201887SPedro Giffuni #define SQL_API_SQLGETINFO			45
456cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
457*24201887SPedro Giffuni #define SQL_API_SQLGETSTMTATTR			1014
458*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
459*24201887SPedro Giffuni #define SQL_API_SQLGETSTMTOPTION		46
460*24201887SPedro Giffuni #define SQL_API_SQLGETTYPEINFO			47
461*24201887SPedro Giffuni #define SQL_API_SQLNUMRESULTCOLS		18
462*24201887SPedro Giffuni #define SQL_API_SQLPARAMDATA			48
463*24201887SPedro Giffuni #define SQL_API_SQLPREPARE			19
464*24201887SPedro Giffuni #define SQL_API_SQLPUTDATA			49
465*24201887SPedro Giffuni #define SQL_API_SQLROWCOUNT			20
466cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
467*24201887SPedro Giffuni #define SQL_API_SQLSETCONNECTATTR		1016
468*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
469*24201887SPedro Giffuni #define SQL_API_SQLSETCONNECTOPTION		50
470*24201887SPedro Giffuni #define SQL_API_SQLSETCURSORNAME		21
471*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
472*24201887SPedro Giffuni #define SQL_API_SQLSETDESCFIELD			1017
473*24201887SPedro Giffuni #define SQL_API_SQLSETDESCREC			1018
474*24201887SPedro Giffuni #define SQL_API_SQLSETENVATTR			1019
475*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
476*24201887SPedro Giffuni #define SQL_API_SQLSETPARAM			22
477*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
478*24201887SPedro Giffuni #define SQL_API_SQLSETSTMTATTR			1020
479*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
480*24201887SPedro Giffuni #define SQL_API_SQLSETSTMTOPTION		51
481*24201887SPedro Giffuni #define SQL_API_SQLSPECIALCOLUMNS		52
482*24201887SPedro Giffuni #define SQL_API_SQLSTATISTICS			53
483*24201887SPedro Giffuni #define SQL_API_SQLTABLES			54
484*24201887SPedro Giffuni #define SQL_API_SQLTRANSACT			23
485*24201887SPedro Giffuni 
486cdf0e10cSrcweir 
487*24201887SPedro Giffuni /*
488*24201887SPedro Giffuni  *  SQLGetInfo
489*24201887SPedro Giffuni  */
490cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
491*24201887SPedro Giffuni #define SQL_MAX_DRIVER_CONNECTIONS		0
492cdf0e10cSrcweir #define SQL_MAXIMUM_DRIVER_CONNECTIONS		SQL_MAX_DRIVER_CONNECTIONS
493*24201887SPedro Giffuni #define SQL_MAX_CONCURRENT_ACTIVITIES		1
494cdf0e10cSrcweir #define SQL_MAXIMUM_CONCURRENT_ACTIVITIES	SQL_MAX_CONCURRENT_ACTIVITIES
495*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
496*24201887SPedro Giffuni #define SQL_DATA_SOURCE_NAME			2
497*24201887SPedro Giffuni #define SQL_FETCH_DIRECTION			8
498*24201887SPedro Giffuni #define SQL_SERVER_NAME				13
499*24201887SPedro Giffuni #define SQL_SEARCH_PATTERN_ESCAPE		14
500*24201887SPedro Giffuni #define SQL_DBMS_NAME				17
501*24201887SPedro Giffuni #define SQL_DBMS_VER				18
502*24201887SPedro Giffuni #define SQL_ACCESSIBLE_TABLES			19
503*24201887SPedro Giffuni #define SQL_ACCESSIBLE_PROCEDURES		20
504*24201887SPedro Giffuni #define SQL_CURSOR_COMMIT_BEHAVIOR		23
505*24201887SPedro Giffuni #define SQL_DATA_SOURCE_READ_ONLY		25
506*24201887SPedro Giffuni #define SQL_DEFAULT_TXN_ISOLATION		26
507*24201887SPedro Giffuni #define SQL_IDENTIFIER_CASE			28
508*24201887SPedro Giffuni #define SQL_IDENTIFIER_QUOTE_CHAR		29
509*24201887SPedro Giffuni #define SQL_MAX_COLUMN_NAME_LEN			30
510cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMN_NAME_LENGTH		SQL_MAX_COLUMN_NAME_LEN
511*24201887SPedro Giffuni #define SQL_MAX_CURSOR_NAME_LEN			31
512cdf0e10cSrcweir #define SQL_MAXIMUM_CURSOR_NAME_LENGTH		SQL_MAX_CURSOR_NAME_LEN
513*24201887SPedro Giffuni #define SQL_MAX_SCHEMA_NAME_LEN			32
514cdf0e10cSrcweir #define SQL_MAXIMUM_SCHEMA_NAME_LENGTH		SQL_MAX_SCHEMA_NAME_LEN
515*24201887SPedro Giffuni #define SQL_MAX_CATALOG_NAME_LEN		34
516cdf0e10cSrcweir #define SQL_MAXIMUM_CATALOG_NAME_LENGTH		SQL_MAX_CATALOG_NAME_LEN
517*24201887SPedro Giffuni #define SQL_MAX_TABLE_NAME_LEN			35
518*24201887SPedro Giffuni #define SQL_SCROLL_CONCURRENCY			43
519*24201887SPedro Giffuni #define SQL_TXN_CAPABLE				46
520*24201887SPedro Giffuni #define SQL_TRANSACTION_CAPABLE			SQL_TXN_CAPABLE
521*24201887SPedro Giffuni #define SQL_USER_NAME				47
522*24201887SPedro Giffuni #define SQL_TXN_ISOLATION_OPTION		72
523cdf0e10cSrcweir #define SQL_TRANSACTION_ISOLATION_OPTION	SQL_TXN_ISOLATION_OPTION
524*24201887SPedro Giffuni #define SQL_INTEGRITY				73
525*24201887SPedro Giffuni #define SQL_GETDATA_EXTENSIONS			81
526*24201887SPedro Giffuni #define SQL_NULL_COLLATION			85
527*24201887SPedro Giffuni #define SQL_ALTER_TABLE				86
528*24201887SPedro Giffuni #define SQL_ORDER_BY_COLUMNS_IN_SELECT		90
529*24201887SPedro Giffuni #define SQL_SPECIAL_CHARACTERS			94
530*24201887SPedro Giffuni #define SQL_MAX_COLUMNS_IN_GROUP_BY		97
531cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_GROUP_BY		SQL_MAX_COLUMNS_IN_GROUP_BY
532*24201887SPedro Giffuni #define SQL_MAX_COLUMNS_IN_INDEX		98
533cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_INDEX		SQL_MAX_COLUMNS_IN_INDEX
534*24201887SPedro Giffuni #define SQL_MAX_COLUMNS_IN_ORDER_BY		99
535cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_ORDER_BY		SQL_MAX_COLUMNS_IN_ORDER_BY
536*24201887SPedro Giffuni #define SQL_MAX_COLUMNS_IN_SELECT		100
537*24201887SPedro Giffuni #define SQL_MAXIMUM_COLUMNS_IN_SELECT		SQL_MAX_COLUMNS_IN_SELECT
538*24201887SPedro Giffuni #define SQL_MAX_COLUMNS_IN_TABLE		101
539*24201887SPedro Giffuni #define SQL_MAX_INDEX_SIZE			102
540*24201887SPedro Giffuni #define SQL_MAXIMUM_INDEX_SIZE			SQL_MAX_INDEX_SIZE
541*24201887SPedro Giffuni #define SQL_MAX_ROW_SIZE			104
542*24201887SPedro Giffuni #define SQL_MAXIMUM_ROW_SIZE			SQL_MAX_ROW_SIZE
543*24201887SPedro Giffuni #define SQL_MAX_STATEMENT_LEN			105
544*24201887SPedro Giffuni #define SQL_MAXIMUM_STATEMENT_LENGTH		SQL_MAX_STATEMENT_LEN
545*24201887SPedro Giffuni #define SQL_MAX_TABLES_IN_SELECT		106
546*24201887SPedro Giffuni #define SQL_MAXIMUM_TABLES_IN_SELECT		SQL_MAX_TABLES_IN_SELECT
547*24201887SPedro Giffuni #define SQL_MAX_USER_NAME_LEN			107
548*24201887SPedro Giffuni #define SQL_MAXIMUM_USER_NAME_LENGTH		SQL_MAX_USER_NAME_LEN
549cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
550*24201887SPedro Giffuni #define SQL_OJ_CAPABILITIES			115
551*24201887SPedro Giffuni #define SQL_OUTER_JOIN_CAPABILITIES		SQL_OJ_CAPABILITIES
552*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
553cdf0e10cSrcweir 
554*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
555*24201887SPedro Giffuni #define SQL_XOPEN_CLI_YEAR			10000
556*24201887SPedro Giffuni #define SQL_CURSOR_SENSITIVITY			10001
557*24201887SPedro Giffuni #define SQL_DESCRIBE_PARAMETER			10002
558*24201887SPedro Giffuni #define SQL_CATALOG_NAME			10003
559*24201887SPedro Giffuni #define SQL_COLLATION_SEQ			10004
560*24201887SPedro Giffuni #define SQL_MAX_IDENTIFIER_LEN			10005
561*24201887SPedro Giffuni #define SQL_MAXIMUM_IDENTIFIER_LENGTH		SQL_MAX_IDENTIFIER_LEN
562*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
563*24201887SPedro Giffuni 
564*24201887SPedro Giffuni 
565*24201887SPedro Giffuni /*
566*24201887SPedro Giffuni  *  SQLGetInfo - SQL_ALTER_TABLE
567*24201887SPedro Giffuni  */
568cdf0e10cSrcweir #if (ODBCVER >= 0x0200)
569*24201887SPedro Giffuni #define SQL_AT_ADD_COLUMN			0x00000001L
570*24201887SPedro Giffuni #define SQL_AT_DROP_COLUMN			0x00000002L
571*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
572*24201887SPedro Giffuni 
573*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
574*24201887SPedro Giffuni #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  *
578*24201887SPedro Giffuni  * #define SQL_AT_COLUMN_SINGLE				0x00000020L
579*24201887SPedro Giffuni  * #define SQL_AT_ADD_COLUMN_DEFAULT			0x00000040L
580*24201887SPedro Giffuni  * #define SQL_AT_ADD_COLUMN_COLLATION			0x00000080L
581*24201887SPedro Giffuni  * #define SQL_AT_SET_COLUMN_DEFAULT			0x00000100L
582*24201887SPedro Giffuni  * #define SQL_AT_DROP_COLUMN_DEFAULT			0x00000200L
583*24201887SPedro Giffuni  * #define SQL_AT_DROP_COLUMN_CASCADE			0x00000400L
584*24201887SPedro Giffuni  * #define SQL_AT_DROP_COLUMN_RESTRICT			0x00000800L
585*24201887SPedro Giffuni  * #define SQL_AT_ADD_TABLE_CONSTRAINT			0x00001000L
586*24201887SPedro Giffuni  * #define SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE		0x00002000L
587*24201887SPedro Giffuni  * #define SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT	0x00004000L
588*24201887SPedro Giffuni  * #define SQL_AT_CONSTRAINT_NAME_DEFINITION		0x00008000L
589*24201887SPedro Giffuni  * #define SQL_AT_CONSTRAINT_INITIALLY_DEFERRED		0x00010000L
590*24201887SPedro Giffuni  * #define SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE	0x00020000L
591*24201887SPedro Giffuni  * #define SQL_AT_CONSTRAINT_DEFERRABLE			0x00040000L
592*24201887SPedro Giffuni  * #define SQL_AT_CONSTRAINT_NON_DEFERRABLE		0x00080000L
593*24201887SPedro Giffuni  */
594*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
595cdf0e10cSrcweir 
596cdf0e10cSrcweir 
597*24201887SPedro Giffuni /*
598*24201887SPedro Giffuni  *  SQLGetInfo - SQL_ASYNC_MODE
599*24201887SPedro Giffuni  */
600*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
601*24201887SPedro Giffuni #define SQL_AM_NONE				0
602*24201887SPedro Giffuni #define SQL_AM_CONNECTION			1
603*24201887SPedro Giffuni #define SQL_AM_STATEMENT			2
604*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
605cdf0e10cSrcweir 
606cdf0e10cSrcweir 
607*24201887SPedro Giffuni /*
608*24201887SPedro Giffuni  *  SQLGetInfo - SQL_CURSOR_COMMIT_BEHAVIOR
609*24201887SPedro Giffuni  */
610*24201887SPedro Giffuni #define SQL_CB_DELETE				0
611*24201887SPedro Giffuni #define SQL_CB_CLOSE				1
612*24201887SPedro Giffuni #define SQL_CB_PRESERVE				2
613*24201887SPedro Giffuni 
614cdf0e10cSrcweir 
615*24201887SPedro Giffuni /*
616*24201887SPedro Giffuni  *  SQLGetInfo - SQL_FETCH_DIRECTION
617*24201887SPedro Giffuni  */
618*24201887SPedro Giffuni #define SQL_FD_FETCH_NEXT			0x00000001L
619*24201887SPedro Giffuni #define SQL_FD_FETCH_FIRST			0x00000002L
620*24201887SPedro Giffuni #define SQL_FD_FETCH_LAST			0x00000004L
621*24201887SPedro Giffuni #define SQL_FD_FETCH_PRIOR			0x00000008L
622*24201887SPedro Giffuni #define SQL_FD_FETCH_ABSOLUTE			0x00000010L
623*24201887SPedro Giffuni #define SQL_FD_FETCH_RELATIVE			0x00000020L
624cdf0e10cSrcweir 
625cdf0e10cSrcweir 
626*24201887SPedro Giffuni /*
627*24201887SPedro Giffuni  *  SQLGetInfo - SQL_GETDATA_EXTENSIONS
628*24201887SPedro Giffuni  */
629*24201887SPedro Giffuni #define SQL_GD_ANY_COLUMN			0x00000001L
630*24201887SPedro Giffuni #define SQL_GD_ANY_ORDER			0x00000002L
631*24201887SPedro Giffuni 
632*24201887SPedro Giffuni 
633*24201887SPedro Giffuni /*
634*24201887SPedro Giffuni  *  SQLGetInfo - SQL_IDENTIFIER_CASE
635*24201887SPedro Giffuni  */
636*24201887SPedro Giffuni #define SQL_IC_UPPER				1
637*24201887SPedro Giffuni #define SQL_IC_LOWER				2
638*24201887SPedro Giffuni #define SQL_IC_SENSITIVE			3
639*24201887SPedro Giffuni #define SQL_IC_MIXED				4
640*24201887SPedro Giffuni 
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
647*24201887SPedro Giffuni 
648*24201887SPedro Giffuni 
649*24201887SPedro Giffuni /*
650*24201887SPedro Giffuni  *  SQLGetInfo - SQL_OJ_CAPABILITIES
651*24201887SPedro Giffuni  */
652cdf0e10cSrcweir #if (ODBCVER >= 0x0201)
653*24201887SPedro Giffuni #define SQL_OJ_LEFT				0x00000001L
654*24201887SPedro Giffuni #define SQL_OJ_RIGHT				0x00000002L
655*24201887SPedro Giffuni #define SQL_OJ_FULL				0x00000004L
656*24201887SPedro Giffuni #define SQL_OJ_NESTED				0x00000008L
657*24201887SPedro Giffuni #define SQL_OJ_NOT_ORDERED			0x00000010L
658*24201887SPedro Giffuni #define SQL_OJ_INNER				0x00000020L
659*24201887SPedro Giffuni #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  */
666*24201887SPedro Giffuni #define SQL_SCCO_READ_ONLY			0x00000001L
667*24201887SPedro Giffuni #define SQL_SCCO_LOCK				0x00000002L
668*24201887SPedro Giffuni #define SQL_SCCO_OPT_ROWVER			0x00000004L
669*24201887SPedro Giffuni #define SQL_SCCO_OPT_VALUES			0x00000008L
670*24201887SPedro Giffuni 
671*24201887SPedro Giffuni 
672*24201887SPedro Giffuni /*
673*24201887SPedro Giffuni  *  SQLGetInfo - SQL_TXN_CAPABLE
674*24201887SPedro Giffuni  */
675*24201887SPedro Giffuni #define SQL_TC_NONE				0
676*24201887SPedro Giffuni #define SQL_TC_DML				1
677*24201887SPedro Giffuni #define SQL_TC_ALL				2
678*24201887SPedro Giffuni #define SQL_TC_DDL_COMMIT			3
679*24201887SPedro Giffuni #define SQL_TC_DDL_IGNORE			4
680*24201887SPedro Giffuni 
681*24201887SPedro Giffuni 
682*24201887SPedro Giffuni /*
683*24201887SPedro Giffuni  *  SQLGetInfo - SQL_TXN_ISOLATION_OPTION
684*24201887SPedro Giffuni  */
685*24201887SPedro Giffuni #define SQL_TXN_READ_UNCOMMITTED		0x00000001L
686cdf0e10cSrcweir #define SQL_TRANSACTION_READ_UNCOMMITTED	SQL_TXN_READ_UNCOMMITTED
687*24201887SPedro Giffuni #define SQL_TXN_READ_COMMITTED			0x00000002L
688cdf0e10cSrcweir #define SQL_TRANSACTION_READ_COMMITTED		SQL_TXN_READ_COMMITTED
689*24201887SPedro Giffuni #define SQL_TXN_REPEATABLE_READ			0x00000004L
690cdf0e10cSrcweir #define SQL_TRANSACTION_REPEATABLE_READ		SQL_TXN_REPEATABLE_READ
691*24201887SPedro Giffuni #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 */
706cdf0e10cSrcweir 
707cdf0e10cSrcweir 
708*24201887SPedro Giffuni /*
709*24201887SPedro Giffuni  *  SQLGetStmtAttr - SQL_ATTR_CURSOR_SCROLLABLE
710*24201887SPedro Giffuni  */
711cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
712*24201887SPedro Giffuni #define SQL_NONSCROLLABLE			0
713*24201887SPedro Giffuni #define SQL_SCROLLABLE				1
714*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
715cdf0e10cSrcweir 
716cdf0e10cSrcweir 
717*24201887SPedro Giffuni /*
718*24201887SPedro Giffuni  *  SQLGetStmtAttr - SQL_ATTR_CURSOR_SENSITIVITY
719*24201887SPedro Giffuni  */
720cdf0e10cSrcweir #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 */
725cdf0e10cSrcweir 
726cdf0e10cSrcweir 
727*24201887SPedro Giffuni /*
728*24201887SPedro Giffuni  *  SQLGetTypeInfo - SEARCHABLE
729*24201887SPedro Giffuni  */
730cdf0e10cSrcweir #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 */
735cdf0e10cSrcweir 
736cdf0e10cSrcweir 
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
743cdf0e10cSrcweir 
744cdf0e10cSrcweir 
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
753cdf0e10cSrcweir 
754cdf0e10cSrcweir 
755*24201887SPedro Giffuni /*
756*24201887SPedro Giffuni  *  SQLSpecialColumns - IdentifierType
757*24201887SPedro Giffuni  */
758cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
759*24201887SPedro Giffuni #define SQL_ROW_IDENTIFIER			1
760*24201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
761cdf0e10cSrcweir 
762cdf0e10cSrcweir 
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
768cdf0e10cSrcweir 
769cdf0e10cSrcweir 
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
776cdf0e10cSrcweir 
777cdf0e10cSrcweir 
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 
784cdf0e10cSrcweir 
785*24201887SPedro Giffuni /*
786*24201887SPedro Giffuni  *  Function Prototypes
787*24201887SPedro Giffuni  */
788*24201887SPedro Giffuni SQLRETURN SQL_API SQLAllocConnect (
789*24201887SPedro Giffuni     SQLHENV		  EnvironmentHandle,
790*24201887SPedro Giffuni     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 */
801*24201887SPedro Giffuni 
802*24201887SPedro Giffuni SQLRETURN SQL_API SQLAllocStmt (
803*24201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
804*24201887SPedro Giffuni     SQLHSTMT		* StatementHandle);
805*24201887SPedro Giffuni 
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,
812*24201887SPedro Giffuni     SQLLEN		* StrLen_or_Ind);
813*24201887SPedro Giffuni 
814*24201887SPedro Giffuni #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,
823*24201887SPedro Giffuni     SQLLEN		* StrLen_or_Ind);
824cdf0e10cSrcweir #endif
825cdf0e10cSrcweir 
826*24201887SPedro Giffuni SQLRETURN SQL_API SQLCancel (
827*24201887SPedro Giffuni     SQLHSTMT		  StatementHandle);
828*24201887SPedro Giffuni 
829*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
830*24201887SPedro Giffuni SQLRETURN SQL_API SQLCloseCursor (
831*24201887SPedro Giffuni     SQLHSTMT		  StatementHandle);
832*24201887SPedro Giffuni 
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);
846*24201887SPedro Giffuni #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);
858*24201887SPedro Giffuni 
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,
871*24201887SPedro Giffuni     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,
882*24201887SPedro Giffuni     SQLSMALLINT		* NameLength2);
883*24201887SPedro Giffuni 
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);
894*24201887SPedro Giffuni 
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,
902*24201887SPedro Giffuni     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,
913*24201887SPedro Giffuni     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);
922*24201887SPedro Giffuni 
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);
931*24201887SPedro Giffuni #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 
939*24201887SPedro Giffuni #if (ODBCVER >= 0x0300)
940*24201887SPedro Giffuni SQLRETURN SQL_API SQLFreeHandle (
941*24201887SPedro Giffuni     SQLSMALLINT		  HandleType,
942*24201887SPedro Giffuni     SQLHANDLE		  Handle);
943*24201887SPedro Giffuni #endif
944cdf0e10cSrcweir 
945*24201887SPedro Giffuni SQLRETURN SQL_API SQLFreeStmt (
946*24201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
947*24201887SPedro Giffuni     SQLUSMALLINT	  Option);
948cdf0e10cSrcweir 
949*24201887SPedro Giffuni #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);
956*24201887SPedro Giffuni #endif
957cdf0e10cSrcweir 
958*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetConnectOption (
959*24201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
960*24201887SPedro Giffuni     SQLUSMALLINT	  Option,
961*24201887SPedro Giffuni     SQLPOINTER		  Value);
962*24201887SPedro Giffuni 
963*24201887SPedro Giffuni SQLRETURN SQL_API SQLGetCursorName (
964*24201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
965*24201887SPedro Giffuni     SQLCHAR		* CursorName,
966*24201887SPedro Giffuni     SQLSMALLINT		  BufferLength,
967*24201887SPedro Giffuni     SQLSMALLINT		* NameLength);
968*24201887SPedro Giffuni 
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,
975*24201887SPedro Giffuni     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,
984*24201887SPedro Giffuni     SQLINTEGER		* StringLength);
985*24201887SPedro Giffuni 
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);
998*24201887SPedro Giffuni 
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,
1006*24201887SPedro Giffuni     SQLSMALLINT		* StringLength);
1007*24201887SPedro Giffuni 
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);
1017*24201887SPedro Giffuni 
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);
1024*24201887SPedro Giffuni #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 
1038*24201887SPedro Giffuni #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);
1045*24201887SPedro Giffuni #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,
1054*24201887SPedro Giffuni     SQLSMALLINT		  DataType);
1055cdf0e10cSrcweir 
1056*24201887SPedro Giffuni SQLRETURN SQL_API SQLNumResultCols (
1057*24201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
1058*24201887SPedro Giffuni     SQLSMALLINT		* ColumnCount);
1059cdf0e10cSrcweir 
1060*24201887SPedro Giffuni SQLRETURN SQL_API SQLParamData (
1061*24201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
1062*24201887SPedro Giffuni     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,
1076*24201887SPedro Giffuni     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,
1083*24201887SPedro Giffuni     SQLINTEGER		  StringLength);
1084*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */
1085*24201887SPedro Giffuni 
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 
1096*24201887SPedro Giffuni #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);
1103*24201887SPedro Giffuni 
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,
1114*24201887SPedro Giffuni     SQLLEN		* Indicator);
1115*24201887SPedro Giffuni 
1116*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetEnvAttr (
1117*24201887SPedro Giffuni     SQLHENV		  EnvironmentHandle,
1118*24201887SPedro Giffuni     SQLINTEGER		  Attribute,
1119*24201887SPedro Giffuni     SQLPOINTER		  Value,
1120*24201887SPedro Giffuni     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,
1129*24201887SPedro Giffuni     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);
1136*24201887SPedro Giffuni 
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,
1147*24201887SPedro Giffuni     SQLUSMALLINT	  Nullable);
1148*24201887SPedro Giffuni 
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);
1159*24201887SPedro Giffuni 
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);
1170*24201887SPedro Giffuni 
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