xref: /trunk/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