xref: /AOO41X/main/unixODBC/inc/sql.h (revision acaca3423cb54ec1f8b99ebd1a99aa0abb0b33f9)
124201887SPedro Giffuni /*
2cdf0e10cSrcweir  *  sql.h
3cdf0e10cSrcweir  *
4*acaca342SPedro Giffuni  *  $Id: sql.h,v 1.11 2009/09/09 20:06:24 source Exp $
5cdf0e10cSrcweir  *
624201887SPedro Giffuni  *  ODBC defines
724201887SPedro Giffuni  *
824201887SPedro Giffuni  *  The iODBC driver manager.
924201887SPedro Giffuni  *
1024201887SPedro Giffuni  *  Copyright (C) 1995 by Ke Jin <kejin@empress.com>
11*acaca342SPedro Giffuni  *  Copyright (C) 1996-2009 by OpenLink Software <iodbc@openlinksw.com>
1224201887SPedro Giffuni  *  All Rights Reserved.
1324201887SPedro Giffuni  *
1424201887SPedro Giffuni  *  This software is released under the terms of either of the following
1524201887SPedro Giffuni  *  licenses:
1624201887SPedro Giffuni  *
1724201887SPedro Giffuni  *      - GNU Library General Public License (see LICENSE.LGPL)
1824201887SPedro Giffuni  *      - The BSD License (see LICENSE.BSD).
1924201887SPedro Giffuni  *
2024201887SPedro Giffuni  *  Note that the only valid version of the LGPL license as far as this
2124201887SPedro Giffuni  *  project is concerned is the original GNU Library General Public License
2224201887SPedro Giffuni  *  Version 2, dated June 1991.
2324201887SPedro Giffuni  *
2424201887SPedro Giffuni  *  While not mandated by the BSD license, any patches you make to the
2524201887SPedro Giffuni  *  iODBC source code may be contributed back into the iODBC project
2624201887SPedro Giffuni  *  at your discretion. Contributions will benefit the Open Source and
2724201887SPedro Giffuni  *  Data Access community as a whole. Submissions may be made at:
2824201887SPedro Giffuni  *
2924201887SPedro Giffuni  *      http://www.iodbc.org
3024201887SPedro Giffuni  *
3124201887SPedro Giffuni  *
3224201887SPedro Giffuni  *  GNU Library Generic Public License Version 2
3324201887SPedro Giffuni  *  ============================================
3424201887SPedro Giffuni  *  This library is free software; you can redistribute it and/or
3524201887SPedro Giffuni  *  modify it under the terms of the GNU Library General Public
3624201887SPedro Giffuni  *  License as published by the Free Software Foundation; only
3724201887SPedro Giffuni  *  Version 2 of the License dated June 1991.
3824201887SPedro Giffuni  *
3924201887SPedro Giffuni  *  This library is distributed in the hope that it will be useful,
4024201887SPedro Giffuni  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
4124201887SPedro Giffuni  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
4224201887SPedro Giffuni  *  Library General Public License for more details.
4324201887SPedro Giffuni  *
4424201887SPedro Giffuni  *  You should have received a copy of the GNU Library General Public
4524201887SPedro Giffuni  *  License along with this library; if not, write to the Free
4624201887SPedro Giffuni  *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
4724201887SPedro Giffuni  *
4824201887SPedro Giffuni  *
4924201887SPedro Giffuni  *  The BSD License
5024201887SPedro Giffuni  *  ===============
5124201887SPedro Giffuni  *  Redistribution and use in source and binary forms, with or without
5224201887SPedro Giffuni  *  modification, are permitted provided that the following conditions
5324201887SPedro Giffuni  *  are met:
5424201887SPedro Giffuni  *
5524201887SPedro Giffuni  *  1. Redistributions of source code must retain the above copyright
5624201887SPedro Giffuni  *     notice, this list of conditions and the following disclaimer.
5724201887SPedro Giffuni  *  2. Redistributions in binary form must reproduce the above copyright
5824201887SPedro Giffuni  *     notice, this list of conditions and the following disclaimer in
5924201887SPedro Giffuni  *     the documentation and/or other materials provided with the
6024201887SPedro Giffuni  *     distribution.
6124201887SPedro Giffuni  *  3. Neither the name of OpenLink Software Inc. nor the names of its
6224201887SPedro Giffuni  *     contributors may be used to endorse or promote products derived
6324201887SPedro Giffuni  *     from this software without specific prior written permission.
6424201887SPedro Giffuni  *
6524201887SPedro Giffuni  *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
6624201887SPedro Giffuni  *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
6724201887SPedro Giffuni  *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
6824201887SPedro Giffuni  *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL OPENLINK OR
6924201887SPedro Giffuni  *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
7024201887SPedro Giffuni  *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
7124201887SPedro Giffuni  *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
7224201887SPedro Giffuni  *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
7324201887SPedro Giffuni  *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
7424201887SPedro Giffuni  *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
7524201887SPedro Giffuni  *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
7624201887SPedro Giffuni  */
77cdf0e10cSrcweir 
7824201887SPedro Giffuni #ifndef _SQL_H
7924201887SPedro Giffuni #define _SQL_H
80cdf0e10cSrcweir 
8124201887SPedro Giffuni /*
8224201887SPedro Giffuni  *  Set default specification to ODBC 3.51
8324201887SPedro Giffuni  */
84cdf0e10cSrcweir #ifndef ODBCVER
85cdf0e10cSrcweir #define ODBCVER		0x0351
86cdf0e10cSrcweir #endif
87cdf0e10cSrcweir 
8824201887SPedro Giffuni #ifndef _SQLTYPES_H
8924201887SPedro Giffuni #include <odbc/sqltypes.h>
90cdf0e10cSrcweir #endif
91cdf0e10cSrcweir 
92cdf0e10cSrcweir #ifdef __cplusplus
93cdf0e10cSrcweir extern "C" {
94cdf0e10cSrcweir #endif
95cdf0e10cSrcweir 
9624201887SPedro Giffuni /*
9724201887SPedro Giffuni  *  Useful Constants
9824201887SPedro Giffuni  */
99cdf0e10cSrcweir #define SQL_MAX_MESSAGE_LENGTH			512
100cdf0e10cSrcweir 
101cdf0e10cSrcweir 
10224201887SPedro Giffuni /*
10324201887SPedro Giffuni  *  Handle types
10424201887SPedro Giffuni  */
105cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
106cdf0e10cSrcweir #define SQL_HANDLE_ENV				1
107cdf0e10cSrcweir #define SQL_HANDLE_DBC				2
108cdf0e10cSrcweir #define SQL_HANDLE_STMT				3
109cdf0e10cSrcweir #define SQL_HANDLE_DESC				4
11024201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
111cdf0e10cSrcweir 
11224201887SPedro Giffuni 
11324201887SPedro Giffuni /*
11424201887SPedro Giffuni  *  Function return codes
11524201887SPedro Giffuni  */
11624201887SPedro Giffuni #define SQL_SUCCESS				0
11724201887SPedro Giffuni #define SQL_SUCCESS_WITH_INFO			1
11824201887SPedro Giffuni #define SQL_STILL_EXECUTING			2
11924201887SPedro Giffuni #define SQL_ERROR				(-1)
12024201887SPedro Giffuni #define SQL_INVALID_HANDLE			(-2)
12124201887SPedro Giffuni #define SQL_NEED_DATA				99
122cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
12324201887SPedro Giffuni #define SQL_NO_DATA				100
12424201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
125cdf0e10cSrcweir 
12624201887SPedro Giffuni 
12724201887SPedro Giffuni /*
12824201887SPedro Giffuni  *  Test for SQL_SUCCESS or SQL_SUCCESS_WITH_INFO
12924201887SPedro Giffuni  */
13024201887SPedro Giffuni #define SQL_SUCCEEDED(rc)			(((rc) & (~1)) == 0)
13124201887SPedro Giffuni 
13224201887SPedro Giffuni 
13324201887SPedro Giffuni /*
13424201887SPedro Giffuni  *  Special length values
13524201887SPedro Giffuni  */
13624201887SPedro Giffuni #define SQL_NULL_DATA				(-1)
13724201887SPedro Giffuni #define SQL_DATA_AT_EXEC			(-2)
13824201887SPedro Giffuni 
13924201887SPedro Giffuni 
14024201887SPedro Giffuni /*
14124201887SPedro Giffuni  *  Flags for null-terminated strings
14224201887SPedro Giffuni  */
14324201887SPedro Giffuni #define SQL_NTS					(-3)
14424201887SPedro Giffuni #define SQL_NTSL				(-3L)
14524201887SPedro Giffuni 
14624201887SPedro Giffuni 
14724201887SPedro Giffuni /*
14824201887SPedro Giffuni  *  Standard SQL datatypes, using ANSI type numbering
14924201887SPedro Giffuni  */
15024201887SPedro Giffuni #define SQL_UNKNOWN_TYPE			0
15124201887SPedro Giffuni #define SQL_CHAR				1
15224201887SPedro Giffuni #define SQL_NUMERIC				2
15324201887SPedro Giffuni #define SQL_DECIMAL				3
15424201887SPedro Giffuni #define SQL_INTEGER				4
15524201887SPedro Giffuni #define SQL_SMALLINT				5
15624201887SPedro Giffuni #define SQL_FLOAT				6
15724201887SPedro Giffuni #define SQL_REAL				7
15824201887SPedro Giffuni #define SQL_DOUBLE				8
15924201887SPedro Giffuni #if (ODBCVER >= 0x0300)
16024201887SPedro Giffuni #define SQL_DATETIME				9
16124201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
16224201887SPedro Giffuni #define SQL_VARCHAR				12
16324201887SPedro Giffuni 
16424201887SPedro Giffuni 
16524201887SPedro Giffuni /*
16624201887SPedro Giffuni  *  SQLGetTypeInfo request for all data types
16724201887SPedro Giffuni  */
16824201887SPedro Giffuni #define SQL_ALL_TYPES				0
16924201887SPedro Giffuni 
17024201887SPedro Giffuni 
17124201887SPedro Giffuni /*
17224201887SPedro Giffuni  *  Statement attribute values for date/time data types
17324201887SPedro Giffuni  */
17424201887SPedro Giffuni #if (ODBCVER >= 0x0300)
17524201887SPedro Giffuni #define SQL_TYPE_DATE				91
17624201887SPedro Giffuni #define SQL_TYPE_TIME				92
17724201887SPedro Giffuni #define SQL_TYPE_TIMESTAMP			93
17824201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
17924201887SPedro Giffuni 
18024201887SPedro Giffuni 
18124201887SPedro Giffuni /*
18224201887SPedro Giffuni  *  Date/Time length constants
18324201887SPedro Giffuni  */
18424201887SPedro Giffuni #if (ODBCVER >= 0x0300)
18524201887SPedro Giffuni #define SQL_DATE_LEN				10
18624201887SPedro Giffuni #define SQL_TIME_LEN				8	/* add P+1 if prec >0 */
18724201887SPedro Giffuni #define SQL_TIMESTAMP_LEN			19	/* add P+1 if prec >0 */
18824201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
18924201887SPedro Giffuni 
19024201887SPedro Giffuni 
19124201887SPedro Giffuni /*
19224201887SPedro Giffuni  *  NULL status constants
19324201887SPedro Giffuni  */
19424201887SPedro Giffuni #define SQL_NO_NULLS				0
19524201887SPedro Giffuni #define SQL_NULLABLE				1
19624201887SPedro Giffuni #define SQL_NULLABLE_UNKNOWN			2
19724201887SPedro Giffuni 
19824201887SPedro Giffuni 
19924201887SPedro Giffuni /*
20024201887SPedro Giffuni  *  NULL Handles
20124201887SPedro Giffuni  */
20224201887SPedro Giffuni #define SQL_NULL_HENV				0
20324201887SPedro Giffuni #define SQL_NULL_HDBC				0
20424201887SPedro Giffuni #define SQL_NULL_HSTMT				0
20524201887SPedro Giffuni #if (ODBCVER >= 0x0300)
20624201887SPedro Giffuni #define SQL_NULL_HDESC				0
20724201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
20824201887SPedro Giffuni 
20924201887SPedro Giffuni 
21024201887SPedro Giffuni /*
21124201887SPedro Giffuni  *  NULL handle for parent argument to SQLAllocHandle when allocating
21224201887SPedro Giffuni  *  a SQLHENV
21324201887SPedro Giffuni  */
21424201887SPedro Giffuni #if (ODBCVER >= 0x0300)
21524201887SPedro Giffuni #define SQL_NULL_HANDLE				0L
21624201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
21724201887SPedro Giffuni 
21824201887SPedro Giffuni 
21924201887SPedro Giffuni /*
22024201887SPedro Giffuni  *  CLI option values
22124201887SPedro Giffuni  */
22224201887SPedro Giffuni #if (ODBCVER >= 0x0300)
22324201887SPedro Giffuni #define SQL_FALSE				0
22424201887SPedro Giffuni #define SQL_TRUE				1
22524201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
22624201887SPedro Giffuni 
22724201887SPedro Giffuni 
22824201887SPedro Giffuni /*
22924201887SPedro Giffuni  *  Default conversion code for SQLBindCol(), SQLBindParam() and SQLGetData()
23024201887SPedro Giffuni  */
23124201887SPedro Giffuni #if (ODBCVER >= 0x0300)
23224201887SPedro Giffuni #define SQL_DEFAULT				99
23324201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
23424201887SPedro Giffuni 
23524201887SPedro Giffuni 
23624201887SPedro Giffuni /*
23724201887SPedro Giffuni  *  SQLDataSources/SQLFetchScroll - FetchOrientation
23824201887SPedro Giffuni  */
23924201887SPedro Giffuni #define SQL_FETCH_NEXT				1
24024201887SPedro Giffuni #define SQL_FETCH_FIRST				2
24124201887SPedro Giffuni 
24224201887SPedro Giffuni 
24324201887SPedro Giffuni /*
24424201887SPedro Giffuni  *  SQLFetchScroll - FetchOrientation
24524201887SPedro Giffuni  */
24624201887SPedro Giffuni #define SQL_FETCH_LAST				3
24724201887SPedro Giffuni #define SQL_FETCH_PRIOR				4
24824201887SPedro Giffuni #define SQL_FETCH_ABSOLUTE			5
24924201887SPedro Giffuni #define SQL_FETCH_RELATIVE			6
25024201887SPedro Giffuni 
25124201887SPedro Giffuni 
25224201887SPedro Giffuni /*
25324201887SPedro Giffuni  *  SQLFreeStmt
25424201887SPedro Giffuni  */
25524201887SPedro Giffuni #define SQL_CLOSE				0
25624201887SPedro Giffuni #define SQL_DROP				1
25724201887SPedro Giffuni #define SQL_UNBIND				2
25824201887SPedro Giffuni #define SQL_RESET_PARAMS			3
25924201887SPedro Giffuni 
26024201887SPedro Giffuni 
26124201887SPedro Giffuni /*
26224201887SPedro Giffuni  *  SQLGetConnectAttr - connection attributes
26324201887SPedro Giffuni  */
264cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
265cdf0e10cSrcweir #define SQL_ATTR_AUTO_IPD			10001
266cdf0e10cSrcweir #define SQL_ATTR_METADATA_ID			10014
267cdf0e10cSrcweir #endif	/* ODBCVER >= 0x0300 */
268cdf0e10cSrcweir 
269cdf0e10cSrcweir 
27024201887SPedro Giffuni /*
27124201887SPedro Giffuni  *   SQLGetData() code indicating that the application row descriptor
27224201887SPedro Giffuni  *   specifies the data type
27324201887SPedro Giffuni  */
274cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
27524201887SPedro Giffuni #define SQL_ARD_TYPE				(-99)
276cdf0e10cSrcweir #endif	/* ODBCVER >= 0x0300 */
277cdf0e10cSrcweir 
27824201887SPedro Giffuni 
27924201887SPedro Giffuni /*
28024201887SPedro Giffuni  *  SQLGetDescField - identifiers of fields in the SQL descriptor
28124201887SPedro Giffuni  */
282cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
283cdf0e10cSrcweir #define SQL_DESC_COUNT				1001
284cdf0e10cSrcweir #define SQL_DESC_TYPE				1002
285cdf0e10cSrcweir #define SQL_DESC_LENGTH				1003
286cdf0e10cSrcweir #define SQL_DESC_OCTET_LENGTH_PTR		1004
287cdf0e10cSrcweir #define SQL_DESC_PRECISION			1005
288cdf0e10cSrcweir #define SQL_DESC_SCALE				1006
289cdf0e10cSrcweir #define SQL_DESC_DATETIME_INTERVAL_CODE		1007
290cdf0e10cSrcweir #define SQL_DESC_NULLABLE			1008
291cdf0e10cSrcweir #define SQL_DESC_INDICATOR_PTR			1009
292cdf0e10cSrcweir #define SQL_DESC_DATA_PTR			1010
293cdf0e10cSrcweir #define SQL_DESC_NAME				1011
294cdf0e10cSrcweir #define SQL_DESC_UNNAMED			1012
295cdf0e10cSrcweir #define SQL_DESC_OCTET_LENGTH			1013
296cdf0e10cSrcweir #define SQL_DESC_ALLOC_TYPE			1099
29724201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
298cdf0e10cSrcweir 
29924201887SPedro Giffuni 
30024201887SPedro Giffuni /*
30124201887SPedro Giffuni  *  SQLGetDescField - SQL_DESC_ALLOC_TYPE
30224201887SPedro Giffuni  */
30324201887SPedro Giffuni #if (ODBCVER >= 0x0300)
30424201887SPedro Giffuni #define SQL_DESC_ALLOC_AUTO			1
30524201887SPedro Giffuni #define SQL_DESC_ALLOC_USER			2
30624201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
30724201887SPedro Giffuni 
30824201887SPedro Giffuni 
30924201887SPedro Giffuni /*
31024201887SPedro Giffuni  *  SQLGetDescField - SQL_DESC_DATETIME_INTERVAL_CODE
31124201887SPedro Giffuni  */
31224201887SPedro Giffuni #if (ODBCVER >= 0x0300)
31324201887SPedro Giffuni #define SQL_CODE_DATE				1
31424201887SPedro Giffuni #define SQL_CODE_TIME				2
31524201887SPedro Giffuni #define SQL_CODE_TIMESTAMP			3
31624201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
31724201887SPedro Giffuni 
31824201887SPedro Giffuni 
31924201887SPedro Giffuni /*
32024201887SPedro Giffuni  *  SQLGetDescField - SQL_DESC_UNNAMED
32124201887SPedro Giffuni  */
32224201887SPedro Giffuni #if (ODBCVER >= 0x0300)
32324201887SPedro Giffuni #define SQL_NAMED				0
32424201887SPedro Giffuni #define SQL_UNNAMED				1
32524201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
32624201887SPedro Giffuni 
32724201887SPedro Giffuni 
32824201887SPedro Giffuni /*
32924201887SPedro Giffuni  *  SQLGetDiagField - identifiers of fields in the diagnostics area
33024201887SPedro Giffuni  */
331cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
332cdf0e10cSrcweir #define SQL_DIAG_RETURNCODE			1
333cdf0e10cSrcweir #define SQL_DIAG_NUMBER				2
334cdf0e10cSrcweir #define SQL_DIAG_ROW_COUNT			3
335cdf0e10cSrcweir #define SQL_DIAG_SQLSTATE			4
336cdf0e10cSrcweir #define SQL_DIAG_NATIVE				5
337cdf0e10cSrcweir #define SQL_DIAG_MESSAGE_TEXT			6
338cdf0e10cSrcweir #define SQL_DIAG_DYNAMIC_FUNCTION		7
339cdf0e10cSrcweir #define SQL_DIAG_CLASS_ORIGIN			8
340cdf0e10cSrcweir #define SQL_DIAG_SUBCLASS_ORIGIN		9
341cdf0e10cSrcweir #define SQL_DIAG_CONNECTION_NAME		10
342cdf0e10cSrcweir #define SQL_DIAG_SERVER_NAME			11
343cdf0e10cSrcweir #define SQL_DIAG_DYNAMIC_FUNCTION_CODE		12
34424201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
345cdf0e10cSrcweir 
34624201887SPedro Giffuni 
34724201887SPedro Giffuni /*
34824201887SPedro Giffuni  *  SQLGetDiagField - SQL_DIAG_DYNAMIC_FUNCTION_CODE
34924201887SPedro Giffuni  */
350cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
351cdf0e10cSrcweir #define SQL_DIAG_ALTER_DOMAIN			3
352cdf0e10cSrcweir #define SQL_DIAG_ALTER_TABLE			4
353cdf0e10cSrcweir #define SQL_DIAG_CALL				7
354cdf0e10cSrcweir #define SQL_DIAG_CREATE_ASSERTION		6
355cdf0e10cSrcweir #define SQL_DIAG_CREATE_CHARACTER_SET		8
356cdf0e10cSrcweir #define SQL_DIAG_CREATE_COLLATION		10
357cdf0e10cSrcweir #define SQL_DIAG_CREATE_DOMAIN			23
358cdf0e10cSrcweir #define SQL_DIAG_CREATE_INDEX			(-1)
359cdf0e10cSrcweir #define SQL_DIAG_CREATE_SCHEMA			64
360cdf0e10cSrcweir #define SQL_DIAG_CREATE_TABLE			77
361cdf0e10cSrcweir #define SQL_DIAG_CREATE_TRANSLATION		79
362cdf0e10cSrcweir #define SQL_DIAG_CREATE_VIEW			84
363cdf0e10cSrcweir #define SQL_DIAG_DELETE_WHERE			19
364cdf0e10cSrcweir #define	SQL_DIAG_DROP_ASSERTION			24
365cdf0e10cSrcweir #define	SQL_DIAG_DROP_CHARACTER_SET		25
366cdf0e10cSrcweir #define	SQL_DIAG_DROP_COLLATION			26
367cdf0e10cSrcweir #define	SQL_DIAG_DROP_DOMAIN			27
368cdf0e10cSrcweir #define SQL_DIAG_DROP_INDEX			(-2)
369cdf0e10cSrcweir #define SQL_DIAG_DROP_SCHEMA			31
370cdf0e10cSrcweir #define SQL_DIAG_DROP_TABLE			32
371cdf0e10cSrcweir #define SQL_DIAG_DROP_TRANSLATION		33
372cdf0e10cSrcweir #define SQL_DIAG_DROP_VIEW			36
373cdf0e10cSrcweir #define SQL_DIAG_DYNAMIC_DELETE_CURSOR		38
374cdf0e10cSrcweir #define SQL_DIAG_DYNAMIC_UPDATE_CURSOR		81
375cdf0e10cSrcweir #define SQL_DIAG_GRANT				48
376cdf0e10cSrcweir #define SQL_DIAG_INSERT				50
377cdf0e10cSrcweir #define SQL_DIAG_REVOKE				59
378cdf0e10cSrcweir #define SQL_DIAG_SELECT_CURSOR			85
379cdf0e10cSrcweir #define SQL_DIAG_UNKNOWN_STATEMENT		0
380cdf0e10cSrcweir #define SQL_DIAG_UPDATE_WHERE			82
381cdf0e10cSrcweir #endif	/* ODBCVER >= 0x0300 */
382cdf0e10cSrcweir 
383cdf0e10cSrcweir 
38424201887SPedro Giffuni /*
38524201887SPedro Giffuni  *  SQLGetEnvAttr - environment attribute
386cdf0e10cSrcweir  */
387cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
38824201887SPedro Giffuni #define SQL_ATTR_OUTPUT_NTS			10001
38924201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
390cdf0e10cSrcweir 
391cdf0e10cSrcweir 
39224201887SPedro Giffuni /*
39324201887SPedro Giffuni  *  SQLGetFunctions
394cdf0e10cSrcweir  */
395cdf0e10cSrcweir #define SQL_API_SQLALLOCCONNECT			1
396cdf0e10cSrcweir #define SQL_API_SQLALLOCENV			2
397cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
398cdf0e10cSrcweir #define SQL_API_SQLALLOCHANDLE			1001
39924201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
400cdf0e10cSrcweir #define SQL_API_SQLALLOCSTMT			3
401cdf0e10cSrcweir #define SQL_API_SQLBINDCOL			4
402cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
403cdf0e10cSrcweir #define SQL_API_SQLBINDPARAM			1002
40424201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
405cdf0e10cSrcweir #define SQL_API_SQLCANCEL			5
406cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
407cdf0e10cSrcweir #define SQL_API_SQLCLOSECURSOR			1003
408cdf0e10cSrcweir #define SQL_API_SQLCOLATTRIBUTE			6
40924201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
410cdf0e10cSrcweir #define SQL_API_SQLCOLUMNS			40
411cdf0e10cSrcweir #define SQL_API_SQLCONNECT			7
412cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
413cdf0e10cSrcweir #define SQL_API_SQLCOPYDESC			1004
41424201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
415cdf0e10cSrcweir #define SQL_API_SQLDATASOURCES			57
416cdf0e10cSrcweir #define SQL_API_SQLDESCRIBECOL			8
417cdf0e10cSrcweir #define SQL_API_SQLDISCONNECT			9
418cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
419cdf0e10cSrcweir #define SQL_API_SQLENDTRAN			1005
42024201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
421cdf0e10cSrcweir #define SQL_API_SQLERROR			10
422cdf0e10cSrcweir #define SQL_API_SQLEXECDIRECT			11
423cdf0e10cSrcweir #define SQL_API_SQLEXECUTE			12
424cdf0e10cSrcweir #define SQL_API_SQLFETCH			13
425cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
426cdf0e10cSrcweir #define SQL_API_SQLFETCHSCROLL			1021
42724201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
428cdf0e10cSrcweir #define SQL_API_SQLFREECONNECT			14
429cdf0e10cSrcweir #define SQL_API_SQLFREEENV			15
430cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
431cdf0e10cSrcweir #define SQL_API_SQLFREEHANDLE			1006
43224201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
433cdf0e10cSrcweir #define SQL_API_SQLFREESTMT			16
434cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
435cdf0e10cSrcweir #define SQL_API_SQLGETCONNECTATTR		1007
43624201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
437cdf0e10cSrcweir #define SQL_API_SQLGETCONNECTOPTION		42
438cdf0e10cSrcweir #define SQL_API_SQLGETCURSORNAME		17
439cdf0e10cSrcweir #define SQL_API_SQLGETDATA			43
440cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
441cdf0e10cSrcweir #define SQL_API_SQLGETDESCFIELD			1008
442cdf0e10cSrcweir #define SQL_API_SQLGETDESCREC			1009
443cdf0e10cSrcweir #define SQL_API_SQLGETDIAGFIELD			1010
444cdf0e10cSrcweir #define SQL_API_SQLGETDIAGREC			1011
445cdf0e10cSrcweir #define SQL_API_SQLGETENVATTR			1012
44624201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
447cdf0e10cSrcweir #define SQL_API_SQLGETFUNCTIONS			44
448cdf0e10cSrcweir #define SQL_API_SQLGETINFO			45
449cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
450cdf0e10cSrcweir #define SQL_API_SQLGETSTMTATTR			1014
45124201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
452cdf0e10cSrcweir #define SQL_API_SQLGETSTMTOPTION		46
453cdf0e10cSrcweir #define SQL_API_SQLGETTYPEINFO			47
454cdf0e10cSrcweir #define SQL_API_SQLNUMRESULTCOLS		18
455cdf0e10cSrcweir #define SQL_API_SQLPARAMDATA			48
456cdf0e10cSrcweir #define SQL_API_SQLPREPARE			19
457cdf0e10cSrcweir #define SQL_API_SQLPUTDATA			49
458cdf0e10cSrcweir #define SQL_API_SQLROWCOUNT			20
459cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
460cdf0e10cSrcweir #define SQL_API_SQLSETCONNECTATTR		1016
46124201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
462cdf0e10cSrcweir #define SQL_API_SQLSETCONNECTOPTION		50
463cdf0e10cSrcweir #define SQL_API_SQLSETCURSORNAME		21
464cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
465cdf0e10cSrcweir #define SQL_API_SQLSETDESCFIELD			1017
466cdf0e10cSrcweir #define SQL_API_SQLSETDESCREC			1018
467cdf0e10cSrcweir #define SQL_API_SQLSETENVATTR			1019
46824201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
469cdf0e10cSrcweir #define SQL_API_SQLSETPARAM			22
470cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
471cdf0e10cSrcweir #define SQL_API_SQLSETSTMTATTR			1020
47224201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
473cdf0e10cSrcweir #define SQL_API_SQLSETSTMTOPTION		51
474cdf0e10cSrcweir #define SQL_API_SQLSPECIALCOLUMNS		52
475cdf0e10cSrcweir #define SQL_API_SQLSTATISTICS			53
476cdf0e10cSrcweir #define SQL_API_SQLTABLES			54
477cdf0e10cSrcweir #define SQL_API_SQLTRANSACT			23
478cdf0e10cSrcweir 
47924201887SPedro Giffuni 
48024201887SPedro Giffuni /*
48124201887SPedro Giffuni  *  SQLGetInfo
48224201887SPedro Giffuni  */
483cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
484cdf0e10cSrcweir #define SQL_MAX_DRIVER_CONNECTIONS		0
485cdf0e10cSrcweir #define SQL_MAXIMUM_DRIVER_CONNECTIONS		SQL_MAX_DRIVER_CONNECTIONS
486cdf0e10cSrcweir #define SQL_MAX_CONCURRENT_ACTIVITIES		1
487cdf0e10cSrcweir #define SQL_MAXIMUM_CONCURRENT_ACTIVITIES	SQL_MAX_CONCURRENT_ACTIVITIES
48824201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
489cdf0e10cSrcweir #define SQL_DATA_SOURCE_NAME			2
490cdf0e10cSrcweir #define SQL_FETCH_DIRECTION			8
491cdf0e10cSrcweir #define SQL_SERVER_NAME				13
492cdf0e10cSrcweir #define SQL_SEARCH_PATTERN_ESCAPE		14
493cdf0e10cSrcweir #define SQL_DBMS_NAME				17
494cdf0e10cSrcweir #define SQL_DBMS_VER				18
495cdf0e10cSrcweir #define SQL_ACCESSIBLE_TABLES			19
496cdf0e10cSrcweir #define SQL_ACCESSIBLE_PROCEDURES		20
497cdf0e10cSrcweir #define SQL_CURSOR_COMMIT_BEHAVIOR		23
498cdf0e10cSrcweir #define SQL_DATA_SOURCE_READ_ONLY		25
499cdf0e10cSrcweir #define SQL_DEFAULT_TXN_ISOLATION		26
500cdf0e10cSrcweir #define SQL_IDENTIFIER_CASE			28
501cdf0e10cSrcweir #define SQL_IDENTIFIER_QUOTE_CHAR		29
502cdf0e10cSrcweir #define SQL_MAX_COLUMN_NAME_LEN			30
503cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMN_NAME_LENGTH		SQL_MAX_COLUMN_NAME_LEN
504cdf0e10cSrcweir #define SQL_MAX_CURSOR_NAME_LEN			31
505cdf0e10cSrcweir #define SQL_MAXIMUM_CURSOR_NAME_LENGTH		SQL_MAX_CURSOR_NAME_LEN
506cdf0e10cSrcweir #define SQL_MAX_SCHEMA_NAME_LEN			32
507cdf0e10cSrcweir #define SQL_MAXIMUM_SCHEMA_NAME_LENGTH		SQL_MAX_SCHEMA_NAME_LEN
508cdf0e10cSrcweir #define SQL_MAX_CATALOG_NAME_LEN		34
509cdf0e10cSrcweir #define SQL_MAXIMUM_CATALOG_NAME_LENGTH		SQL_MAX_CATALOG_NAME_LEN
510cdf0e10cSrcweir #define SQL_MAX_TABLE_NAME_LEN			35
511cdf0e10cSrcweir #define SQL_SCROLL_CONCURRENCY			43
512cdf0e10cSrcweir #define SQL_TXN_CAPABLE				46
513cdf0e10cSrcweir #define SQL_TRANSACTION_CAPABLE			SQL_TXN_CAPABLE
514cdf0e10cSrcweir #define SQL_USER_NAME				47
515cdf0e10cSrcweir #define SQL_TXN_ISOLATION_OPTION		72
516cdf0e10cSrcweir #define SQL_TRANSACTION_ISOLATION_OPTION	SQL_TXN_ISOLATION_OPTION
517cdf0e10cSrcweir #define SQL_INTEGRITY				73
518cdf0e10cSrcweir #define SQL_GETDATA_EXTENSIONS			81
519cdf0e10cSrcweir #define SQL_NULL_COLLATION			85
520cdf0e10cSrcweir #define SQL_ALTER_TABLE				86
521cdf0e10cSrcweir #define SQL_ORDER_BY_COLUMNS_IN_SELECT		90
522cdf0e10cSrcweir #define SQL_SPECIAL_CHARACTERS			94
523cdf0e10cSrcweir #define SQL_MAX_COLUMNS_IN_GROUP_BY		97
524cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_GROUP_BY		SQL_MAX_COLUMNS_IN_GROUP_BY
525cdf0e10cSrcweir #define SQL_MAX_COLUMNS_IN_INDEX		98
526cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_INDEX		SQL_MAX_COLUMNS_IN_INDEX
527cdf0e10cSrcweir #define SQL_MAX_COLUMNS_IN_ORDER_BY		99
528cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_ORDER_BY		SQL_MAX_COLUMNS_IN_ORDER_BY
529cdf0e10cSrcweir #define SQL_MAX_COLUMNS_IN_SELECT		100
530cdf0e10cSrcweir #define SQL_MAXIMUM_COLUMNS_IN_SELECT		SQL_MAX_COLUMNS_IN_SELECT
531cdf0e10cSrcweir #define SQL_MAX_COLUMNS_IN_TABLE		101
532cdf0e10cSrcweir #define SQL_MAX_INDEX_SIZE			102
533cdf0e10cSrcweir #define SQL_MAXIMUM_INDEX_SIZE			SQL_MAX_INDEX_SIZE
534cdf0e10cSrcweir #define SQL_MAX_ROW_SIZE			104
535cdf0e10cSrcweir #define SQL_MAXIMUM_ROW_SIZE			SQL_MAX_ROW_SIZE
536cdf0e10cSrcweir #define SQL_MAX_STATEMENT_LEN			105
537cdf0e10cSrcweir #define SQL_MAXIMUM_STATEMENT_LENGTH		SQL_MAX_STATEMENT_LEN
538cdf0e10cSrcweir #define SQL_MAX_TABLES_IN_SELECT		106
539cdf0e10cSrcweir #define SQL_MAXIMUM_TABLES_IN_SELECT		SQL_MAX_TABLES_IN_SELECT
540cdf0e10cSrcweir #define SQL_MAX_USER_NAME_LEN			107
541cdf0e10cSrcweir #define SQL_MAXIMUM_USER_NAME_LENGTH		SQL_MAX_USER_NAME_LEN
542cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
543cdf0e10cSrcweir #define SQL_OJ_CAPABILITIES			115
544cdf0e10cSrcweir #define SQL_OUTER_JOIN_CAPABILITIES		SQL_OJ_CAPABILITIES
545cdf0e10cSrcweir #endif	/* ODBCVER >= 0x0300 */
546cdf0e10cSrcweir 
547cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
548cdf0e10cSrcweir #define SQL_XOPEN_CLI_YEAR			10000
549cdf0e10cSrcweir #define SQL_CURSOR_SENSITIVITY			10001
550cdf0e10cSrcweir #define SQL_DESCRIBE_PARAMETER			10002
551cdf0e10cSrcweir #define SQL_CATALOG_NAME			10003
552cdf0e10cSrcweir #define SQL_COLLATION_SEQ			10004
553cdf0e10cSrcweir #define SQL_MAX_IDENTIFIER_LEN			10005
554cdf0e10cSrcweir #define SQL_MAXIMUM_IDENTIFIER_LENGTH		SQL_MAX_IDENTIFIER_LEN
555cdf0e10cSrcweir #endif	/* ODBCVER >= 0x0300 */
556cdf0e10cSrcweir 
55724201887SPedro Giffuni 
55824201887SPedro Giffuni /*
55924201887SPedro Giffuni  *  SQLGetInfo - SQL_ALTER_TABLE
56024201887SPedro Giffuni  */
561cdf0e10cSrcweir #if (ODBCVER >= 0x0200)
562cdf0e10cSrcweir #define SQL_AT_ADD_COLUMN			0x00000001L
563cdf0e10cSrcweir #define SQL_AT_DROP_COLUMN			0x00000002L
56424201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
565cdf0e10cSrcweir 
566cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
567cdf0e10cSrcweir #define SQL_AT_ADD_CONSTRAINT			0x00000008L
56824201887SPedro Giffuni /*
56924201887SPedro Giffuni  * The following bitmasks are ODBC extensions and defined in sqlext.h:
57024201887SPedro Giffuni  *
571cdf0e10cSrcweir  * #define SQL_AT_COLUMN_SINGLE				0x00000020L
572cdf0e10cSrcweir  * #define SQL_AT_ADD_COLUMN_DEFAULT			0x00000040L
573cdf0e10cSrcweir  * #define SQL_AT_ADD_COLUMN_COLLATION			0x00000080L
574cdf0e10cSrcweir  * #define SQL_AT_SET_COLUMN_DEFAULT			0x00000100L
575cdf0e10cSrcweir  * #define SQL_AT_DROP_COLUMN_DEFAULT			0x00000200L
576cdf0e10cSrcweir  * #define SQL_AT_DROP_COLUMN_CASCADE			0x00000400L
577cdf0e10cSrcweir  * #define SQL_AT_DROP_COLUMN_RESTRICT			0x00000800L
578cdf0e10cSrcweir  * #define SQL_AT_ADD_TABLE_CONSTRAINT			0x00001000L
579cdf0e10cSrcweir  * #define SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE		0x00002000L
580cdf0e10cSrcweir  * #define SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT	0x00004000L
581cdf0e10cSrcweir  * #define SQL_AT_CONSTRAINT_NAME_DEFINITION		0x00008000L
582cdf0e10cSrcweir  * #define SQL_AT_CONSTRAINT_INITIALLY_DEFERRED		0x00010000L
583cdf0e10cSrcweir  * #define SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE	0x00020000L
584cdf0e10cSrcweir  * #define SQL_AT_CONSTRAINT_DEFERRABLE			0x00040000L
585cdf0e10cSrcweir  * #define SQL_AT_CONSTRAINT_NON_DEFERRABLE		0x00080000L
586cdf0e10cSrcweir  */
587cdf0e10cSrcweir #endif	/* ODBCVER >= 0x0300 */
588cdf0e10cSrcweir 
589cdf0e10cSrcweir 
59024201887SPedro Giffuni /*
59124201887SPedro Giffuni  *  SQLGetInfo - SQL_ASYNC_MODE
59224201887SPedro Giffuni  */
593cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
594cdf0e10cSrcweir #define SQL_AM_NONE				0
595cdf0e10cSrcweir #define SQL_AM_CONNECTION			1
596cdf0e10cSrcweir #define SQL_AM_STATEMENT			2
59724201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
598cdf0e10cSrcweir 
59924201887SPedro Giffuni 
60024201887SPedro Giffuni /*
60124201887SPedro Giffuni  *  SQLGetInfo - SQL_CURSOR_COMMIT_BEHAVIOR
60224201887SPedro Giffuni  */
603cdf0e10cSrcweir #define SQL_CB_DELETE				0
604cdf0e10cSrcweir #define SQL_CB_CLOSE				1
605cdf0e10cSrcweir #define SQL_CB_PRESERVE				2
606cdf0e10cSrcweir 
60724201887SPedro Giffuni 
60824201887SPedro Giffuni /*
60924201887SPedro Giffuni  *  SQLGetInfo - SQL_FETCH_DIRECTION
61024201887SPedro Giffuni  */
611cdf0e10cSrcweir #define SQL_FD_FETCH_NEXT			0x00000001L
612cdf0e10cSrcweir #define SQL_FD_FETCH_FIRST			0x00000002L
613cdf0e10cSrcweir #define SQL_FD_FETCH_LAST			0x00000004L
614cdf0e10cSrcweir #define SQL_FD_FETCH_PRIOR			0x00000008L
615cdf0e10cSrcweir #define SQL_FD_FETCH_ABSOLUTE			0x00000010L
616cdf0e10cSrcweir #define SQL_FD_FETCH_RELATIVE			0x00000020L
617cdf0e10cSrcweir 
61824201887SPedro Giffuni 
61924201887SPedro Giffuni /*
62024201887SPedro Giffuni  *  SQLGetInfo - SQL_GETDATA_EXTENSIONS
62124201887SPedro Giffuni  */
622cdf0e10cSrcweir #define SQL_GD_ANY_COLUMN			0x00000001L
623cdf0e10cSrcweir #define SQL_GD_ANY_ORDER			0x00000002L
624cdf0e10cSrcweir 
62524201887SPedro Giffuni 
62624201887SPedro Giffuni /*
62724201887SPedro Giffuni  *  SQLGetInfo - SQL_IDENTIFIER_CASE
62824201887SPedro Giffuni  */
629cdf0e10cSrcweir #define SQL_IC_UPPER				1
630cdf0e10cSrcweir #define SQL_IC_LOWER				2
631cdf0e10cSrcweir #define SQL_IC_SENSITIVE			3
632cdf0e10cSrcweir #define SQL_IC_MIXED				4
633cdf0e10cSrcweir 
63424201887SPedro Giffuni 
63524201887SPedro Giffuni /*
63624201887SPedro Giffuni  *  SQLGetInfo - SQL_NULL_COLLATION
63724201887SPedro Giffuni  */
63824201887SPedro Giffuni #define SQL_NC_HIGH				0
63924201887SPedro Giffuni #define SQL_NC_LOW				1
640cdf0e10cSrcweir 
641cdf0e10cSrcweir 
64224201887SPedro Giffuni /*
64324201887SPedro Giffuni  *  SQLGetInfo - SQL_OJ_CAPABILITIES
64424201887SPedro Giffuni  */
645cdf0e10cSrcweir #if (ODBCVER >= 0x0201)
646cdf0e10cSrcweir #define SQL_OJ_LEFT				0x00000001L
647cdf0e10cSrcweir #define SQL_OJ_RIGHT				0x00000002L
648cdf0e10cSrcweir #define SQL_OJ_FULL				0x00000004L
649cdf0e10cSrcweir #define SQL_OJ_NESTED				0x00000008L
650cdf0e10cSrcweir #define SQL_OJ_NOT_ORDERED			0x00000010L
651cdf0e10cSrcweir #define SQL_OJ_INNER				0x00000020L
652cdf0e10cSrcweir #define SQL_OJ_ALL_COMPARISON_OPS		0x00000040L
653cdf0e10cSrcweir #endif
654cdf0e10cSrcweir 
65524201887SPedro Giffuni 
65624201887SPedro Giffuni /*
65724201887SPedro Giffuni  *  SQLGetInfo - SQL_SCROLL_CONCURRENCY
65824201887SPedro Giffuni  */
659cdf0e10cSrcweir #define SQL_SCCO_READ_ONLY			0x00000001L
660cdf0e10cSrcweir #define SQL_SCCO_LOCK				0x00000002L
661cdf0e10cSrcweir #define SQL_SCCO_OPT_ROWVER			0x00000004L
662cdf0e10cSrcweir #define SQL_SCCO_OPT_VALUES			0x00000008L
663cdf0e10cSrcweir 
66424201887SPedro Giffuni 
66524201887SPedro Giffuni /*
66624201887SPedro Giffuni  *  SQLGetInfo - SQL_TXN_CAPABLE
66724201887SPedro Giffuni  */
668cdf0e10cSrcweir #define SQL_TC_NONE				0
669cdf0e10cSrcweir #define SQL_TC_DML				1
670cdf0e10cSrcweir #define SQL_TC_ALL				2
671cdf0e10cSrcweir #define SQL_TC_DDL_COMMIT			3
672cdf0e10cSrcweir #define SQL_TC_DDL_IGNORE			4
673cdf0e10cSrcweir 
67424201887SPedro Giffuni 
67524201887SPedro Giffuni /*
67624201887SPedro Giffuni  *  SQLGetInfo - SQL_TXN_ISOLATION_OPTION
67724201887SPedro Giffuni  */
678cdf0e10cSrcweir #define SQL_TXN_READ_UNCOMMITTED		0x00000001L
679cdf0e10cSrcweir #define SQL_TRANSACTION_READ_UNCOMMITTED	SQL_TXN_READ_UNCOMMITTED
680cdf0e10cSrcweir #define SQL_TXN_READ_COMMITTED			0x00000002L
681cdf0e10cSrcweir #define SQL_TRANSACTION_READ_COMMITTED		SQL_TXN_READ_COMMITTED
682cdf0e10cSrcweir #define SQL_TXN_REPEATABLE_READ			0x00000004L
683cdf0e10cSrcweir #define SQL_TRANSACTION_REPEATABLE_READ		SQL_TXN_REPEATABLE_READ
684cdf0e10cSrcweir #define SQL_TXN_SERIALIZABLE			0x00000008L
685cdf0e10cSrcweir #define SQL_TRANSACTION_SERIALIZABLE		SQL_TXN_SERIALIZABLE
686cdf0e10cSrcweir 
687cdf0e10cSrcweir 
68824201887SPedro Giffuni /*
68924201887SPedro Giffuni  *  SQLGetStmtAttr - statement attributes
69024201887SPedro Giffuni  */
69124201887SPedro Giffuni #if (ODBCVER >= 0x0300)
69224201887SPedro Giffuni #define SQL_ATTR_APP_ROW_DESC			10010
69324201887SPedro Giffuni #define SQL_ATTR_APP_PARAM_DESC			10011
69424201887SPedro Giffuni #define SQL_ATTR_IMP_ROW_DESC			10012
69524201887SPedro Giffuni #define SQL_ATTR_IMP_PARAM_DESC			10013
69624201887SPedro Giffuni #define SQL_ATTR_CURSOR_SCROLLABLE		(-1)
69724201887SPedro Giffuni #define SQL_ATTR_CURSOR_SENSITIVITY		(-2)
69824201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
69924201887SPedro Giffuni 
70024201887SPedro Giffuni 
70124201887SPedro Giffuni /*
70224201887SPedro Giffuni  *  SQLGetStmtAttr - SQL_ATTR_CURSOR_SCROLLABLE
70324201887SPedro Giffuni  */
70424201887SPedro Giffuni #if (ODBCVER >= 0x0300)
70524201887SPedro Giffuni #define SQL_NONSCROLLABLE			0
70624201887SPedro Giffuni #define SQL_SCROLLABLE				1
70724201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
70824201887SPedro Giffuni 
70924201887SPedro Giffuni 
71024201887SPedro Giffuni /*
71124201887SPedro Giffuni  *  SQLGetStmtAttr - SQL_ATTR_CURSOR_SENSITIVITY
71224201887SPedro Giffuni  */
71324201887SPedro Giffuni #if (ODBCVER >= 0x0300)
71424201887SPedro Giffuni #define SQL_UNSPECIFIED				0
71524201887SPedro Giffuni #define SQL_INSENSITIVE				1
71624201887SPedro Giffuni #define SQL_SENSITIVE				2
71724201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
71824201887SPedro Giffuni 
71924201887SPedro Giffuni 
72024201887SPedro Giffuni /*
72124201887SPedro Giffuni  *  SQLGetTypeInfo - SEARCHABLE
72224201887SPedro Giffuni  */
72324201887SPedro Giffuni #if (ODBCVER >= 0x0300)
72424201887SPedro Giffuni #define SQL_PRED_NONE				0
72524201887SPedro Giffuni #define SQL_PRED_CHAR				1
72624201887SPedro Giffuni #define SQL_PRED_BASIC				2
72724201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
72824201887SPedro Giffuni 
72924201887SPedro Giffuni 
73024201887SPedro Giffuni /*
73124201887SPedro Giffuni  *  SQLSpecialColumns - Column scopes
73224201887SPedro Giffuni  */
73324201887SPedro Giffuni #define SQL_SCOPE_CURROW			0
73424201887SPedro Giffuni #define SQL_SCOPE_TRANSACTION			1
73524201887SPedro Giffuni #define SQL_SCOPE_SESSION			2
73624201887SPedro Giffuni 
73724201887SPedro Giffuni 
73824201887SPedro Giffuni /*
73924201887SPedro Giffuni  *  SQLSpecialColumns - PSEUDO_COLUMN
74024201887SPedro Giffuni  */
74124201887SPedro Giffuni #define SQL_PC_UNKNOWN				0
74224201887SPedro Giffuni #if (ODBCVER >= 0x0300)
74324201887SPedro Giffuni #define SQL_PC_NON_PSEUDO			1
74424201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
74524201887SPedro Giffuni #define SQL_PC_PSEUDO				2
74624201887SPedro Giffuni 
74724201887SPedro Giffuni 
74824201887SPedro Giffuni /*
74924201887SPedro Giffuni  *  SQLSpecialColumns - IdentifierType
75024201887SPedro Giffuni  */
75124201887SPedro Giffuni #if (ODBCVER >= 0x0300)
75224201887SPedro Giffuni #define SQL_ROW_IDENTIFIER			1
75324201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
75424201887SPedro Giffuni 
75524201887SPedro Giffuni 
75624201887SPedro Giffuni /*
75724201887SPedro Giffuni  *  SQLStatistics - fUnique
75824201887SPedro Giffuni  */
75924201887SPedro Giffuni #define SQL_INDEX_UNIQUE			0
76024201887SPedro Giffuni #define SQL_INDEX_ALL				1
76124201887SPedro Giffuni 
76224201887SPedro Giffuni 
76324201887SPedro Giffuni /*
76424201887SPedro Giffuni  *  SQLStatistics - TYPE
76524201887SPedro Giffuni  */
76624201887SPedro Giffuni #define SQL_INDEX_CLUSTERED			1
76724201887SPedro Giffuni #define SQL_INDEX_HASHED			2
76824201887SPedro Giffuni #define SQL_INDEX_OTHER				3
76924201887SPedro Giffuni 
77024201887SPedro Giffuni 
77124201887SPedro Giffuni /*
77224201887SPedro Giffuni  *  SQLTransact/SQLEndTran
77324201887SPedro Giffuni  */
77424201887SPedro Giffuni #define SQL_COMMIT				0
77524201887SPedro Giffuni #define SQL_ROLLBACK				1
77624201887SPedro Giffuni 
77724201887SPedro Giffuni 
77824201887SPedro Giffuni /*
77924201887SPedro Giffuni  *  Function Prototypes
78024201887SPedro Giffuni  */
78124201887SPedro Giffuni SQLRETURN SQL_API SQLAllocConnect (
78224201887SPedro Giffuni     SQLHENV		  EnvironmentHandle,
783cdf0e10cSrcweir     SQLHDBC		* ConnectionHandle);
784cdf0e10cSrcweir 
78524201887SPedro Giffuni SQLRETURN SQL_API SQLAllocEnv (
78624201887SPedro Giffuni     SQLHENV		* EnvironmentHandle);
787cdf0e10cSrcweir 
788cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
78924201887SPedro Giffuni SQLRETURN SQL_API SQLAllocHandle (
79024201887SPedro Giffuni     SQLSMALLINT		  HandleType,
79124201887SPedro Giffuni     SQLHANDLE		  InputHandle,
79224201887SPedro Giffuni     SQLHANDLE		* OutputHandle);
79324201887SPedro Giffuni #endif	/* ODBCVER >= 0x0300 */
794cdf0e10cSrcweir 
79524201887SPedro Giffuni SQLRETURN SQL_API SQLAllocStmt (
79624201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
797cdf0e10cSrcweir     SQLHSTMT		* StatementHandle);
798cdf0e10cSrcweir 
79924201887SPedro Giffuni SQLRETURN SQL_API SQLBindCol (
80024201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
80124201887SPedro Giffuni     SQLUSMALLINT	  ColumnNumber,
80224201887SPedro Giffuni     SQLSMALLINT		  TargetType,
80324201887SPedro Giffuni     SQLPOINTER		  TargetValue,
80424201887SPedro Giffuni     SQLLEN		  BufferLength,
805cdf0e10cSrcweir     SQLLEN		* StrLen_or_Ind);
806cdf0e10cSrcweir 
807cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
80824201887SPedro Giffuni SQLRETURN SQL_API SQLBindParam (
80924201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
81024201887SPedro Giffuni     SQLUSMALLINT	  ParameterNumber,
81124201887SPedro Giffuni     SQLSMALLINT		  ValueType,
81224201887SPedro Giffuni     SQLSMALLINT		  ParameterType,
81324201887SPedro Giffuni     SQLULEN		  LengthPrecision,
81424201887SPedro Giffuni     SQLSMALLINT		  ParameterScale,
81524201887SPedro Giffuni     SQLPOINTER		  ParameterValue,
816cdf0e10cSrcweir     SQLLEN		* StrLen_or_Ind);
817cdf0e10cSrcweir #endif
818cdf0e10cSrcweir 
81924201887SPedro Giffuni SQLRETURN SQL_API SQLCancel (
82024201887SPedro Giffuni     SQLHSTMT		  StatementHandle);
821cdf0e10cSrcweir 
822cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
82324201887SPedro Giffuni SQLRETURN SQL_API SQLCloseCursor (
82424201887SPedro Giffuni     SQLHSTMT		  StatementHandle);
825cdf0e10cSrcweir 
82624201887SPedro Giffuni /*
82724201887SPedro Giffuni  *  Using SQLLEN * instead of SQLPOINTER for NumericAttribute,
82824201887SPedro Giffuni  *  makes the prototype the same as SQLColAttributes (deprecated)
82924201887SPedro Giffuni  *  and clearer for 64bit ports
83024201887SPedro Giffuni  */
83124201887SPedro Giffuni SQLRETURN SQL_API SQLColAttribute (
83224201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
83324201887SPedro Giffuni     SQLUSMALLINT	  ColumnNumber,
83424201887SPedro Giffuni     SQLUSMALLINT	  FieldIdentifier,
83524201887SPedro Giffuni     SQLPOINTER		  CharacterAttribute,
83624201887SPedro Giffuni     SQLSMALLINT		  BufferLength,
83724201887SPedro Giffuni     SQLSMALLINT		* StringLength,
83824201887SPedro Giffuni     SQLLEN		* NumericAttribute);
839cdf0e10cSrcweir #endif
840cdf0e10cSrcweir 
84124201887SPedro Giffuni SQLRETURN SQL_API SQLColumns (
84224201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
84324201887SPedro Giffuni     SQLCHAR		* CatalogName,
84424201887SPedro Giffuni     SQLSMALLINT		  NameLength1,
84524201887SPedro Giffuni     SQLCHAR		* SchemaName,
84624201887SPedro Giffuni     SQLSMALLINT		  NameLength2,
84724201887SPedro Giffuni     SQLCHAR		* TableName,
84824201887SPedro Giffuni     SQLSMALLINT		  NameLength3,
84924201887SPedro Giffuni     SQLCHAR		* ColumnName,
85024201887SPedro Giffuni     SQLSMALLINT		  NameLength4);
851cdf0e10cSrcweir 
85224201887SPedro Giffuni SQLRETURN SQL_API SQLConnect (
85324201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
85424201887SPedro Giffuni     SQLCHAR		* ServerName,
85524201887SPedro Giffuni     SQLSMALLINT		  NameLength1,
85624201887SPedro Giffuni     SQLCHAR		* UserName,
85724201887SPedro Giffuni     SQLSMALLINT		  NameLength2,
85824201887SPedro Giffuni     SQLCHAR		* Authentication,
85924201887SPedro Giffuni     SQLSMALLINT		  NameLength3);
860cdf0e10cSrcweir 
861cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
86224201887SPedro Giffuni SQLRETURN SQL_API SQLCopyDesc (
86324201887SPedro Giffuni     SQLHDESC		  SourceDescHandle,
864cdf0e10cSrcweir     SQLHDESC		  TargetDescHandle);
865cdf0e10cSrcweir #endif
866cdf0e10cSrcweir 
86724201887SPedro Giffuni SQLRETURN SQL_API SQLDataSources (
86824201887SPedro Giffuni     SQLHENV		  EnvironmentHandle,
86924201887SPedro Giffuni     SQLUSMALLINT	  Direction,
87024201887SPedro Giffuni     SQLCHAR		* ServerName,
87124201887SPedro Giffuni     SQLSMALLINT		  BufferLength1,
87224201887SPedro Giffuni     SQLSMALLINT		* NameLength1,
87324201887SPedro Giffuni     SQLCHAR		* Description,
87424201887SPedro Giffuni     SQLSMALLINT		  BufferLength2,
875cdf0e10cSrcweir     SQLSMALLINT		* NameLength2);
876cdf0e10cSrcweir 
87724201887SPedro Giffuni SQLRETURN SQL_API SQLDescribeCol (
87824201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
87924201887SPedro Giffuni     SQLUSMALLINT	  ColumnNumber,
88024201887SPedro Giffuni     SQLCHAR		* ColumnName,
88124201887SPedro Giffuni     SQLSMALLINT		  BufferLength,
88224201887SPedro Giffuni     SQLSMALLINT		* NameLength,
88324201887SPedro Giffuni     SQLSMALLINT		* DataType,
88424201887SPedro Giffuni     SQLULEN		* ColumnSize,
88524201887SPedro Giffuni     SQLSMALLINT		* DecimalDigits,
88624201887SPedro Giffuni     SQLSMALLINT		* Nullable);
887cdf0e10cSrcweir 
88824201887SPedro Giffuni SQLRETURN SQL_API SQLDisconnect (
88924201887SPedro Giffuni     SQLHDBC		  ConnectionHandle);
890cdf0e10cSrcweir 
891cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
89224201887SPedro Giffuni SQLRETURN SQL_API SQLEndTran (
89324201887SPedro Giffuni     SQLSMALLINT		  HandleType,
89424201887SPedro Giffuni     SQLHANDLE		  Handle,
895cdf0e10cSrcweir     SQLSMALLINT		  CompletionType);
896cdf0e10cSrcweir #endif
897cdf0e10cSrcweir 
89824201887SPedro Giffuni SQLRETURN SQL_API SQLError (
89924201887SPedro Giffuni     SQLHENV		  EnvironmentHandle,
90024201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
90124201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
90224201887SPedro Giffuni     SQLCHAR		* Sqlstate,
90324201887SPedro Giffuni     SQLINTEGER		* NativeError,
90424201887SPedro Giffuni     SQLCHAR		* MessageText,
90524201887SPedro Giffuni     SQLSMALLINT		  BufferLength,
906cdf0e10cSrcweir     SQLSMALLINT		* TextLength);
907cdf0e10cSrcweir 
90824201887SPedro Giffuni SQLRETURN SQL_API SQLExecDirect (
90924201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
91024201887SPedro Giffuni     SQLCHAR		* StatementText,
91124201887SPedro Giffuni     SQLINTEGER		  TextLength);
912cdf0e10cSrcweir 
91324201887SPedro Giffuni SQLRETURN SQL_API SQLExecute (
91424201887SPedro Giffuni     SQLHSTMT		  StatementHandle);
915cdf0e10cSrcweir 
91624201887SPedro Giffuni SQLRETURN SQL_API SQLFetch (
91724201887SPedro Giffuni     SQLHSTMT		  StatementHandle);
918cdf0e10cSrcweir 
919cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
92024201887SPedro Giffuni SQLRETURN SQL_API SQLFetchScroll (
92124201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
92224201887SPedro Giffuni     SQLSMALLINT		  FetchOrientation,
92324201887SPedro Giffuni     SQLLEN		  FetchOffset);
924cdf0e10cSrcweir #endif
925cdf0e10cSrcweir 
92624201887SPedro Giffuni SQLRETURN SQL_API SQLFreeConnect (
92724201887SPedro Giffuni     SQLHDBC		  ConnectionHandle);
928cdf0e10cSrcweir 
92924201887SPedro Giffuni SQLRETURN SQL_API SQLFreeEnv (
93024201887SPedro Giffuni     SQLHENV		  EnvironmentHandle);
931cdf0e10cSrcweir 
932cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
93324201887SPedro Giffuni SQLRETURN SQL_API SQLFreeHandle (
93424201887SPedro Giffuni     SQLSMALLINT		  HandleType,
93524201887SPedro Giffuni     SQLHANDLE		  Handle);
936cdf0e10cSrcweir #endif
937cdf0e10cSrcweir 
93824201887SPedro Giffuni SQLRETURN SQL_API SQLFreeStmt (
93924201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
940cdf0e10cSrcweir     SQLUSMALLINT	  Option);
941cdf0e10cSrcweir 
942cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
94324201887SPedro Giffuni SQLRETURN SQL_API SQLGetConnectAttr (
94424201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
94524201887SPedro Giffuni     SQLINTEGER		  Attribute,
94624201887SPedro Giffuni     SQLPOINTER		  Value,
94724201887SPedro Giffuni     SQLINTEGER		  BufferLength,
94824201887SPedro Giffuni     SQLINTEGER		* StringLength);
949cdf0e10cSrcweir #endif
950cdf0e10cSrcweir 
95124201887SPedro Giffuni SQLRETURN SQL_API SQLGetConnectOption (
95224201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
95324201887SPedro Giffuni     SQLUSMALLINT	  Option,
95424201887SPedro Giffuni     SQLPOINTER		  Value);
955cdf0e10cSrcweir 
95624201887SPedro Giffuni SQLRETURN SQL_API SQLGetCursorName (
95724201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
95824201887SPedro Giffuni     SQLCHAR		* CursorName,
95924201887SPedro Giffuni     SQLSMALLINT		  BufferLength,
960cdf0e10cSrcweir     SQLSMALLINT		* NameLength);
961cdf0e10cSrcweir 
96224201887SPedro Giffuni SQLRETURN SQL_API SQLGetData (
96324201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
96424201887SPedro Giffuni     SQLUSMALLINT	  ColumnNumber,
96524201887SPedro Giffuni     SQLSMALLINT		  TargetType,
96624201887SPedro Giffuni     SQLPOINTER		  TargetValue,
96724201887SPedro Giffuni     SQLLEN		  BufferLength,
968cdf0e10cSrcweir     SQLLEN		* StrLen_or_Ind);
969cdf0e10cSrcweir 
970cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
97124201887SPedro Giffuni SQLRETURN SQL_API SQLGetDescField (
97224201887SPedro Giffuni     SQLHDESC		  DescriptorHandle,
97324201887SPedro Giffuni     SQLSMALLINT		  RecNumber,
97424201887SPedro Giffuni     SQLSMALLINT		  FieldIdentifier,
97524201887SPedro Giffuni     SQLPOINTER		  Value,
97624201887SPedro Giffuni     SQLINTEGER		  BufferLength,
977cdf0e10cSrcweir     SQLINTEGER		* StringLength);
978cdf0e10cSrcweir 
97924201887SPedro Giffuni SQLRETURN SQL_API SQLGetDescRec (
98024201887SPedro Giffuni     SQLHDESC		  DescriptorHandle,
98124201887SPedro Giffuni     SQLSMALLINT		  RecNumber,
98224201887SPedro Giffuni     SQLCHAR		* Name,
98324201887SPedro Giffuni     SQLSMALLINT		  BufferLength,
98424201887SPedro Giffuni     SQLSMALLINT		* StringLength,
98524201887SPedro Giffuni     SQLSMALLINT		* Type,
98624201887SPedro Giffuni     SQLSMALLINT		* SubType,
98724201887SPedro Giffuni     SQLLEN		* Length,
98824201887SPedro Giffuni     SQLSMALLINT		* Precision,
98924201887SPedro Giffuni     SQLSMALLINT		* Scale,
99024201887SPedro Giffuni     SQLSMALLINT		* Nullable);
991cdf0e10cSrcweir 
99224201887SPedro Giffuni SQLRETURN SQL_API SQLGetDiagField (
99324201887SPedro Giffuni     SQLSMALLINT		  HandleType,
99424201887SPedro Giffuni     SQLHANDLE		  Handle,
99524201887SPedro Giffuni     SQLSMALLINT		  RecNumber,
99624201887SPedro Giffuni     SQLSMALLINT		  DiagIdentifier,
99724201887SPedro Giffuni     SQLPOINTER		  DiagInfo,
99824201887SPedro Giffuni     SQLSMALLINT		  BufferLength,
999cdf0e10cSrcweir     SQLSMALLINT		* StringLength);
1000cdf0e10cSrcweir 
100124201887SPedro Giffuni SQLRETURN SQL_API SQLGetDiagRec (
100224201887SPedro Giffuni     SQLSMALLINT		  HandleType,
100324201887SPedro Giffuni     SQLHANDLE		  Handle,
100424201887SPedro Giffuni     SQLSMALLINT		  RecNumber,
100524201887SPedro Giffuni     SQLCHAR		* Sqlstate,
100624201887SPedro Giffuni     SQLINTEGER		* NativeError,
100724201887SPedro Giffuni     SQLCHAR		* MessageText,
100824201887SPedro Giffuni     SQLSMALLINT		  BufferLength,
100924201887SPedro Giffuni     SQLSMALLINT		* TextLength);
1010cdf0e10cSrcweir 
101124201887SPedro Giffuni SQLRETURN SQL_API SQLGetEnvAttr (
101224201887SPedro Giffuni     SQLHENV		  EnvironmentHandle,
101324201887SPedro Giffuni     SQLINTEGER		  Attribute,
101424201887SPedro Giffuni     SQLPOINTER		  Value,
101524201887SPedro Giffuni     SQLINTEGER		  BufferLength,
101624201887SPedro Giffuni     SQLINTEGER		* StringLength);
1017cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */
1018cdf0e10cSrcweir 
101924201887SPedro Giffuni SQLRETURN SQL_API SQLGetFunctions (
102024201887SPedro Giffuni     SQLHDBC		ConnectionHandle,
102124201887SPedro Giffuni     SQLUSMALLINT	FunctionId,
102224201887SPedro Giffuni     SQLUSMALLINT *	Supported);
1023cdf0e10cSrcweir 
102424201887SPedro Giffuni SQLRETURN SQL_API SQLGetInfo (
102524201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
102624201887SPedro Giffuni     SQLUSMALLINT	  InfoType,
102724201887SPedro Giffuni     SQLPOINTER		  InfoValue,
102824201887SPedro Giffuni     SQLSMALLINT		  BufferLength,
102924201887SPedro Giffuni     SQLSMALLINT		* StringLength);
1030cdf0e10cSrcweir 
1031cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
103224201887SPedro Giffuni SQLRETURN SQL_API SQLGetStmtAttr (
103324201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
103424201887SPedro Giffuni     SQLINTEGER		  Attribute,
103524201887SPedro Giffuni     SQLPOINTER		  Value,
103624201887SPedro Giffuni     SQLINTEGER		  BufferLength,
103724201887SPedro Giffuni     SQLINTEGER		* StringLength);
1038cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */
1039cdf0e10cSrcweir 
104024201887SPedro Giffuni SQLRETURN SQL_API SQLGetStmtOption (
104124201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
104224201887SPedro Giffuni     SQLUSMALLINT	  Option,
104324201887SPedro Giffuni     SQLPOINTER		  Value);
1044cdf0e10cSrcweir 
104524201887SPedro Giffuni SQLRETURN SQL_API SQLGetTypeInfo (
104624201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
1047cdf0e10cSrcweir     SQLSMALLINT		  DataType);
1048cdf0e10cSrcweir 
104924201887SPedro Giffuni SQLRETURN SQL_API SQLNumResultCols (
105024201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
1051cdf0e10cSrcweir     SQLSMALLINT		* ColumnCount);
1052cdf0e10cSrcweir 
105324201887SPedro Giffuni SQLRETURN SQL_API SQLParamData (
105424201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
1055cdf0e10cSrcweir     SQLPOINTER		* Value);
1056cdf0e10cSrcweir 
105724201887SPedro Giffuni SQLRETURN SQL_API SQLPrepare (
105824201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
105924201887SPedro Giffuni     SQLCHAR		* StatementText,
106024201887SPedro Giffuni     SQLINTEGER		  TextLength);
1061cdf0e10cSrcweir 
106224201887SPedro Giffuni SQLRETURN SQL_API SQLPutData (
106324201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
106424201887SPedro Giffuni     SQLPOINTER		  Data,
106524201887SPedro Giffuni     SQLLEN		  StrLen_or_Ind);
1066cdf0e10cSrcweir 
106724201887SPedro Giffuni SQLRETURN SQL_API SQLRowCount (
106824201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
1069cdf0e10cSrcweir     SQLLEN		* RowCount);
1070cdf0e10cSrcweir 
1071cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
107224201887SPedro Giffuni SQLRETURN SQL_API SQLSetConnectAttr (
107324201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
107424201887SPedro Giffuni     SQLINTEGER		  Attribute,
107524201887SPedro Giffuni     SQLPOINTER		  Value,
1076cdf0e10cSrcweir     SQLINTEGER		  StringLength);
1077cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */
1078cdf0e10cSrcweir 
107924201887SPedro Giffuni SQLRETURN SQL_API SQLSetConnectOption (
108024201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
108124201887SPedro Giffuni     SQLUSMALLINT	  Option,
108224201887SPedro Giffuni     SQLULEN		  Value);
1083cdf0e10cSrcweir 
108424201887SPedro Giffuni SQLRETURN SQL_API SQLSetCursorName (
108524201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
108624201887SPedro Giffuni     SQLCHAR		* CursorName,
108724201887SPedro Giffuni     SQLSMALLINT		  NameLength);
1088cdf0e10cSrcweir 
1089cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
109024201887SPedro Giffuni SQLRETURN SQL_API SQLSetDescField (
109124201887SPedro Giffuni     SQLHDESC		  DescriptorHandle,
109224201887SPedro Giffuni     SQLSMALLINT		  RecNumber,
109324201887SPedro Giffuni     SQLSMALLINT		  FieldIdentifier,
109424201887SPedro Giffuni     SQLPOINTER		  Value,
109524201887SPedro Giffuni     SQLINTEGER		  BufferLength);
1096cdf0e10cSrcweir 
109724201887SPedro Giffuni SQLRETURN SQL_API SQLSetDescRec (
109824201887SPedro Giffuni     SQLHDESC		  DescriptorHandle,
109924201887SPedro Giffuni     SQLSMALLINT		  RecNumber,
110024201887SPedro Giffuni     SQLSMALLINT		  Type,
110124201887SPedro Giffuni     SQLSMALLINT		  SubType,
110224201887SPedro Giffuni     SQLLEN		  Length,
110324201887SPedro Giffuni     SQLSMALLINT		  Precision,
110424201887SPedro Giffuni     SQLSMALLINT		  Scale,
110524201887SPedro Giffuni     SQLPOINTER		  Data,
110624201887SPedro Giffuni     SQLLEN		* StringLength,
1107cdf0e10cSrcweir     SQLLEN		* Indicator);
1108cdf0e10cSrcweir 
110924201887SPedro Giffuni SQLRETURN SQL_API SQLSetEnvAttr (
111024201887SPedro Giffuni     SQLHENV		  EnvironmentHandle,
111124201887SPedro Giffuni     SQLINTEGER		  Attribute,
111224201887SPedro Giffuni     SQLPOINTER		  Value,
1113cdf0e10cSrcweir     SQLINTEGER		  StringLength);
1114cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */
1115cdf0e10cSrcweir 
1116cdf0e10cSrcweir 
1117cdf0e10cSrcweir #if (ODBCVER >= 0x0300)
111824201887SPedro Giffuni SQLRETURN SQL_API SQLSetStmtAttr (
111924201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
112024201887SPedro Giffuni     SQLINTEGER		  Attribute,
112124201887SPedro Giffuni     SQLPOINTER		  Value,
1122cdf0e10cSrcweir     SQLINTEGER		  StringLength);
1123cdf0e10cSrcweir #endif
1124cdf0e10cSrcweir 
112524201887SPedro Giffuni SQLRETURN SQL_API SQLSetStmtOption (
112624201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
112724201887SPedro Giffuni     SQLUSMALLINT	  Option,
112824201887SPedro Giffuni     SQLULEN		  Value);
1129cdf0e10cSrcweir 
113024201887SPedro Giffuni SQLRETURN SQL_API SQLSpecialColumns (
113124201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
113224201887SPedro Giffuni     SQLUSMALLINT	  IdentifierType,
113324201887SPedro Giffuni     SQLCHAR		* CatalogName,
113424201887SPedro Giffuni     SQLSMALLINT		  NameLength1,
113524201887SPedro Giffuni     SQLCHAR		* SchemaName,
113624201887SPedro Giffuni     SQLSMALLINT		  NameLength2,
113724201887SPedro Giffuni     SQLCHAR		* TableName,
113824201887SPedro Giffuni     SQLSMALLINT		  NameLength3,
113924201887SPedro Giffuni     SQLUSMALLINT	  Scope,
1140cdf0e10cSrcweir     SQLUSMALLINT	  Nullable);
1141cdf0e10cSrcweir 
114224201887SPedro Giffuni SQLRETURN SQL_API SQLStatistics (
114324201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
114424201887SPedro Giffuni     SQLCHAR		* CatalogName,
114524201887SPedro Giffuni     SQLSMALLINT		  NameLength1,
114624201887SPedro Giffuni     SQLCHAR		* SchemaName,
114724201887SPedro Giffuni     SQLSMALLINT		  NameLength2,
114824201887SPedro Giffuni     SQLCHAR		* TableName,
114924201887SPedro Giffuni     SQLSMALLINT		  NameLength3,
115024201887SPedro Giffuni     SQLUSMALLINT	  Unique,
115124201887SPedro Giffuni     SQLUSMALLINT	  Reserved);
1152cdf0e10cSrcweir 
115324201887SPedro Giffuni SQLRETURN SQL_API SQLTables (
115424201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
115524201887SPedro Giffuni     SQLCHAR		* CatalogName,
115624201887SPedro Giffuni     SQLSMALLINT		  NameLength1,
115724201887SPedro Giffuni     SQLCHAR		* SchemaName,
115824201887SPedro Giffuni     SQLSMALLINT		  NameLength2,
115924201887SPedro Giffuni     SQLCHAR		* TableName,
116024201887SPedro Giffuni     SQLSMALLINT		  NameLength3,
116124201887SPedro Giffuni     SQLCHAR		* TableType,
116224201887SPedro Giffuni     SQLSMALLINT		  NameLength4);
1163cdf0e10cSrcweir 
116424201887SPedro Giffuni SQLRETURN SQL_API SQLTransact (
116524201887SPedro Giffuni     SQLHENV		  EnvironmentHandle,
116624201887SPedro Giffuni     SQLHDBC		  ConnectionHandle,
116724201887SPedro Giffuni     SQLUSMALLINT	  CompletionType);
116824201887SPedro Giffuni 
116924201887SPedro Giffuni 
117024201887SPedro Giffuni /*
117124201887SPedro Giffuni  *  Depreciated ODBC 1.0 function - Use SQLBindParameter
117224201887SPedro Giffuni  */
117324201887SPedro Giffuni SQLRETURN SQL_API SQLSetParam (
117424201887SPedro Giffuni     SQLHSTMT		  StatementHandle,
117524201887SPedro Giffuni     SQLUSMALLINT	  ParameterNumber,
117624201887SPedro Giffuni     SQLSMALLINT		  ValueType,
117724201887SPedro Giffuni     SQLSMALLINT		  ParameterType,
117824201887SPedro Giffuni     SQLULEN		  LengthPrecision,
117924201887SPedro Giffuni     SQLSMALLINT		  ParameterScale,
118024201887SPedro Giffuni     SQLPOINTER		  ParameterValue,
118124201887SPedro Giffuni     SQLLEN		* StrLen_or_Ind);
1182cdf0e10cSrcweir 
1183cdf0e10cSrcweir #ifdef __cplusplus
1184cdf0e10cSrcweir }
1185cdf0e10cSrcweir #endif
118624201887SPedro Giffuni 
118724201887SPedro Giffuni #endif	 /* _SQL_H */
1188