124201887SPedro Giffuni /* 2cdf0e10cSrcweir * sqlext.h 3cdf0e10cSrcweir * 4*acaca342SPedro Giffuni * $Id: sqlext.h,v 1.11 2009/08/30 10:48:32 source Exp $ 5cdf0e10cSrcweir * 624201887SPedro Giffuni * ODBC defines (ext) 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 _SQLEXT_H 7924201887SPedro Giffuni #define _SQLEXT_H 80cdf0e10cSrcweir 8124201887SPedro Giffuni #ifndef _SQL_H 8224201887SPedro Giffuni #include <odbc/sql.h> 83cdf0e10cSrcweir #endif 84cdf0e10cSrcweir 85cdf0e10cSrcweir #ifdef __cplusplus 8624201887SPedro Giffuni extern "C" { 87cdf0e10cSrcweir #endif 88cdf0e10cSrcweir 89cdf0e10cSrcweir 9024201887SPedro Giffuni /* 9124201887SPedro Giffuni * Useful Constants 9224201887SPedro Giffuni */ 9324201887SPedro Giffuni #define SQL_SPEC_MAJOR 3 9424201887SPedro Giffuni #define SQL_SPEC_MINOR 52 9524201887SPedro Giffuni #define SQL_SPEC_STRING "03.52" 96cdf0e10cSrcweir 9724201887SPedro Giffuni #define SQL_SQLSTATE_SIZE 5 9824201887SPedro Giffuni #define SQL_MAX_DSN_LENGTH 32 99cdf0e10cSrcweir #define SQL_MAX_OPTION_STRING_LENGTH 256 100cdf0e10cSrcweir 101cdf0e10cSrcweir 10224201887SPedro Giffuni /* 10324201887SPedro Giffuni * Handle types 10424201887SPedro Giffuni */ 105cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 106cdf0e10cSrcweir #define SQL_HANDLE_SENV 5 107cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 108cdf0e10cSrcweir 109cdf0e10cSrcweir 11024201887SPedro Giffuni /* 11124201887SPedro Giffuni * Function return codes 11224201887SPedro Giffuni */ 11324201887SPedro Giffuni #if (ODBCVER < 0x0300) 11424201887SPedro Giffuni #define SQL_NO_DATA_FOUND 100 11524201887SPedro Giffuni #else 11624201887SPedro Giffuni #define SQL_NO_DATA_FOUND SQL_NO_DATA 11724201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 11824201887SPedro Giffuni 11924201887SPedro Giffuni 12024201887SPedro Giffuni /* 12124201887SPedro Giffuni * Special length values for attributes 12224201887SPedro Giffuni */ 12324201887SPedro Giffuni #if (ODBCVER >= 0x0300) 12424201887SPedro Giffuni #define SQL_IS_POINTER (-4) 12524201887SPedro Giffuni #define SQL_IS_UINTEGER (-5) 12624201887SPedro Giffuni #define SQL_IS_INTEGER (-6) 12724201887SPedro Giffuni #define SQL_IS_USMALLINT (-7) 12824201887SPedro Giffuni #define SQL_IS_SMALLINT (-8) 129cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 130cdf0e10cSrcweir 13124201887SPedro Giffuni 13224201887SPedro Giffuni /* 13324201887SPedro Giffuni * SQL extended datatypes 13424201887SPedro Giffuni */ 13524201887SPedro Giffuni #define SQL_DATE 9 136cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 13724201887SPedro Giffuni #define SQL_INTERVAL 10 13824201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 13924201887SPedro Giffuni #define SQL_TIME 10 14024201887SPedro Giffuni #define SQL_TIMESTAMP 11 14124201887SPedro Giffuni #define SQL_LONGVARCHAR (-1) 14224201887SPedro Giffuni #define SQL_BINARY (-2) 14324201887SPedro Giffuni #define SQL_VARBINARY (-3) 14424201887SPedro Giffuni #define SQL_LONGVARBINARY (-4) 14524201887SPedro Giffuni #define SQL_BIGINT (-5) 14624201887SPedro Giffuni #define SQL_TINYINT (-6) 14724201887SPedro Giffuni #define SQL_BIT (-7) 14824201887SPedro Giffuni #if (ODBCVER >= 0x0350) 14924201887SPedro Giffuni #define SQL_GUID (-11) 15024201887SPedro Giffuni #endif /* ODBCVER >= 0x0350 */ 151cdf0e10cSrcweir 152cdf0e10cSrcweir 15324201887SPedro Giffuni /* 15424201887SPedro Giffuni * SQL Interval datatypes 15524201887SPedro Giffuni */ 15624201887SPedro Giffuni #if (ODBCVER >= 0x0300) 15724201887SPedro Giffuni #define SQL_CODE_YEAR 1 15824201887SPedro Giffuni #define SQL_CODE_MONTH 2 15924201887SPedro Giffuni #define SQL_CODE_DAY 3 16024201887SPedro Giffuni #define SQL_CODE_HOUR 4 16124201887SPedro Giffuni #define SQL_CODE_MINUTE 5 16224201887SPedro Giffuni #define SQL_CODE_SECOND 6 16324201887SPedro Giffuni #define SQL_CODE_YEAR_TO_MONTH 7 16424201887SPedro Giffuni #define SQL_CODE_DAY_TO_HOUR 8 16524201887SPedro Giffuni #define SQL_CODE_DAY_TO_MINUTE 9 16624201887SPedro Giffuni #define SQL_CODE_DAY_TO_SECOND 10 16724201887SPedro Giffuni #define SQL_CODE_HOUR_TO_MINUTE 11 16824201887SPedro Giffuni #define SQL_CODE_HOUR_TO_SECOND 12 16924201887SPedro Giffuni #define SQL_CODE_MINUTE_TO_SECOND 13 17024201887SPedro Giffuni 17124201887SPedro Giffuni #define SQL_INTERVAL_YEAR (100 + SQL_CODE_YEAR) 17224201887SPedro Giffuni #define SQL_INTERVAL_MONTH (100 + SQL_CODE_MONTH) 17324201887SPedro Giffuni #define SQL_INTERVAL_DAY (100 + SQL_CODE_DAY) 17424201887SPedro Giffuni #define SQL_INTERVAL_HOUR (100 + SQL_CODE_HOUR) 17524201887SPedro Giffuni #define SQL_INTERVAL_MINUTE (100 + SQL_CODE_MINUTE) 17624201887SPedro Giffuni #define SQL_INTERVAL_SECOND (100 + SQL_CODE_SECOND) 17724201887SPedro Giffuni #define SQL_INTERVAL_YEAR_TO_MONTH (100 + SQL_CODE_YEAR_TO_MONTH) 17824201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_HOUR (100 + SQL_CODE_DAY_TO_HOUR) 17924201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_MINUTE (100 + SQL_CODE_DAY_TO_MINUTE) 18024201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_SECOND (100 + SQL_CODE_DAY_TO_SECOND) 18124201887SPedro Giffuni #define SQL_INTERVAL_HOUR_TO_MINUTE (100 + SQL_CODE_HOUR_TO_MINUTE) 18224201887SPedro Giffuni #define SQL_INTERVAL_HOUR_TO_SECOND (100 + SQL_CODE_HOUR_TO_SECOND) 18324201887SPedro Giffuni #define SQL_INTERVAL_MINUTE_TO_SECOND (100 + SQL_CODE_MINUTE_TO_SECOND) 18424201887SPedro Giffuni #else 18524201887SPedro Giffuni #define SQL_INTERVAL_YEAR (-80) 18624201887SPedro Giffuni #define SQL_INTERVAL_MONTH (-81) 18724201887SPedro Giffuni #define SQL_INTERVAL_YEAR_TO_MONTH (-82) 18824201887SPedro Giffuni #define SQL_INTERVAL_DAY (-83) 18924201887SPedro Giffuni #define SQL_INTERVAL_HOUR (-84) 19024201887SPedro Giffuni #define SQL_INTERVAL_MINUTE (-85) 19124201887SPedro Giffuni #define SQL_INTERVAL_SECOND (-86) 19224201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_HOUR (-87) 19324201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_MINUTE (-88) 19424201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_SECOND (-89) 19524201887SPedro Giffuni #define SQL_INTERVAL_HOUR_TO_MINUTE (-90) 19624201887SPedro Giffuni #define SQL_INTERVAL_HOUR_TO_SECOND (-91) 19724201887SPedro Giffuni #define SQL_INTERVAL_MINUTE_TO_SECOND (-92) 198cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 199cdf0e10cSrcweir 20024201887SPedro Giffuni 20124201887SPedro Giffuni /* 20224201887SPedro Giffuni * SQL unicode data types 20324201887SPedro Giffuni */ 20424201887SPedro Giffuni #if (ODBCVER <= 0x0300) 20524201887SPedro Giffuni /* These definitions are historical and obsolete */ 20624201887SPedro Giffuni #define SQL_UNICODE (-95) 20724201887SPedro Giffuni #define SQL_UNICODE_VARCHAR (-96) 20824201887SPedro Giffuni #define SQL_UNICODE_LONGVARCHAR (-97) 20924201887SPedro Giffuni #define SQL_UNICODE_CHAR SQL_UNICODE 21024201887SPedro Giffuni #else 21124201887SPedro Giffuni #define SQL_UNICODE SQL_WCHAR 21224201887SPedro Giffuni #define SQL_UNICODE_VARCHAR SQL_WVARCHAR 21324201887SPedro Giffuni #define SQL_UNICODE_LONGVARCHAR SQL_WLONGVARCHAR 21424201887SPedro Giffuni #define SQL_UNICODE_CHAR SQL_WCHAR 21524201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 21624201887SPedro Giffuni 21724201887SPedro Giffuni 21824201887SPedro Giffuni #if (ODBCVER < 0x0300) 21924201887SPedro Giffuni #define SQL_TYPE_DRIVER_START SQL_INTERVAL_YEAR 22024201887SPedro Giffuni #define SQL_TYPE_DRIVER_END SQL_UNICODE_LONGVARCHAR 22124201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 22224201887SPedro Giffuni 22324201887SPedro Giffuni 22424201887SPedro Giffuni #define SQL_SIGNED_OFFSET (-20) 22524201887SPedro Giffuni #define SQL_UNSIGNED_OFFSET (-22) 22624201887SPedro Giffuni 22724201887SPedro Giffuni 22824201887SPedro Giffuni /* 22924201887SPedro Giffuni * C datatype to SQL datatype mapping 23024201887SPedro Giffuni */ 23124201887SPedro Giffuni #define SQL_C_CHAR SQL_CHAR 23224201887SPedro Giffuni #define SQL_C_LONG SQL_INTEGER 23324201887SPedro Giffuni #define SQL_C_SHORT SQL_SMALLINT 23424201887SPedro Giffuni #define SQL_C_FLOAT SQL_REAL 23524201887SPedro Giffuni #define SQL_C_DOUBLE SQL_DOUBLE 23624201887SPedro Giffuni #if (ODBCVER >= 0x0300) 23724201887SPedro Giffuni #define SQL_C_NUMERIC SQL_NUMERIC 23824201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 23924201887SPedro Giffuni #define SQL_C_DEFAULT 99 24024201887SPedro Giffuni 24124201887SPedro Giffuni 24224201887SPedro Giffuni #define SQL_C_DATE SQL_DATE 24324201887SPedro Giffuni #define SQL_C_TIME SQL_TIME 24424201887SPedro Giffuni #define SQL_C_TIMESTAMP SQL_TIMESTAMP 24524201887SPedro Giffuni #define SQL_C_BINARY SQL_BINARY 24624201887SPedro Giffuni #define SQL_C_BIT SQL_BIT 24724201887SPedro Giffuni #define SQL_C_TINYINT SQL_TINYINT 24824201887SPedro Giffuni #define SQL_C_SLONG (SQL_C_LONG+SQL_SIGNED_OFFSET) 24924201887SPedro Giffuni #define SQL_C_SSHORT (SQL_C_SHORT+SQL_SIGNED_OFFSET) 25024201887SPedro Giffuni #define SQL_C_STINYINT (SQL_TINYINT+SQL_SIGNED_OFFSET) 25124201887SPedro Giffuni #define SQL_C_ULONG (SQL_C_LONG+SQL_UNSIGNED_OFFSET) 25224201887SPedro Giffuni #define SQL_C_USHORT (SQL_C_SHORT+SQL_UNSIGNED_OFFSET) 25324201887SPedro Giffuni #define SQL_C_UTINYINT (SQL_TINYINT+SQL_UNSIGNED_OFFSET) 25424201887SPedro Giffuni 25524201887SPedro Giffuni #if defined(_WIN64) 25624201887SPedro Giffuni #define SQL_C_BOOKMARK SQL_C_UBIGINT 25724201887SPedro Giffuni #else 25824201887SPedro Giffuni #define SQL_C_BOOKMARK SQL_C_ULONG 25924201887SPedro Giffuni #endif 26024201887SPedro Giffuni 26124201887SPedro Giffuni #if (ODBCVER >= 0x0300) 26224201887SPedro Giffuni #define SQL_C_TYPE_DATE SQL_TYPE_DATE 26324201887SPedro Giffuni #define SQL_C_TYPE_TIME SQL_TYPE_TIME 26424201887SPedro Giffuni #define SQL_C_TYPE_TIMESTAMP SQL_TYPE_TIMESTAMP 26524201887SPedro Giffuni #define SQL_C_INTERVAL_YEAR SQL_INTERVAL_YEAR 26624201887SPedro Giffuni #define SQL_C_INTERVAL_MONTH SQL_INTERVAL_MONTH 26724201887SPedro Giffuni #define SQL_C_INTERVAL_DAY SQL_INTERVAL_DAY 26824201887SPedro Giffuni #define SQL_C_INTERVAL_HOUR SQL_INTERVAL_HOUR 26924201887SPedro Giffuni #define SQL_C_INTERVAL_MINUTE SQL_INTERVAL_MINUTE 27024201887SPedro Giffuni #define SQL_C_INTERVAL_SECOND SQL_INTERVAL_SECOND 27124201887SPedro Giffuni #define SQL_C_INTERVAL_YEAR_TO_MONTH SQL_INTERVAL_YEAR_TO_MONTH 27224201887SPedro Giffuni #define SQL_C_INTERVAL_DAY_TO_HOUR SQL_INTERVAL_DAY_TO_HOUR 27324201887SPedro Giffuni #define SQL_C_INTERVAL_DAY_TO_MINUTE SQL_INTERVAL_DAY_TO_MINUTE 27424201887SPedro Giffuni #define SQL_C_INTERVAL_DAY_TO_SECOND SQL_INTERVAL_DAY_TO_SECOND 27524201887SPedro Giffuni #define SQL_C_INTERVAL_HOUR_TO_MINUTE SQL_INTERVAL_HOUR_TO_MINUTE 27624201887SPedro Giffuni #define SQL_C_INTERVAL_HOUR_TO_SECOND SQL_INTERVAL_HOUR_TO_SECOND 27724201887SPedro Giffuni #define SQL_C_INTERVAL_MINUTE_TO_SECOND SQL_INTERVAL_MINUTE_TO_SECOND 27824201887SPedro Giffuni #define SQL_C_SBIGINT (SQL_BIGINT+SQL_SIGNED_OFFSET) 27924201887SPedro Giffuni #define SQL_C_UBIGINT (SQL_BIGINT+SQL_UNSIGNED_OFFSET) 28024201887SPedro Giffuni #define SQL_C_VARBOOKMARK SQL_C_BINARY 28124201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 28224201887SPedro Giffuni 28324201887SPedro Giffuni #if (ODBCVER >= 0x0350) 28424201887SPedro Giffuni #define SQL_C_GUID SQL_GUID 28524201887SPedro Giffuni #endif 28624201887SPedro Giffuni 28724201887SPedro Giffuni #define SQL_TYPE_NULL 0 28824201887SPedro Giffuni 28924201887SPedro Giffuni #if (ODBCVER < 0x0300) 29024201887SPedro Giffuni #define SQL_TYPE_MIN SQL_BIT 29124201887SPedro Giffuni #define SQL_TYPE_MAX SQL_VARCHAR 29224201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 29324201887SPedro Giffuni 29424201887SPedro Giffuni 29524201887SPedro Giffuni /* 29624201887SPedro Giffuni * ---------------------------------------------------------------------- 29724201887SPedro Giffuni * Level 1 Functions 29824201887SPedro Giffuni * ---------------------------------------------------------------------- 29924201887SPedro Giffuni */ 30024201887SPedro Giffuni 30124201887SPedro Giffuni /* 30224201887SPedro Giffuni * SQLBindParameter 30324201887SPedro Giffuni */ 30424201887SPedro Giffuni #define SQL_DEFAULT_PARAM (-5) 30524201887SPedro Giffuni #define SQL_IGNORE (-6) 30624201887SPedro Giffuni #if (ODBCVER >= 0x0300) 30724201887SPedro Giffuni #define SQL_COLUMN_IGNORE SQL_IGNORE 30824201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 30924201887SPedro Giffuni #define SQL_LEN_DATA_AT_EXEC_OFFSET (-100) 31024201887SPedro Giffuni #define SQL_LEN_DATA_AT_EXEC(length) (-(length)+SQL_LEN_DATA_AT_EXEC_OFFSET) 31124201887SPedro Giffuni 31224201887SPedro Giffuni 31324201887SPedro Giffuni /* 31424201887SPedro Giffuni * binary length for driver specific attributes 31524201887SPedro Giffuni */ 31624201887SPedro Giffuni #define SQL_LEN_BINARY_ATTR_OFFSET (-100) 31724201887SPedro Giffuni #define SQL_LEN_BINARY_ATTR(length) (-(length)+SQL_LEN_BINARY_ATTR_OFFSET) 31824201887SPedro Giffuni 31924201887SPedro Giffuni 32024201887SPedro Giffuni /* 32124201887SPedro Giffuni * SQLColAttributes - ODBC 2.x defines 32224201887SPedro Giffuni */ 32324201887SPedro Giffuni #define SQL_COLUMN_COUNT 0 32424201887SPedro Giffuni #define SQL_COLUMN_NAME 1 32524201887SPedro Giffuni #define SQL_COLUMN_TYPE 2 32624201887SPedro Giffuni #define SQL_COLUMN_LENGTH 3 32724201887SPedro Giffuni #define SQL_COLUMN_PRECISION 4 32824201887SPedro Giffuni #define SQL_COLUMN_SCALE 5 32924201887SPedro Giffuni #define SQL_COLUMN_DISPLAY_SIZE 6 33024201887SPedro Giffuni #define SQL_COLUMN_NULLABLE 7 33124201887SPedro Giffuni #define SQL_COLUMN_UNSIGNED 8 33224201887SPedro Giffuni #define SQL_COLUMN_MONEY 9 33324201887SPedro Giffuni #define SQL_COLUMN_UPDATABLE 10 33424201887SPedro Giffuni #define SQL_COLUMN_AUTO_INCREMENT 11 33524201887SPedro Giffuni #define SQL_COLUMN_CASE_SENSITIVE 12 33624201887SPedro Giffuni #define SQL_COLUMN_SEARCHABLE 13 33724201887SPedro Giffuni #define SQL_COLUMN_TYPE_NAME 14 33824201887SPedro Giffuni #define SQL_COLUMN_TABLE_NAME 15 33924201887SPedro Giffuni #define SQL_COLUMN_OWNER_NAME 16 34024201887SPedro Giffuni #define SQL_COLUMN_QUALIFIER_NAME 17 34124201887SPedro Giffuni #define SQL_COLUMN_LABEL 18 34224201887SPedro Giffuni #define SQL_COLATT_OPT_MAX SQL_COLUMN_LABEL 34324201887SPedro Giffuni #if (ODBCVER < 0x0300) 34424201887SPedro Giffuni #define SQL_COLUMN_DRIVER_START 1000 34524201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 34624201887SPedro Giffuni 34724201887SPedro Giffuni #define SQL_COLATT_OPT_MIN SQL_COLUMN_COUNT 34824201887SPedro Giffuni 34924201887SPedro Giffuni 35024201887SPedro Giffuni /* 35124201887SPedro Giffuni * SQLColAttributes - SQL_COLUMN_UPDATABLE 35224201887SPedro Giffuni */ 35324201887SPedro Giffuni #define SQL_ATTR_READONLY 0 35424201887SPedro Giffuni #define SQL_ATTR_WRITE 1 35524201887SPedro Giffuni #define SQL_ATTR_READWRITE_UNKNOWN 2 35624201887SPedro Giffuni 35724201887SPedro Giffuni 35824201887SPedro Giffuni /* 35924201887SPedro Giffuni * SQLColAttributes - SQL_COLUMN_SEARCHABLE 36024201887SPedro Giffuni */ 36124201887SPedro Giffuni #define SQL_UNSEARCHABLE 0 36224201887SPedro Giffuni #define SQL_LIKE_ONLY 1 36324201887SPedro Giffuni #define SQL_ALL_EXCEPT_LIKE 2 36424201887SPedro Giffuni #define SQL_SEARCHABLE 3 36524201887SPedro Giffuni #define SQL_PRED_SEARCHABLE SQL_SEARCHABLE 36624201887SPedro Giffuni 36724201887SPedro Giffuni 36824201887SPedro Giffuni /* 36924201887SPedro Giffuni * SQLDataSources - additional fetch directions 37024201887SPedro Giffuni */ 37124201887SPedro Giffuni #if (ODBCVER >= 0x0300) 37224201887SPedro Giffuni #define SQL_FETCH_FIRST_USER 31 37324201887SPedro Giffuni #define SQL_FETCH_FIRST_SYSTEM 32 37424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 37524201887SPedro Giffuni 37624201887SPedro Giffuni 37724201887SPedro Giffuni /* 37824201887SPedro Giffuni * SQLDriverConnect 37924201887SPedro Giffuni */ 38024201887SPedro Giffuni #define SQL_DRIVER_NOPROMPT 0 38124201887SPedro Giffuni #define SQL_DRIVER_COMPLETE 1 38224201887SPedro Giffuni #define SQL_DRIVER_PROMPT 2 38324201887SPedro Giffuni #define SQL_DRIVER_COMPLETE_REQUIRED 3 38424201887SPedro Giffuni 38524201887SPedro Giffuni 38624201887SPedro Giffuni /* 38724201887SPedro Giffuni * SQLGetConnectAttr - ODBC 2.x attributes 38824201887SPedro Giffuni */ 389cdf0e10cSrcweir #define SQL_ACCESS_MODE 101 390cdf0e10cSrcweir #define SQL_AUTOCOMMIT 102 391cdf0e10cSrcweir #define SQL_LOGIN_TIMEOUT 103 392cdf0e10cSrcweir #define SQL_OPT_TRACE 104 393cdf0e10cSrcweir #define SQL_OPT_TRACEFILE 105 394cdf0e10cSrcweir #define SQL_TRANSLATE_DLL 106 395cdf0e10cSrcweir #define SQL_TRANSLATE_OPTION 107 396cdf0e10cSrcweir #define SQL_TXN_ISOLATION 108 397cdf0e10cSrcweir #define SQL_CURRENT_QUALIFIER 109 398cdf0e10cSrcweir #define SQL_ODBC_CURSORS 110 399cdf0e10cSrcweir #define SQL_QUIET_MODE 111 400cdf0e10cSrcweir #define SQL_PACKET_SIZE 112 401cdf0e10cSrcweir 40224201887SPedro Giffuni 40324201887SPedro Giffuni /* 40424201887SPedro Giffuni * SQLGetConnectAttr - ODBC 3.0 attributes 40524201887SPedro Giffuni */ 406cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 407cdf0e10cSrcweir #define SQL_ATTR_ACCESS_MODE SQL_ACCESS_MODE 408cdf0e10cSrcweir #define SQL_ATTR_AUTOCOMMIT SQL_AUTOCOMMIT 409cdf0e10cSrcweir #define SQL_ATTR_CONNECTION_TIMEOUT 113 410cdf0e10cSrcweir #define SQL_ATTR_CURRENT_CATALOG SQL_CURRENT_QUALIFIER 411cdf0e10cSrcweir #define SQL_ATTR_DISCONNECT_BEHAVIOR 114 412cdf0e10cSrcweir #define SQL_ATTR_ENLIST_IN_DTC 1207 413cdf0e10cSrcweir #define SQL_ATTR_ENLIST_IN_XA 1208 414cdf0e10cSrcweir #define SQL_ATTR_LOGIN_TIMEOUT SQL_LOGIN_TIMEOUT 415cdf0e10cSrcweir #define SQL_ATTR_ODBC_CURSORS SQL_ODBC_CURSORS 416cdf0e10cSrcweir #define SQL_ATTR_PACKET_SIZE SQL_PACKET_SIZE 417cdf0e10cSrcweir #define SQL_ATTR_QUIET_MODE SQL_QUIET_MODE 418cdf0e10cSrcweir #define SQL_ATTR_TRACE SQL_OPT_TRACE 419cdf0e10cSrcweir #define SQL_ATTR_TRACEFILE SQL_OPT_TRACEFILE 420cdf0e10cSrcweir #define SQL_ATTR_TRANSLATE_LIB SQL_TRANSLATE_DLL 421cdf0e10cSrcweir #define SQL_ATTR_TRANSLATE_OPTION SQL_TRANSLATE_OPTION 422cdf0e10cSrcweir #define SQL_ATTR_TXN_ISOLATION SQL_TXN_ISOLATION 423cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 424cdf0e10cSrcweir 425cdf0e10cSrcweir #define SQL_ATTR_CONNECTION_DEAD 1209 /* GetConnectAttr only */ 426cdf0e10cSrcweir 427cdf0e10cSrcweir 42824201887SPedro Giffuni /* 42924201887SPedro Giffuni * These options have no meaning for a 3.0 driver 430cdf0e10cSrcweir */ 431cdf0e10cSrcweir #if (ODBCVER < 0x0300) 43224201887SPedro Giffuni #define SQL_CONN_OPT_MIN SQL_ACCESS_MODE 43324201887SPedro Giffuni #define SQL_CONN_OPT_MAX SQL_PACKET_SIZE 434cdf0e10cSrcweir #define SQL_CONNECT_OPT_DRVR_START 1000 435cdf0e10cSrcweir #endif /* ODBCVER < 0x0300 */ 436cdf0e10cSrcweir 437cdf0e10cSrcweir 43824201887SPedro Giffuni /* 43924201887SPedro Giffuni * SQLGetConnectAttr - SQL_ACCESS_MODE 44024201887SPedro Giffuni */ 441cdf0e10cSrcweir #define SQL_MODE_READ_WRITE 0UL 442cdf0e10cSrcweir #define SQL_MODE_READ_ONLY 1UL 443cdf0e10cSrcweir #define SQL_MODE_DEFAULT SQL_MODE_READ_WRITE 444cdf0e10cSrcweir 44524201887SPedro Giffuni 44624201887SPedro Giffuni /* 44724201887SPedro Giffuni * SQLGetConnectAttr - SQL_AUTOCOMMIT 44824201887SPedro Giffuni */ 449cdf0e10cSrcweir #define SQL_AUTOCOMMIT_OFF 0UL 450cdf0e10cSrcweir #define SQL_AUTOCOMMIT_ON 1UL 451cdf0e10cSrcweir #define SQL_AUTOCOMMIT_DEFAULT SQL_AUTOCOMMIT_ON 452cdf0e10cSrcweir 45324201887SPedro Giffuni 45424201887SPedro Giffuni /* 45524201887SPedro Giffuni * SQLGetConnectAttr - SQL_LOGIN_TIMEOUT 45624201887SPedro Giffuni */ 457cdf0e10cSrcweir #define SQL_LOGIN_TIMEOUT_DEFAULT 15UL 458cdf0e10cSrcweir 459cdf0e10cSrcweir 46024201887SPedro Giffuni /* 46124201887SPedro Giffuni * SQLGetConnectAttr - SQL_ODBC_CURSORS 46224201887SPedro Giffuni */ 463cdf0e10cSrcweir #define SQL_CUR_USE_IF_NEEDED 0UL 464cdf0e10cSrcweir #define SQL_CUR_USE_ODBC 1UL 465cdf0e10cSrcweir #define SQL_CUR_USE_DRIVER 2UL 466cdf0e10cSrcweir #define SQL_CUR_DEFAULT SQL_CUR_USE_DRIVER 467cdf0e10cSrcweir 46824201887SPedro Giffuni 46924201887SPedro Giffuni /* 47024201887SPedro Giffuni * SQLGetConnectAttr - SQL_OPT_TRACE 47124201887SPedro Giffuni */ 47224201887SPedro Giffuni #define SQL_OPT_TRACE_OFF 0UL 47324201887SPedro Giffuni #define SQL_OPT_TRACE_ON 1UL 47424201887SPedro Giffuni #define SQL_OPT_TRACE_DEFAULT SQL_OPT_TRACE_OFF 47524201887SPedro Giffuni #if defined (WIN32) 47624201887SPedro Giffuni #define SQL_OPT_TRACE_FILE_DEFAULT "\\SQL.LOG" 47724201887SPedro Giffuni #define SQL_OPT_TRACE_FILE_DEFAULTW L"\\SQL.LOG" 47824201887SPedro Giffuni #else 47924201887SPedro Giffuni #define SQL_OPT_TRACE_FILE_DEFAULT "/tmp/odbc.log" 48024201887SPedro Giffuni #define SQL_OPT_TRACE_FILE_DEFAULTW L"/tmp/odbc.log" 48124201887SPedro Giffuni #endif 48224201887SPedro Giffuni 48324201887SPedro Giffuni 48424201887SPedro Giffuni /* 48524201887SPedro Giffuni * SQLGetConnectAttr - SQL_ATTR_ANSI_APP 48624201887SPedro Giffuni */ 48724201887SPedro Giffuni #if (ODBCVER >= 0x0351) 48824201887SPedro Giffuni #define SQL_AA_TRUE 1L /* ANSI app */ 48924201887SPedro Giffuni #define SQL_AA_FALSE 0L /* Unicode app */ 49024201887SPedro Giffuni #endif 49124201887SPedro Giffuni 49224201887SPedro Giffuni 49324201887SPedro Giffuni /* 49424201887SPedro Giffuni * SQLGetConnectAttr - SQL_ATTR_CONNECTION_DEAD 49524201887SPedro Giffuni */ 49624201887SPedro Giffuni #define SQL_CD_TRUE 1L /* closed/dead */ 49724201887SPedro Giffuni #define SQL_CD_FALSE 0L /* open/available */ 49824201887SPedro Giffuni 49924201887SPedro Giffuni 50024201887SPedro Giffuni /* 50124201887SPedro Giffuni * SQLGetConnectAttr - SQL_ATTR_DISCONNECT_BEHAVIOR 50224201887SPedro Giffuni */ 503cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 504cdf0e10cSrcweir #define SQL_DB_RETURN_TO_POOL 0UL 505cdf0e10cSrcweir #define SQL_DB_DISCONNECT 1UL 506cdf0e10cSrcweir #define SQL_DB_DEFAULT SQL_DB_RETURN_TO_POOL 50724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 508cdf0e10cSrcweir 50924201887SPedro Giffuni 51024201887SPedro Giffuni /* 51124201887SPedro Giffuni * SQLGetConnectAttr - SQL_ATTR_ENLIST_IN_DTC 51224201887SPedro Giffuni */ 51324201887SPedro Giffuni #if (ODBCVER >= 0x0300) 514cdf0e10cSrcweir #define SQL_DTC_DONE 0L 515cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 516cdf0e10cSrcweir 517cdf0e10cSrcweir 51824201887SPedro Giffuni /* 51924201887SPedro Giffuni * SQLGetConnectAttr - Unicode drivers 52024201887SPedro Giffuni */ 521cdf0e10cSrcweir #if (ODBCVER >= 0x0351) 52224201887SPedro Giffuni #define SQL_ATTR_ANSI_APP 115 523cdf0e10cSrcweir #endif 524cdf0e10cSrcweir 525cdf0e10cSrcweir 52624201887SPedro Giffuni /* 52724201887SPedro Giffuni * SQLGetData 52824201887SPedro Giffuni */ 52924201887SPedro Giffuni #define SQL_NO_TOTAL (-4) 530cdf0e10cSrcweir 531cdf0e10cSrcweir 53224201887SPedro Giffuni /* 53324201887SPedro Giffuni * SQLGetDescField - extended descriptor field 53424201887SPedro Giffuni */ 535cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 536cdf0e10cSrcweir #define SQL_DESC_ARRAY_SIZE 20 537cdf0e10cSrcweir #define SQL_DESC_ARRAY_STATUS_PTR 21 538cdf0e10cSrcweir #define SQL_DESC_AUTO_UNIQUE_VALUE SQL_COLUMN_AUTO_INCREMENT 539cdf0e10cSrcweir #define SQL_DESC_BASE_COLUMN_NAME 22 540cdf0e10cSrcweir #define SQL_DESC_BASE_TABLE_NAME 23 541cdf0e10cSrcweir #define SQL_DESC_BIND_OFFSET_PTR 24 542cdf0e10cSrcweir #define SQL_DESC_BIND_TYPE 25 543cdf0e10cSrcweir #define SQL_DESC_CASE_SENSITIVE SQL_COLUMN_CASE_SENSITIVE 544cdf0e10cSrcweir #define SQL_DESC_CATALOG_NAME SQL_COLUMN_QUALIFIER_NAME 545cdf0e10cSrcweir #define SQL_DESC_CONCISE_TYPE SQL_COLUMN_TYPE 546cdf0e10cSrcweir #define SQL_DESC_DATETIME_INTERVAL_PRECISION 26 547cdf0e10cSrcweir #define SQL_DESC_DISPLAY_SIZE SQL_COLUMN_DISPLAY_SIZE 548cdf0e10cSrcweir #define SQL_DESC_FIXED_PREC_SCALE SQL_COLUMN_MONEY 549cdf0e10cSrcweir #define SQL_DESC_LABEL SQL_COLUMN_LABEL 550cdf0e10cSrcweir #define SQL_DESC_LITERAL_PREFIX 27 551cdf0e10cSrcweir #define SQL_DESC_LITERAL_SUFFIX 28 552cdf0e10cSrcweir #define SQL_DESC_LOCAL_TYPE_NAME 29 553cdf0e10cSrcweir #define SQL_DESC_MAXIMUM_SCALE 30 554cdf0e10cSrcweir #define SQL_DESC_MINIMUM_SCALE 31 555cdf0e10cSrcweir #define SQL_DESC_NUM_PREC_RADIX 32 556cdf0e10cSrcweir #define SQL_DESC_PARAMETER_TYPE 33 557cdf0e10cSrcweir #define SQL_DESC_ROWS_PROCESSED_PTR 34 558cdf0e10cSrcweir #if (ODBCVER >= 0x0350) 559cdf0e10cSrcweir #define SQL_DESC_ROWVER 35 560cdf0e10cSrcweir #endif /* ODBCVER >= 0x0350 */ 561cdf0e10cSrcweir #define SQL_DESC_SCHEMA_NAME SQL_COLUMN_OWNER_NAME 562cdf0e10cSrcweir #define SQL_DESC_SEARCHABLE SQL_COLUMN_SEARCHABLE 563cdf0e10cSrcweir #define SQL_DESC_TYPE_NAME SQL_COLUMN_TYPE_NAME 564cdf0e10cSrcweir #define SQL_DESC_TABLE_NAME SQL_COLUMN_TABLE_NAME 565cdf0e10cSrcweir #define SQL_DESC_UNSIGNED SQL_COLUMN_UNSIGNED 566cdf0e10cSrcweir #define SQL_DESC_UPDATABLE SQL_COLUMN_UPDATABLE 567cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 568cdf0e10cSrcweir 569cdf0e10cSrcweir 57024201887SPedro Giffuni /* 57124201887SPedro Giffuni * SQLGetDiagField - defines for diagnostics fields 57224201887SPedro Giffuni */ 573cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 574cdf0e10cSrcweir #define SQL_DIAG_CURSOR_ROW_COUNT (-1249) 575cdf0e10cSrcweir #define SQL_DIAG_ROW_NUMBER (-1248) 576cdf0e10cSrcweir #define SQL_DIAG_COLUMN_NUMBER (-1247) 577cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 578cdf0e10cSrcweir 579cdf0e10cSrcweir 58024201887SPedro Giffuni /* 58124201887SPedro Giffuni * SQLGetDiagField - SQL_DIAG_ROW_NUMBER and SQL_DIAG_COLUMN_NUMBER 58224201887SPedro Giffuni */ 583cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 584cdf0e10cSrcweir #define SQL_NO_ROW_NUMBER (-1) 585cdf0e10cSrcweir #define SQL_NO_COLUMN_NUMBER (-1) 586cdf0e10cSrcweir #define SQL_ROW_NUMBER_UNKNOWN (-2) 587cdf0e10cSrcweir #define SQL_COLUMN_NUMBER_UNKNOWN (-2) 588cdf0e10cSrcweir #endif 589cdf0e10cSrcweir 59024201887SPedro Giffuni 591cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 59224201887SPedro Giffuni /* 59324201887SPedro Giffuni * SQLGetEnvAttr - Attributes 594cdf0e10cSrcweir */ 59524201887SPedro Giffuni #define SQL_ATTR_ODBC_VERSION 200 59624201887SPedro Giffuni #define SQL_ATTR_CONNECTION_POOLING 201 59724201887SPedro Giffuni #define SQL_ATTR_CP_MATCH 202 598cdf0e10cSrcweir 599cdf0e10cSrcweir 60024201887SPedro Giffuni /* 60124201887SPedro Giffuni * SQLGetEnvAttr - SQL_ATTR_ODBC_VERSION 60224201887SPedro Giffuni */ 60324201887SPedro Giffuni #define SQL_OV_ODBC2 2UL 60424201887SPedro Giffuni #define SQL_OV_ODBC3 3UL 605cdf0e10cSrcweir 606cdf0e10cSrcweir 60724201887SPedro Giffuni /* 60824201887SPedro Giffuni * SQLGetEnvAttr - SQL_ATTR_CONNECTION_POOLING 60924201887SPedro Giffuni */ 61024201887SPedro Giffuni #define SQL_CP_OFF 0UL 61124201887SPedro Giffuni #define SQL_CP_ONE_PER_DRIVER 1UL 61224201887SPedro Giffuni #define SQL_CP_ONE_PER_HENV 2UL 61324201887SPedro Giffuni #define SQL_CP_DEFAULT SQL_CP_OFF 61424201887SPedro Giffuni 61524201887SPedro Giffuni 61624201887SPedro Giffuni /* 61724201887SPedro Giffuni * SQLGetEnvAttr - SQL_ATTR_CP_MATCH 61824201887SPedro Giffuni */ 61924201887SPedro Giffuni #define SQL_CP_STRICT_MATCH 0UL 62024201887SPedro Giffuni #define SQL_CP_RELAXED_MATCH 1UL 62124201887SPedro Giffuni #define SQL_CP_MATCH_DEFAULT SQL_CP_STRICT_MATCH 62224201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 62324201887SPedro Giffuni 62424201887SPedro Giffuni 62524201887SPedro Giffuni /* 62624201887SPedro Giffuni * SQLGetFunctions - extensions to the X/Open specification 62724201887SPedro Giffuni */ 628cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 629cdf0e10cSrcweir #define SQL_API_SQLALLOCHANDLESTD 73 630cdf0e10cSrcweir #define SQL_API_SQLBULKOPERATIONS 24 631cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 632cdf0e10cSrcweir #define SQL_API_SQLBINDPARAMETER 72 633cdf0e10cSrcweir #define SQL_API_SQLBROWSECONNECT 55 634cdf0e10cSrcweir #define SQL_API_SQLCOLATTRIBUTES 6 635cdf0e10cSrcweir #define SQL_API_SQLCOLUMNPRIVILEGES 56 636cdf0e10cSrcweir #define SQL_API_SQLDESCRIBEPARAM 58 637cdf0e10cSrcweir #define SQL_API_SQLDRIVERCONNECT 41 638cdf0e10cSrcweir #define SQL_API_SQLDRIVERS 71 639cdf0e10cSrcweir #define SQL_API_SQLEXTENDEDFETCH 59 640cdf0e10cSrcweir #define SQL_API_SQLFOREIGNKEYS 60 641cdf0e10cSrcweir #define SQL_API_SQLMORERESULTS 61 642cdf0e10cSrcweir #define SQL_API_SQLNATIVESQL 62 643cdf0e10cSrcweir #define SQL_API_SQLNUMPARAMS 63 644cdf0e10cSrcweir #define SQL_API_SQLPARAMOPTIONS 64 645cdf0e10cSrcweir #define SQL_API_SQLPRIMARYKEYS 65 646cdf0e10cSrcweir #define SQL_API_SQLPROCEDURECOLUMNS 66 647cdf0e10cSrcweir #define SQL_API_SQLPROCEDURES 67 648cdf0e10cSrcweir #define SQL_API_SQLSETPOS 68 649cdf0e10cSrcweir #define SQL_API_SQLSETSCROLLOPTIONS 69 650cdf0e10cSrcweir #define SQL_API_SQLTABLEPRIVILEGES 70 651cdf0e10cSrcweir 652cdf0e10cSrcweir 65324201887SPedro Giffuni /* 65424201887SPedro Giffuni * These are not useful anymore as the X/Open specification defines 65524201887SPedro Giffuni * functions in the 10000 range 65624201887SPedro Giffuni */ 657cdf0e10cSrcweir #if (ODBCVER < 0x0300) 658cdf0e10cSrcweir #define SQL_EXT_API_LAST SQL_API_SQLBINDPARAMETER 659cdf0e10cSrcweir #define SQL_NUM_FUNCTIONS 23 660cdf0e10cSrcweir #define SQL_EXT_API_START 40 661cdf0e10cSrcweir #define SQL_NUM_EXTENSIONS (SQL_EXT_API_LAST-SQL_EXT_API_START+1) 66224201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 663cdf0e10cSrcweir 664cdf0e10cSrcweir 66524201887SPedro Giffuni /* 66624201887SPedro Giffuni * SQLGetFunctions - ODBC version 2.x and earlier 66724201887SPedro Giffuni */ 66824201887SPedro Giffuni #define SQL_API_ALL_FUNCTIONS 0 66924201887SPedro Giffuni 67024201887SPedro Giffuni 67124201887SPedro Giffuni /* 67224201887SPedro Giffuni * Loading by ordinal is not supported for 3.0 and above drivers 67324201887SPedro Giffuni */ 67424201887SPedro Giffuni #define SQL_API_LOADBYORDINAL 199 67524201887SPedro Giffuni 67624201887SPedro Giffuni 67724201887SPedro Giffuni /* 67824201887SPedro Giffuni * SQLGetFunctions - SQL_API_ODBC3_ALL_FUNCTIONS 67924201887SPedro Giffuni */ 680cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 681cdf0e10cSrcweir #define SQL_API_ODBC3_ALL_FUNCTIONS 999 68224201887SPedro Giffuni #define SQL_API_ODBC3_ALL_FUNCTIONS_SIZE 250 683cdf0e10cSrcweir 68424201887SPedro Giffuni #define SQL_FUNC_EXISTS(pfExists, uwAPI) \ 68524201887SPedro Giffuni ((*(((UWORD*) (pfExists)) + ((uwAPI) >> 4)) & (1 << ((uwAPI) & 0x000F))) \ 68624201887SPedro Giffuni ? SQL_TRUE : SQL_FALSE) 687cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 688cdf0e10cSrcweir 689cdf0e10cSrcweir 69024201887SPedro Giffuni /* 69124201887SPedro Giffuni * SQLGetInfo - ODBC 2.x extensions to the X/Open standard 69224201887SPedro Giffuni */ 693cdf0e10cSrcweir #define SQL_INFO_FIRST 0 694cdf0e10cSrcweir #define SQL_ACTIVE_CONNECTIONS 0 /* MAX_DRIVER_CONNECTIONS */ 695cdf0e10cSrcweir #define SQL_ACTIVE_STATEMENTS 1 /* MAX_CONCURRENT_ACTIVITIES */ 696cdf0e10cSrcweir #define SQL_DRIVER_HDBC 3 697cdf0e10cSrcweir #define SQL_DRIVER_HENV 4 698cdf0e10cSrcweir #define SQL_DRIVER_HSTMT 5 699cdf0e10cSrcweir #define SQL_DRIVER_NAME 6 700cdf0e10cSrcweir #define SQL_DRIVER_VER 7 701cdf0e10cSrcweir #define SQL_ODBC_API_CONFORMANCE 9 702cdf0e10cSrcweir #define SQL_ODBC_VER 10 703cdf0e10cSrcweir #define SQL_ROW_UPDATES 11 704cdf0e10cSrcweir #define SQL_ODBC_SAG_CLI_CONFORMANCE 12 705cdf0e10cSrcweir #define SQL_ODBC_SQL_CONFORMANCE 15 706cdf0e10cSrcweir #define SQL_PROCEDURES 21 707cdf0e10cSrcweir #define SQL_CONCAT_NULL_BEHAVIOR 22 708cdf0e10cSrcweir #define SQL_CURSOR_ROLLBACK_BEHAVIOR 24 709cdf0e10cSrcweir #define SQL_EXPRESSIONS_IN_ORDERBY 27 710cdf0e10cSrcweir #define SQL_MAX_OWNER_NAME_LEN 32 /* MAX_SCHEMA_NAME_LEN */ 711cdf0e10cSrcweir #define SQL_MAX_PROCEDURE_NAME_LEN 33 712cdf0e10cSrcweir #define SQL_MAX_QUALIFIER_NAME_LEN 34 /* MAX_CATALOG_NAME_LEN */ 713cdf0e10cSrcweir #define SQL_MULT_RESULT_SETS 36 714cdf0e10cSrcweir #define SQL_MULTIPLE_ACTIVE_TXN 37 715cdf0e10cSrcweir #define SQL_OUTER_JOINS 38 716cdf0e10cSrcweir #define SQL_OWNER_TERM 39 717cdf0e10cSrcweir #define SQL_PROCEDURE_TERM 40 718cdf0e10cSrcweir #define SQL_QUALIFIER_NAME_SEPARATOR 41 719cdf0e10cSrcweir #define SQL_QUALIFIER_TERM 42 720cdf0e10cSrcweir #define SQL_SCROLL_OPTIONS 44 721cdf0e10cSrcweir #define SQL_TABLE_TERM 45 722cdf0e10cSrcweir #define SQL_CONVERT_FUNCTIONS 48 723cdf0e10cSrcweir #define SQL_NUMERIC_FUNCTIONS 49 724cdf0e10cSrcweir #define SQL_STRING_FUNCTIONS 50 725cdf0e10cSrcweir #define SQL_SYSTEM_FUNCTIONS 51 726cdf0e10cSrcweir #define SQL_TIMEDATE_FUNCTIONS 52 727cdf0e10cSrcweir #define SQL_CONVERT_BIGINT 53 728cdf0e10cSrcweir #define SQL_CONVERT_BINARY 54 729cdf0e10cSrcweir #define SQL_CONVERT_BIT 55 730cdf0e10cSrcweir #define SQL_CONVERT_CHAR 56 731cdf0e10cSrcweir #define SQL_CONVERT_DATE 57 732cdf0e10cSrcweir #define SQL_CONVERT_DECIMAL 58 733cdf0e10cSrcweir #define SQL_CONVERT_DOUBLE 59 734cdf0e10cSrcweir #define SQL_CONVERT_FLOAT 60 735cdf0e10cSrcweir #define SQL_CONVERT_INTEGER 61 736cdf0e10cSrcweir #define SQL_CONVERT_LONGVARCHAR 62 737cdf0e10cSrcweir #define SQL_CONVERT_NUMERIC 63 738cdf0e10cSrcweir #define SQL_CONVERT_REAL 64 739cdf0e10cSrcweir #define SQL_CONVERT_SMALLINT 65 740cdf0e10cSrcweir #define SQL_CONVERT_TIME 66 741cdf0e10cSrcweir #define SQL_CONVERT_TIMESTAMP 67 742cdf0e10cSrcweir #define SQL_CONVERT_TINYINT 68 743cdf0e10cSrcweir #define SQL_CONVERT_VARBINARY 69 744cdf0e10cSrcweir #define SQL_CONVERT_VARCHAR 70 745cdf0e10cSrcweir #define SQL_CONVERT_LONGVARBINARY 71 746cdf0e10cSrcweir #define SQL_ODBC_SQL_OPT_IEF 73 /* SQL_INTEGRITY */ 747cdf0e10cSrcweir #define SQL_CORRELATION_NAME 74 748cdf0e10cSrcweir #define SQL_NON_NULLABLE_COLUMNS 75 749cdf0e10cSrcweir #define SQL_DRIVER_HLIB 76 750cdf0e10cSrcweir #define SQL_DRIVER_ODBC_VER 77 751cdf0e10cSrcweir #define SQL_LOCK_TYPES 78 752cdf0e10cSrcweir #define SQL_POS_OPERATIONS 79 753cdf0e10cSrcweir #define SQL_POSITIONED_STATEMENTS 80 754cdf0e10cSrcweir #define SQL_BOOKMARK_PERSISTENCE 82 755cdf0e10cSrcweir #define SQL_STATIC_SENSITIVITY 83 756cdf0e10cSrcweir #define SQL_FILE_USAGE 84 757cdf0e10cSrcweir #define SQL_COLUMN_ALIAS 87 758cdf0e10cSrcweir #define SQL_GROUP_BY 88 759cdf0e10cSrcweir #define SQL_KEYWORDS 89 760cdf0e10cSrcweir #define SQL_OWNER_USAGE 91 761cdf0e10cSrcweir #define SQL_QUALIFIER_USAGE 92 762cdf0e10cSrcweir #define SQL_QUOTED_IDENTIFIER_CASE 93 763cdf0e10cSrcweir #define SQL_SUBQUERIES 95 764cdf0e10cSrcweir #define SQL_UNION 96 765cdf0e10cSrcweir #define SQL_MAX_ROW_SIZE_INCLUDES_LONG 103 766cdf0e10cSrcweir #define SQL_MAX_CHAR_LITERAL_LEN 108 767cdf0e10cSrcweir #define SQL_TIMEDATE_ADD_INTERVALS 109 768cdf0e10cSrcweir #define SQL_TIMEDATE_DIFF_INTERVALS 110 769cdf0e10cSrcweir #define SQL_NEED_LONG_DATA_LEN 111 770cdf0e10cSrcweir #define SQL_MAX_BINARY_LITERAL_LEN 112 771cdf0e10cSrcweir #define SQL_LIKE_ESCAPE_CLAUSE 113 772cdf0e10cSrcweir #define SQL_QUALIFIER_LOCATION 114 773cdf0e10cSrcweir 774cdf0e10cSrcweir #if (ODBCVER >= 0x0201 && ODBCVER < 0x0300) 775cdf0e10cSrcweir #define SQL_OJ_CAPABILITIES 65003 /* Temp value until ODBC 3.0 */ 776cdf0e10cSrcweir #endif /* ODBCVER >= 0x0201 && ODBCVER < 0x0300 */ 777cdf0e10cSrcweir 778cdf0e10cSrcweir 77924201887SPedro Giffuni /* 78024201887SPedro Giffuni * These values are not useful anymore as X/Open defines values in the 78124201887SPedro Giffuni * 10000 range 78224201887SPedro Giffuni */ 783cdf0e10cSrcweir #if (ODBCVER < 0x0300) 784cdf0e10cSrcweir #define SQL_INFO_LAST SQL_QUALIFIER_LOCATION 785cdf0e10cSrcweir #define SQL_INFO_DRIVER_START 1000 786cdf0e10cSrcweir #endif /* ODBCVER < 0x0300 */ 787cdf0e10cSrcweir 788cdf0e10cSrcweir 78924201887SPedro Giffuni /* 79024201887SPedro Giffuni * SQLGetInfo - ODBC 3.x extensions to the X/Open standard 79124201887SPedro Giffuni */ 792cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 793cdf0e10cSrcweir #define SQL_ACTIVE_ENVIRONMENTS 116 794cdf0e10cSrcweir #define SQL_ALTER_DOMAIN 117 795cdf0e10cSrcweir 796cdf0e10cSrcweir #define SQL_SQL_CONFORMANCE 118 797cdf0e10cSrcweir #define SQL_DATETIME_LITERALS 119 798cdf0e10cSrcweir 799cdf0e10cSrcweir #define SQL_ASYNC_MODE 10021 /* new X/Open spec */ 800cdf0e10cSrcweir #define SQL_BATCH_ROW_COUNT 120 801cdf0e10cSrcweir #define SQL_BATCH_SUPPORT 121 802cdf0e10cSrcweir #define SQL_CATALOG_LOCATION SQL_QUALIFIER_LOCATION 803cdf0e10cSrcweir #define SQL_CATALOG_NAME_SEPARATOR SQL_QUALIFIER_NAME_SEPARATOR 804cdf0e10cSrcweir #define SQL_CATALOG_TERM SQL_QUALIFIER_TERM 805cdf0e10cSrcweir #define SQL_CATALOG_USAGE SQL_QUALIFIER_USAGE 806cdf0e10cSrcweir #define SQL_CONVERT_WCHAR 122 807cdf0e10cSrcweir #define SQL_CONVERT_INTERVAL_DAY_TIME 123 808cdf0e10cSrcweir #define SQL_CONVERT_INTERVAL_YEAR_MONTH 124 809cdf0e10cSrcweir #define SQL_CONVERT_WLONGVARCHAR 125 810cdf0e10cSrcweir #define SQL_CONVERT_WVARCHAR 126 811cdf0e10cSrcweir #define SQL_CREATE_ASSERTION 127 812cdf0e10cSrcweir #define SQL_CREATE_CHARACTER_SET 128 813cdf0e10cSrcweir #define SQL_CREATE_COLLATION 129 814cdf0e10cSrcweir #define SQL_CREATE_DOMAIN 130 815cdf0e10cSrcweir #define SQL_CREATE_SCHEMA 131 816cdf0e10cSrcweir #define SQL_CREATE_TABLE 132 817cdf0e10cSrcweir #define SQL_CREATE_TRANSLATION 133 818cdf0e10cSrcweir #define SQL_CREATE_VIEW 134 819cdf0e10cSrcweir #define SQL_DRIVER_HDESC 135 820cdf0e10cSrcweir #define SQL_DROP_ASSERTION 136 821cdf0e10cSrcweir #define SQL_DROP_CHARACTER_SET 137 822cdf0e10cSrcweir #define SQL_DROP_COLLATION 138 823cdf0e10cSrcweir #define SQL_DROP_DOMAIN 139 824cdf0e10cSrcweir #define SQL_DROP_SCHEMA 140 825cdf0e10cSrcweir #define SQL_DROP_TABLE 141 826cdf0e10cSrcweir #define SQL_DROP_TRANSLATION 142 827cdf0e10cSrcweir #define SQL_DROP_VIEW 143 828cdf0e10cSrcweir #define SQL_DYNAMIC_CURSOR_ATTRIBUTES1 144 829cdf0e10cSrcweir #define SQL_DYNAMIC_CURSOR_ATTRIBUTES2 145 830cdf0e10cSrcweir #define SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 146 831cdf0e10cSrcweir #define SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 147 832cdf0e10cSrcweir #define SQL_INDEX_KEYWORDS 148 833cdf0e10cSrcweir #define SQL_INFO_SCHEMA_VIEWS 149 834cdf0e10cSrcweir #define SQL_KEYSET_CURSOR_ATTRIBUTES1 150 835cdf0e10cSrcweir #define SQL_KEYSET_CURSOR_ATTRIBUTES2 151 836cdf0e10cSrcweir #define SQL_MAX_ASYNC_CONCURRENT_STATEMENTS 10022 /* new X/Open spec */ 837cdf0e10cSrcweir #define SQL_ODBC_INTERFACE_CONFORMANCE 152 838cdf0e10cSrcweir #define SQL_PARAM_ARRAY_ROW_COUNTS 153 839cdf0e10cSrcweir #define SQL_PARAM_ARRAY_SELECTS 154 840cdf0e10cSrcweir #define SQL_SCHEMA_TERM SQL_OWNER_TERM 841cdf0e10cSrcweir #define SQL_SCHEMA_USAGE SQL_OWNER_USAGE 842cdf0e10cSrcweir #define SQL_SQL92_DATETIME_FUNCTIONS 155 843cdf0e10cSrcweir #define SQL_SQL92_FOREIGN_KEY_DELETE_RULE 156 844cdf0e10cSrcweir #define SQL_SQL92_FOREIGN_KEY_UPDATE_RULE 157 845cdf0e10cSrcweir #define SQL_SQL92_GRANT 158 846cdf0e10cSrcweir #define SQL_SQL92_NUMERIC_VALUE_FUNCTIONS 159 847cdf0e10cSrcweir #define SQL_SQL92_PREDICATES 160 848cdf0e10cSrcweir #define SQL_SQL92_RELATIONAL_JOIN_OPERATORS 161 849cdf0e10cSrcweir #define SQL_SQL92_REVOKE 162 850cdf0e10cSrcweir #define SQL_SQL92_ROW_VALUE_CONSTRUCTOR 163 851cdf0e10cSrcweir #define SQL_SQL92_STRING_FUNCTIONS 164 852cdf0e10cSrcweir #define SQL_SQL92_VALUE_EXPRESSIONS 165 853cdf0e10cSrcweir #define SQL_STANDARD_CLI_CONFORMANCE 166 854cdf0e10cSrcweir #define SQL_STATIC_CURSOR_ATTRIBUTES1 167 855cdf0e10cSrcweir #define SQL_STATIC_CURSOR_ATTRIBUTES2 168 856cdf0e10cSrcweir 857cdf0e10cSrcweir #define SQL_AGGREGATE_FUNCTIONS 169 858cdf0e10cSrcweir #define SQL_DDL_INDEX 170 859cdf0e10cSrcweir #define SQL_DM_VER 171 860cdf0e10cSrcweir #define SQL_INSERT_STATEMENT 172 861cdf0e10cSrcweir #define SQL_UNION_STATEMENT SQL_UNION 86224201887SPedro Giffuni 863cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 864cdf0e10cSrcweir 865cdf0e10cSrcweir #define SQL_DTC_TRANSITION_COST 1750 866cdf0e10cSrcweir 86724201887SPedro Giffuni 86824201887SPedro Giffuni /* 86924201887SPedro Giffuni * SQLGetInfo - SQL_AGGREGATE_FUNCTIONS 87024201887SPedro Giffuni */ 871cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 87224201887SPedro Giffuni #define SQL_AF_AVG 0x00000001L 87324201887SPedro Giffuni #define SQL_AF_COUNT 0x00000002L 87424201887SPedro Giffuni #define SQL_AF_MAX 0x00000004L 87524201887SPedro Giffuni #define SQL_AF_MIN 0x00000008L 87624201887SPedro Giffuni #define SQL_AF_SUM 0x00000010L 87724201887SPedro Giffuni #define SQL_AF_DISTINCT 0x00000020L 87824201887SPedro Giffuni #define SQL_AF_ALL 0x00000040L 87924201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 88024201887SPedro Giffuni 88124201887SPedro Giffuni /* 88224201887SPedro Giffuni * SQLGetInfo - SQL_ALTER_DOMAIN 88324201887SPedro Giffuni */ 88424201887SPedro Giffuni #if (ODBCVER >= 0x0300) 88524201887SPedro Giffuni #define SQL_AD_CONSTRAINT_NAME_DEFINITION 0x00000001L 88624201887SPedro Giffuni #define SQL_AD_ADD_DOMAIN_CONSTRAINT 0x00000002L 88724201887SPedro Giffuni #define SQL_AD_DROP_DOMAIN_CONSTRAINT 0x00000004L 88824201887SPedro Giffuni #define SQL_AD_ADD_DOMAIN_DEFAULT 0x00000008L 88924201887SPedro Giffuni #define SQL_AD_DROP_DOMAIN_DEFAULT 0x00000010L 89024201887SPedro Giffuni #define SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED 0x00000020L 89124201887SPedro Giffuni #define SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE 0x00000040L 89224201887SPedro Giffuni #define SQL_AD_ADD_CONSTRAINT_DEFERRABLE 0x00000080L 89324201887SPedro Giffuni #define SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE 0x00000100L 89424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 89524201887SPedro Giffuni 89624201887SPedro Giffuni 89724201887SPedro Giffuni /* 89824201887SPedro Giffuni * SQLGetInfo - SQL_ALTER_TABLE 89924201887SPedro Giffuni */ 90024201887SPedro Giffuni #if (ODBCVER >= 0x0300) 90124201887SPedro Giffuni /* 90224201887SPedro Giffuni * The following 5 bitmasks are defined in sql.h 90324201887SPedro Giffuni * 904cdf0e10cSrcweir * #define SQL_AT_ADD_COLUMN 0x00000001L 905cdf0e10cSrcweir * #define SQL_AT_DROP_COLUMN 0x00000002L 906cdf0e10cSrcweir * #define SQL_AT_ADD_CONSTRAINT 0x00000008L 907cdf0e10cSrcweir */ 908cdf0e10cSrcweir #define SQL_AT_ADD_COLUMN_SINGLE 0x00000020L 909cdf0e10cSrcweir #define SQL_AT_ADD_COLUMN_DEFAULT 0x00000040L 910cdf0e10cSrcweir #define SQL_AT_ADD_COLUMN_COLLATION 0x00000080L 911cdf0e10cSrcweir #define SQL_AT_SET_COLUMN_DEFAULT 0x00000100L 912cdf0e10cSrcweir #define SQL_AT_DROP_COLUMN_DEFAULT 0x00000200L 913cdf0e10cSrcweir #define SQL_AT_DROP_COLUMN_CASCADE 0x00000400L 914cdf0e10cSrcweir #define SQL_AT_DROP_COLUMN_RESTRICT 0x00000800L 915cdf0e10cSrcweir #define SQL_AT_ADD_TABLE_CONSTRAINT 0x00001000L 916cdf0e10cSrcweir #define SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE 0x00002000L 917cdf0e10cSrcweir #define SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT 0x00004000L 918cdf0e10cSrcweir #define SQL_AT_CONSTRAINT_NAME_DEFINITION 0x00008000L 919cdf0e10cSrcweir #define SQL_AT_CONSTRAINT_INITIALLY_DEFERRED 0x00010000L 920cdf0e10cSrcweir #define SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE 0x00020000L 921cdf0e10cSrcweir #define SQL_AT_CONSTRAINT_DEFERRABLE 0x00040000L 922cdf0e10cSrcweir #define SQL_AT_CONSTRAINT_NON_DEFERRABLE 0x00080000L 923cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 924cdf0e10cSrcweir 925cdf0e10cSrcweir 92624201887SPedro Giffuni /* 92724201887SPedro Giffuni * SQLGetInfo - SQL_ASYNC_MODE 92824201887SPedro Giffuni */ 92924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 93024201887SPedro Giffuni #define SQL_AM_NONE 0 93124201887SPedro Giffuni #define SQL_AM_CONNECTION 1 93224201887SPedro Giffuni #define SQL_AM_STATEMENT 2 93324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 93424201887SPedro Giffuni 93524201887SPedro Giffuni 93624201887SPedro Giffuni /* 93724201887SPedro Giffuni * SQLGetInfo - SQL_BATCH_ROW_COUNT 93824201887SPedro Giffuni */ 93924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 94024201887SPedro Giffuni #define SQL_BRC_PROCEDURES 0x0000001 94124201887SPedro Giffuni #define SQL_BRC_EXPLICIT 0x0000002 94224201887SPedro Giffuni #define SQL_BRC_ROLLED_UP 0x0000004 94324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 94424201887SPedro Giffuni 94524201887SPedro Giffuni 94624201887SPedro Giffuni /* 94724201887SPedro Giffuni * SQLGetInfo - SQL_BATCH_SUPPORT 94824201887SPedro Giffuni */ 94924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 95024201887SPedro Giffuni #define SQL_BS_SELECT_EXPLICIT 0x00000001L 95124201887SPedro Giffuni #define SQL_BS_ROW_COUNT_EXPLICIT 0x00000002L 95224201887SPedro Giffuni #define SQL_BS_SELECT_PROC 0x00000004L 95324201887SPedro Giffuni #define SQL_BS_ROW_COUNT_PROC 0x00000008L 95424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 95524201887SPedro Giffuni 95624201887SPedro Giffuni 95724201887SPedro Giffuni /* 95824201887SPedro Giffuni * SQLGetInfo - SQL_BOOKMARK_PERSISTENCE 95924201887SPedro Giffuni */ 96024201887SPedro Giffuni #define SQL_BP_CLOSE 0x00000001L 96124201887SPedro Giffuni #define SQL_BP_DELETE 0x00000002L 96224201887SPedro Giffuni #define SQL_BP_DROP 0x00000004L 96324201887SPedro Giffuni #define SQL_BP_TRANSACTION 0x00000008L 96424201887SPedro Giffuni #define SQL_BP_UPDATE 0x00000010L 96524201887SPedro Giffuni #define SQL_BP_OTHER_HSTMT 0x00000020L 96624201887SPedro Giffuni #define SQL_BP_SCROLL 0x00000040L 96724201887SPedro Giffuni 96824201887SPedro Giffuni 96924201887SPedro Giffuni /* 97024201887SPedro Giffuni * SQLGetInfo - SQL_CATALOG_LOCATION 97124201887SPedro Giffuni */ 97224201887SPedro Giffuni #if (ODBCVER >= 0x0300) 97324201887SPedro Giffuni #define SQL_CL_START SQL_QL_START 97424201887SPedro Giffuni #define SQL_CL_END SQL_QL_END 97524201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 97624201887SPedro Giffuni 97724201887SPedro Giffuni 97824201887SPedro Giffuni /* 97924201887SPedro Giffuni * SQLGetInfo - SQL_CATALOG_USAGE 98024201887SPedro Giffuni */ 98124201887SPedro Giffuni #if (ODBCVER >= 0x0300) 98224201887SPedro Giffuni #define SQL_CU_DML_STATEMENTS SQL_QU_DML_STATEMENTS 98324201887SPedro Giffuni #define SQL_CU_PROCEDURE_INVOCATION SQL_QU_PROCEDURE_INVOCATION 98424201887SPedro Giffuni #define SQL_CU_TABLE_DEFINITION SQL_QU_TABLE_DEFINITION 98524201887SPedro Giffuni #define SQL_CU_INDEX_DEFINITION SQL_QU_INDEX_DEFINITION 98624201887SPedro Giffuni #define SQL_CU_PRIVILEGE_DEFINITION SQL_QU_PRIVILEGE_DEFINITION 98724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 98824201887SPedro Giffuni 98924201887SPedro Giffuni 99024201887SPedro Giffuni /* 99124201887SPedro Giffuni * SQLGetInfo - SQL_CONCAT_NULL_BEHAVIOR 99224201887SPedro Giffuni */ 99324201887SPedro Giffuni #define SQL_CB_NULL 0x0000 99424201887SPedro Giffuni #define SQL_CB_NON_NULL 0x0001 99524201887SPedro Giffuni 99624201887SPedro Giffuni 99724201887SPedro Giffuni /* 99824201887SPedro Giffuni * SQLGetInfo - SQL_CONVERT_* bitmask values 99924201887SPedro Giffuni */ 1000cdf0e10cSrcweir #define SQL_CVT_CHAR 0x00000001L 1001cdf0e10cSrcweir #define SQL_CVT_NUMERIC 0x00000002L 1002cdf0e10cSrcweir #define SQL_CVT_DECIMAL 0x00000004L 1003cdf0e10cSrcweir #define SQL_CVT_INTEGER 0x00000008L 1004cdf0e10cSrcweir #define SQL_CVT_SMALLINT 0x00000010L 1005cdf0e10cSrcweir #define SQL_CVT_FLOAT 0x00000020L 1006cdf0e10cSrcweir #define SQL_CVT_REAL 0x00000040L 1007cdf0e10cSrcweir #define SQL_CVT_DOUBLE 0x00000080L 1008cdf0e10cSrcweir #define SQL_CVT_VARCHAR 0x00000100L 1009cdf0e10cSrcweir #define SQL_CVT_LONGVARCHAR 0x00000200L 1010cdf0e10cSrcweir #define SQL_CVT_BINARY 0x00000400L 1011cdf0e10cSrcweir #define SQL_CVT_VARBINARY 0x00000800L 1012cdf0e10cSrcweir #define SQL_CVT_BIT 0x00001000L 1013cdf0e10cSrcweir #define SQL_CVT_TINYINT 0x00002000L 1014cdf0e10cSrcweir #define SQL_CVT_BIGINT 0x00004000L 1015cdf0e10cSrcweir #define SQL_CVT_DATE 0x00008000L 1016cdf0e10cSrcweir #define SQL_CVT_TIME 0x00010000L 1017cdf0e10cSrcweir #define SQL_CVT_TIMESTAMP 0x00020000L 1018cdf0e10cSrcweir #define SQL_CVT_LONGVARBINARY 0x00040000L 1019cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 1020cdf0e10cSrcweir #define SQL_CVT_INTERVAL_YEAR_MONTH 0x00080000L 1021cdf0e10cSrcweir #define SQL_CVT_INTERVAL_DAY_TIME 0x00100000L 1022cdf0e10cSrcweir #define SQL_CVT_WCHAR 0x00200000L 1023cdf0e10cSrcweir #define SQL_CVT_WLONGVARCHAR 0x00400000L 1024cdf0e10cSrcweir #define SQL_CVT_WVARCHAR 0x00800000L 1025cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 1026cdf0e10cSrcweir 1027cdf0e10cSrcweir 102824201887SPedro Giffuni /* 102924201887SPedro Giffuni * SQLGetInfo - SQL_CONVERT_FUNCTIONS 103024201887SPedro Giffuni */ 1031cdf0e10cSrcweir #define SQL_FN_CVT_CONVERT 0x00000001L 1032cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 1033cdf0e10cSrcweir #define SQL_FN_CVT_CAST 0x00000002L 1034cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 1035cdf0e10cSrcweir 1036cdf0e10cSrcweir 103724201887SPedro Giffuni /* 103824201887SPedro Giffuni * SQLGetInfo - SQL_CORRELATION_NAME 103924201887SPedro Giffuni */ 104024201887SPedro Giffuni #define SQL_CN_NONE 0x0000 104124201887SPedro Giffuni #define SQL_CN_DIFFERENT 0x0001 104224201887SPedro Giffuni #define SQL_CN_ANY 0x0002 1043cdf0e10cSrcweir 104424201887SPedro Giffuni 104524201887SPedro Giffuni /* 104624201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_ASSERTION 104724201887SPedro Giffuni */ 104824201887SPedro Giffuni #if (ODBCVER >= 0x0300) 104924201887SPedro Giffuni #define SQL_CA_CREATE_ASSERTION 0x00000001L 105024201887SPedro Giffuni #define SQL_CA_CONSTRAINT_INITIALLY_DEFERRED 0x00000010L 105124201887SPedro Giffuni #define SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE 0x00000020L 105224201887SPedro Giffuni #define SQL_CA_CONSTRAINT_DEFERRABLE 0x00000040L 105324201887SPedro Giffuni #define SQL_CA_CONSTRAINT_NON_DEFERRABLE 0x00000080L 105424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 105524201887SPedro Giffuni 105624201887SPedro Giffuni 105724201887SPedro Giffuni /* 105824201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_CHARACTER_SET 105924201887SPedro Giffuni */ 106024201887SPedro Giffuni #if (ODBCVER >= 0x0300) 106124201887SPedro Giffuni #define SQL_CCS_CREATE_CHARACTER_SET 0x00000001L 106224201887SPedro Giffuni #define SQL_CCS_COLLATE_CLAUSE 0x00000002L 106324201887SPedro Giffuni #define SQL_CCS_LIMITED_COLLATION 0x00000004L 106424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 106524201887SPedro Giffuni 106624201887SPedro Giffuni 106724201887SPedro Giffuni /* 106824201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_COLLATION 106924201887SPedro Giffuni */ 107024201887SPedro Giffuni #if (ODBCVER >= 0x0300) 107124201887SPedro Giffuni #define SQL_CCOL_CREATE_COLLATION 0x00000001L 107224201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 107324201887SPedro Giffuni 107424201887SPedro Giffuni 107524201887SPedro Giffuni /* 107624201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_DOMAIN 107724201887SPedro Giffuni */ 107824201887SPedro Giffuni #if (ODBCVER >= 0x0300) 107924201887SPedro Giffuni #define SQL_CDO_CREATE_DOMAIN 0x00000001L 108024201887SPedro Giffuni #define SQL_CDO_DEFAULT 0x00000002L 108124201887SPedro Giffuni #define SQL_CDO_CONSTRAINT 0x00000004L 108224201887SPedro Giffuni #define SQL_CDO_COLLATION 0x00000008L 108324201887SPedro Giffuni #define SQL_CDO_CONSTRAINT_NAME_DEFINITION 0x00000010L 108424201887SPedro Giffuni #define SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED 0x00000020L 108524201887SPedro Giffuni #define SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE 0x00000040L 108624201887SPedro Giffuni #define SQL_CDO_CONSTRAINT_DEFERRABLE 0x00000080L 108724201887SPedro Giffuni #define SQL_CDO_CONSTRAINT_NON_DEFERRABLE 0x00000100L 108824201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 108924201887SPedro Giffuni 109024201887SPedro Giffuni 109124201887SPedro Giffuni /* 109224201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_SCHEMA 109324201887SPedro Giffuni */ 109424201887SPedro Giffuni #if (ODBCVER >= 0x0300) 109524201887SPedro Giffuni #define SQL_CS_CREATE_SCHEMA 0x00000001L 109624201887SPedro Giffuni #define SQL_CS_AUTHORIZATION 0x00000002L 109724201887SPedro Giffuni #define SQL_CS_DEFAULT_CHARACTER_SET 0x00000004L 109824201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 109924201887SPedro Giffuni 110024201887SPedro Giffuni 110124201887SPedro Giffuni /* 110224201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_TABLE 110324201887SPedro Giffuni */ 110424201887SPedro Giffuni #if (ODBCVER >= 0x0300) 110524201887SPedro Giffuni #define SQL_CT_CREATE_TABLE 0x00000001L 110624201887SPedro Giffuni #define SQL_CT_COMMIT_PRESERVE 0x00000002L 110724201887SPedro Giffuni #define SQL_CT_COMMIT_DELETE 0x00000004L 110824201887SPedro Giffuni #define SQL_CT_GLOBAL_TEMPORARY 0x00000008L 110924201887SPedro Giffuni #define SQL_CT_LOCAL_TEMPORARY 0x00000010L 111024201887SPedro Giffuni #define SQL_CT_CONSTRAINT_INITIALLY_DEFERRED 0x00000020L 111124201887SPedro Giffuni #define SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE 0x00000040L 111224201887SPedro Giffuni #define SQL_CT_CONSTRAINT_DEFERRABLE 0x00000080L 111324201887SPedro Giffuni #define SQL_CT_CONSTRAINT_NON_DEFERRABLE 0x00000100L 111424201887SPedro Giffuni #define SQL_CT_COLUMN_CONSTRAINT 0x00000200L 111524201887SPedro Giffuni #define SQL_CT_COLUMN_DEFAULT 0x00000400L 111624201887SPedro Giffuni #define SQL_CT_COLUMN_COLLATION 0x00000800L 111724201887SPedro Giffuni #define SQL_CT_TABLE_CONSTRAINT 0x00001000L 111824201887SPedro Giffuni #define SQL_CT_CONSTRAINT_NAME_DEFINITION 0x00002000L 111924201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 112024201887SPedro Giffuni 112124201887SPedro Giffuni 112224201887SPedro Giffuni /* 112324201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_TRANSLATION 112424201887SPedro Giffuni */ 112524201887SPedro Giffuni #if (ODBCVER >= 0x0300) 112624201887SPedro Giffuni #define SQL_CTR_CREATE_TRANSLATION 0x00000001L 112724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 112824201887SPedro Giffuni 112924201887SPedro Giffuni 113024201887SPedro Giffuni /* 113124201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_VIEW 113224201887SPedro Giffuni */ 113324201887SPedro Giffuni #define SQL_CV_CREATE_VIEW 0x00000001L 113424201887SPedro Giffuni #define SQL_CV_CHECK_OPTION 0x00000002L 113524201887SPedro Giffuni #define SQL_CV_CASCADED 0x00000004L 113624201887SPedro Giffuni #define SQL_CV_LOCAL 0x00000008L 113724201887SPedro Giffuni 113824201887SPedro Giffuni 113924201887SPedro Giffuni /* 114024201887SPedro Giffuni * SQLGetInfo - SQL_DATETIME_LITERALS 114124201887SPedro Giffuni */ 114224201887SPedro Giffuni #if (ODBCVER >= 0x0300) 114324201887SPedro Giffuni #define SQL_DL_SQL92_DATE 0x00000001L 114424201887SPedro Giffuni #define SQL_DL_SQL92_TIME 0x00000002L 114524201887SPedro Giffuni #define SQL_DL_SQL92_TIMESTAMP 0x00000004L 114624201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_YEAR 0x00000008L 114724201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_MONTH 0x00000010L 114824201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_DAY 0x00000020L 114924201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_HOUR 0x00000040L 115024201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_MINUTE 0x00000080L 115124201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_SECOND 0x00000100L 115224201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH 0x00000200L 115324201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR 0x00000400L 115424201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE 0x00000800L 115524201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND 0x00001000L 115624201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE 0x00002000L 115724201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND 0x00004000L 115824201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND 0x00008000L 115924201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 116024201887SPedro Giffuni 116124201887SPedro Giffuni 116224201887SPedro Giffuni /* 116324201887SPedro Giffuni * SQLGetInfo - SQL_DDL_INDEX 116424201887SPedro Giffuni */ 116524201887SPedro Giffuni #if (ODBCVER >= 0x0300) 116624201887SPedro Giffuni #define SQL_DI_CREATE_INDEX 0x00000001L 116724201887SPedro Giffuni #define SQL_DI_DROP_INDEX 0x00000002L 116824201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 116924201887SPedro Giffuni 117024201887SPedro Giffuni 117124201887SPedro Giffuni /* 117224201887SPedro Giffuni * SQLGetInfo - SQL_DROP_ASSERTION 117324201887SPedro Giffuni */ 117424201887SPedro Giffuni #if (ODBCVER >= 0x0300) 117524201887SPedro Giffuni #define SQL_DA_DROP_ASSERTION 0x00000001L 117624201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 117724201887SPedro Giffuni 117824201887SPedro Giffuni 117924201887SPedro Giffuni /* 118024201887SPedro Giffuni * SQLGetInfo - SQL_DROP_CHARACTER_SET 118124201887SPedro Giffuni */ 118224201887SPedro Giffuni #if (ODBCVER >= 0x0300) 118324201887SPedro Giffuni #define SQL_DCS_DROP_CHARACTER_SET 0x00000001L 118424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 118524201887SPedro Giffuni 118624201887SPedro Giffuni 118724201887SPedro Giffuni /* 118824201887SPedro Giffuni * SQLGetInfo - SQL_DROP_COLLATION 118924201887SPedro Giffuni */ 119024201887SPedro Giffuni #if (ODBCVER >= 0x0300) 119124201887SPedro Giffuni #define SQL_DC_DROP_COLLATION 0x00000001L 119224201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 119324201887SPedro Giffuni 119424201887SPedro Giffuni 119524201887SPedro Giffuni /* 119624201887SPedro Giffuni * SQLGetInfo - SQL_DROP_DOMAIN 119724201887SPedro Giffuni */ 119824201887SPedro Giffuni #if (ODBCVER >= 0x0300) 119924201887SPedro Giffuni #define SQL_DD_DROP_DOMAIN 0x00000001L 120024201887SPedro Giffuni #define SQL_DD_RESTRICT 0x00000002L 120124201887SPedro Giffuni #define SQL_DD_CASCADE 0x00000004L 120224201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 120324201887SPedro Giffuni 120424201887SPedro Giffuni 120524201887SPedro Giffuni /* 120624201887SPedro Giffuni * SQLGetInfo - SQL_DROP_SCHEMA 120724201887SPedro Giffuni */ 120824201887SPedro Giffuni #if (ODBCVER >= 0x0300) 120924201887SPedro Giffuni #define SQL_DS_DROP_SCHEMA 0x00000001L 121024201887SPedro Giffuni #define SQL_DS_RESTRICT 0x00000002L 121124201887SPedro Giffuni #define SQL_DS_CASCADE 0x00000004L 121224201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 121324201887SPedro Giffuni 121424201887SPedro Giffuni 121524201887SPedro Giffuni /* 121624201887SPedro Giffuni * SQLGetInfo - SQL_DROP_TABLE 121724201887SPedro Giffuni */ 121824201887SPedro Giffuni #if (ODBCVER >= 0x0300) 121924201887SPedro Giffuni #define SQL_DT_DROP_TABLE 0x00000001L 122024201887SPedro Giffuni #define SQL_DT_RESTRICT 0x00000002L 122124201887SPedro Giffuni #define SQL_DT_CASCADE 0x00000004L 122224201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 122324201887SPedro Giffuni 122424201887SPedro Giffuni 122524201887SPedro Giffuni /* 122624201887SPedro Giffuni * SQLGetInfo - SQL_DROP_TRANSLATION 122724201887SPedro Giffuni */ 122824201887SPedro Giffuni #if (ODBCVER >= 0x0300) 122924201887SPedro Giffuni #define SQL_DTR_DROP_TRANSLATION 0x00000001L 123024201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 123124201887SPedro Giffuni 123224201887SPedro Giffuni 123324201887SPedro Giffuni /* 123424201887SPedro Giffuni * SQLGetInfo - SQL_DROP_VIEW 123524201887SPedro Giffuni */ 123624201887SPedro Giffuni #if (ODBCVER >= 0x0300) 123724201887SPedro Giffuni #define SQL_DV_DROP_VIEW 0x00000001L 123824201887SPedro Giffuni #define SQL_DV_RESTRICT 0x00000002L 123924201887SPedro Giffuni #define SQL_DV_CASCADE 0x00000004L 124024201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 124124201887SPedro Giffuni 124224201887SPedro Giffuni 124324201887SPedro Giffuni /* 124424201887SPedro Giffuni * SQLGetInfo - SQL_DTC_TRANSITION_COST 124524201887SPedro Giffuni */ 124624201887SPedro Giffuni #define SQL_DTC_ENLIST_EXPENSIVE 0x00000001L 124724201887SPedro Giffuni #define SQL_DTC_UNENLIST_EXPENSIVE 0x00000002L 124824201887SPedro Giffuni 124924201887SPedro Giffuni 125024201887SPedro Giffuni /* 125124201887SPedro Giffuni * SQLGetInfo - SQL_DYNAMIC_CURSOR_ATTRIBUTES1 125224201887SPedro Giffuni * SQLGetInfo - SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 125324201887SPedro Giffuni * SQLGetInfo - SQL_KEYSET_CURSOR_ATTRIBUTES1 125424201887SPedro Giffuni * SQLGetInfo - SQL_STATIC_CURSOR_ATTRIBUTES1 125524201887SPedro Giffuni */ 125624201887SPedro Giffuni /* 125724201887SPedro Giffuni * SQLFetchScroll - FetchOrientation 125824201887SPedro Giffuni */ 125924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 126024201887SPedro Giffuni #define SQL_CA1_NEXT 0x00000001L 126124201887SPedro Giffuni #define SQL_CA1_ABSOLUTE 0x00000002L 126224201887SPedro Giffuni #define SQL_CA1_RELATIVE 0x00000004L 126324201887SPedro Giffuni #define SQL_CA1_BOOKMARK 0x00000008L 126424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 126524201887SPedro Giffuni 126624201887SPedro Giffuni 126724201887SPedro Giffuni /* 126824201887SPedro Giffuni * SQLSetPos - LockType 126924201887SPedro Giffuni */ 127024201887SPedro Giffuni #if (ODBCVER >= 0x0300) 127124201887SPedro Giffuni #define SQL_CA1_LOCK_NO_CHANGE 0x00000040L 127224201887SPedro Giffuni #define SQL_CA1_LOCK_EXCLUSIVE 0x00000080L 127324201887SPedro Giffuni #define SQL_CA1_LOCK_UNLOCK 0x00000100L 127424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 127524201887SPedro Giffuni 127624201887SPedro Giffuni 127724201887SPedro Giffuni /* 127824201887SPedro Giffuni * SQLSetPos Operations 127924201887SPedro Giffuni */ 128024201887SPedro Giffuni #if (ODBCVER >= 0x0300) 128124201887SPedro Giffuni #define SQL_CA1_POS_POSITION 0x00000200L 128224201887SPedro Giffuni #define SQL_CA1_POS_UPDATE 0x00000400L 128324201887SPedro Giffuni #define SQL_CA1_POS_DELETE 0x00000800L 128424201887SPedro Giffuni #define SQL_CA1_POS_REFRESH 0x00001000L 128524201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 128624201887SPedro Giffuni 128724201887SPedro Giffuni 128824201887SPedro Giffuni /* 128924201887SPedro Giffuni * positioned updates and deletes 129024201887SPedro Giffuni */ 129124201887SPedro Giffuni #if (ODBCVER >= 0x0300) 129224201887SPedro Giffuni #define SQL_CA1_POSITIONED_UPDATE 0x00002000L 129324201887SPedro Giffuni #define SQL_CA1_POSITIONED_DELETE 0x00004000L 129424201887SPedro Giffuni #define SQL_CA1_SELECT_FOR_UPDATE 0x00008000L 129524201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 129624201887SPedro Giffuni 129724201887SPedro Giffuni 129824201887SPedro Giffuni /* 129924201887SPedro Giffuni * SQLBulkOperations operations 130024201887SPedro Giffuni */ 130124201887SPedro Giffuni #if (ODBCVER >= 0x0300) 130224201887SPedro Giffuni #define SQL_CA1_BULK_ADD 0x00010000L 130324201887SPedro Giffuni #define SQL_CA1_BULK_UPDATE_BY_BOOKMARK 0x00020000L 130424201887SPedro Giffuni #define SQL_CA1_BULK_DELETE_BY_BOOKMARK 0x00040000L 130524201887SPedro Giffuni #define SQL_CA1_BULK_FETCH_BY_BOOKMARK 0x00080000L 130624201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 130724201887SPedro Giffuni 130824201887SPedro Giffuni 130924201887SPedro Giffuni /* 131024201887SPedro Giffuni * SQLGetInfo - SQL_DYNAMIC_CURSOR_ATTRIBUTES2 131124201887SPedro Giffuni * SQLGetInfo - SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 131224201887SPedro Giffuni * SQLGetInfo - SQL_KEYSET_CURSOR_ATTRIBUTES2 131324201887SPedro Giffuni * SQLGetInfo - SQL_STATIC_CURSOR_ATTRIBUTES2 131424201887SPedro Giffuni */ 131524201887SPedro Giffuni /* 131624201887SPedro Giffuni * SQL_ATTR_SCROLL_CONCURRENCY 131724201887SPedro Giffuni */ 131824201887SPedro Giffuni #if (ODBCVER >= 0x0300) 131924201887SPedro Giffuni #define SQL_CA2_READ_ONLY_CONCURRENCY 0x00000001L 132024201887SPedro Giffuni #define SQL_CA2_LOCK_CONCURRENCY 0x00000002L 132124201887SPedro Giffuni #define SQL_CA2_OPT_ROWVER_CONCURRENCY 0x00000004L 132224201887SPedro Giffuni #define SQL_CA2_OPT_VALUES_CONCURRENCY 0x00000008L 132324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 132424201887SPedro Giffuni 132524201887SPedro Giffuni 132624201887SPedro Giffuni /* 132724201887SPedro Giffuni * sensitivity of the cursor to its own inserts, deletes, and updates 132824201887SPedro Giffuni */ 132924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 133024201887SPedro Giffuni #define SQL_CA2_SENSITIVITY_ADDITIONS 0x00000010L 133124201887SPedro Giffuni #define SQL_CA2_SENSITIVITY_DELETIONS 0x00000020L 133224201887SPedro Giffuni #define SQL_CA2_SENSITIVITY_UPDATES 0x00000040L 133324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 133424201887SPedro Giffuni 133524201887SPedro Giffuni 133624201887SPedro Giffuni /* 133724201887SPedro Giffuni * SQL_ATTR_MAX_ROWS 133824201887SPedro Giffuni */ 133924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 134024201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_SELECT 0x00000080L 134124201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_INSERT 0x00000100L 134224201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_DELETE 0x00000200L 134324201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_UPDATE 0x00000400L 134424201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_CATALOG 0x00000800L 134524201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_AFFECTS_ALL (SQL_CA2_MAX_ROWS_SELECT | \ 134624201887SPedro Giffuni SQL_CA2_MAX_ROWS_INSERT | \ 134724201887SPedro Giffuni SQL_CA2_MAX_ROWS_DELETE | \ 134824201887SPedro Giffuni SQL_CA2_MAX_ROWS_UPDATE | \ 134924201887SPedro Giffuni SQL_CA2_MAX_ROWS_CATALOG) 135024201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 135124201887SPedro Giffuni 135224201887SPedro Giffuni 135324201887SPedro Giffuni /* 135424201887SPedro Giffuni * SQL_DIAG_CURSOR_ROW_COUNT 135524201887SPedro Giffuni */ 135624201887SPedro Giffuni #if (ODBCVER >= 0x0300) 135724201887SPedro Giffuni #define SQL_CA2_CRC_EXACT 0x00001000L 135824201887SPedro Giffuni #define SQL_CA2_CRC_APPROXIMATE 0x00002000L 135924201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 136024201887SPedro Giffuni 136124201887SPedro Giffuni 136224201887SPedro Giffuni /* 136324201887SPedro Giffuni * the kinds of positioned statements that can be simulated 136424201887SPedro Giffuni */ 136524201887SPedro Giffuni #if (ODBCVER >= 0x0300) 136624201887SPedro Giffuni #define SQL_CA2_SIMULATE_NON_UNIQUE 0x00004000L 136724201887SPedro Giffuni #define SQL_CA2_SIMULATE_TRY_UNIQUE 0x00008000L 136824201887SPedro Giffuni #define SQL_CA2_SIMULATE_UNIQUE 0x00010000L 136924201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 137024201887SPedro Giffuni 137124201887SPedro Giffuni 137224201887SPedro Giffuni /* 137324201887SPedro Giffuni * SQLGetInfo - SQL_FETCH_DIRECTION 137424201887SPedro Giffuni */ 137524201887SPedro Giffuni #if (ODBCVER < 0x0300) 137624201887SPedro Giffuni #define SQL_FD_FETCH_RESUME 0x00000040L 137724201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 137824201887SPedro Giffuni #define SQL_FD_FETCH_BOOKMARK 0x00000080L 137924201887SPedro Giffuni 138024201887SPedro Giffuni 138124201887SPedro Giffuni /* 138224201887SPedro Giffuni * SQLGetInfo - SQL_FILE_USAGE 138324201887SPedro Giffuni */ 138424201887SPedro Giffuni #define SQL_FILE_NOT_SUPPORTED 0x0000 138524201887SPedro Giffuni #define SQL_FILE_TABLE 0x0001 138624201887SPedro Giffuni #define SQL_FILE_QUALIFIER 0x0002 138724201887SPedro Giffuni #define SQL_FILE_CATALOG SQL_FILE_QUALIFIER 138824201887SPedro Giffuni 138924201887SPedro Giffuni 139024201887SPedro Giffuni /* 139124201887SPedro Giffuni * SQLGetInfo - SQL_GETDATA_EXTENSIONS 139224201887SPedro Giffuni */ 139324201887SPedro Giffuni #define SQL_GD_BLOCK 0x00000004L 139424201887SPedro Giffuni #define SQL_GD_BOUND 0x00000008L 139524201887SPedro Giffuni 139624201887SPedro Giffuni 139724201887SPedro Giffuni /* 139824201887SPedro Giffuni * SQLGetInfo - SQL_GROUP_BY 139924201887SPedro Giffuni */ 140024201887SPedro Giffuni #define SQL_GB_NOT_SUPPORTED 0x0000 140124201887SPedro Giffuni #define SQL_GB_GROUP_BY_EQUALS_SELECT 0x0001 140224201887SPedro Giffuni #define SQL_GB_GROUP_BY_CONTAINS_SELECT 0x0002 140324201887SPedro Giffuni #define SQL_GB_NO_RELATION 0x0003 140424201887SPedro Giffuni #if (ODBCVER >= 0x0300) 140524201887SPedro Giffuni #define SQL_GB_COLLATE 0x0004 140624201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 140724201887SPedro Giffuni 140824201887SPedro Giffuni 140924201887SPedro Giffuni /* 141024201887SPedro Giffuni * SQLGetInfo - SQL_INDEX_KEYWORDS 141124201887SPedro Giffuni */ 141224201887SPedro Giffuni #if (ODBCVER >= 0x0300) 141324201887SPedro Giffuni #define SQL_IK_NONE 0x00000000L 141424201887SPedro Giffuni #define SQL_IK_ASC 0x00000001L 141524201887SPedro Giffuni #define SQL_IK_DESC 0x00000002L 141624201887SPedro Giffuni #define SQL_IK_ALL (SQL_IK_ASC | SQL_IK_DESC) 141724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 141824201887SPedro Giffuni 141924201887SPedro Giffuni 142024201887SPedro Giffuni /* 142124201887SPedro Giffuni * SQLGetInfo - SQL_INFO_SCHEMA_VIEWS 142224201887SPedro Giffuni */ 142324201887SPedro Giffuni #if (ODBCVER >= 0x0300) 142424201887SPedro Giffuni #define SQL_ISV_ASSERTIONS 0x00000001L 142524201887SPedro Giffuni #define SQL_ISV_CHARACTER_SETS 0x00000002L 142624201887SPedro Giffuni #define SQL_ISV_CHECK_CONSTRAINTS 0x00000004L 142724201887SPedro Giffuni #define SQL_ISV_COLLATIONS 0x00000008L 142824201887SPedro Giffuni #define SQL_ISV_COLUMN_DOMAIN_USAGE 0x00000010L 142924201887SPedro Giffuni #define SQL_ISV_COLUMN_PRIVILEGES 0x00000020L 143024201887SPedro Giffuni #define SQL_ISV_COLUMNS 0x00000040L 143124201887SPedro Giffuni #define SQL_ISV_CONSTRAINT_COLUMN_USAGE 0x00000080L 143224201887SPedro Giffuni #define SQL_ISV_CONSTRAINT_TABLE_USAGE 0x00000100L 143324201887SPedro Giffuni #define SQL_ISV_DOMAIN_CONSTRAINTS 0x00000200L 143424201887SPedro Giffuni #define SQL_ISV_DOMAINS 0x00000400L 143524201887SPedro Giffuni #define SQL_ISV_KEY_COLUMN_USAGE 0x00000800L 143624201887SPedro Giffuni #define SQL_ISV_REFERENTIAL_CONSTRAINTS 0x00001000L 143724201887SPedro Giffuni #define SQL_ISV_SCHEMATA 0x00002000L 143824201887SPedro Giffuni #define SQL_ISV_SQL_LANGUAGES 0x00004000L 143924201887SPedro Giffuni #define SQL_ISV_TABLE_CONSTRAINTS 0x00008000L 144024201887SPedro Giffuni #define SQL_ISV_TABLE_PRIVILEGES 0x00010000L 144124201887SPedro Giffuni #define SQL_ISV_TABLES 0x00020000L 144224201887SPedro Giffuni #define SQL_ISV_TRANSLATIONS 0x00040000L 144324201887SPedro Giffuni #define SQL_ISV_USAGE_PRIVILEGES 0x00080000L 144424201887SPedro Giffuni #define SQL_ISV_VIEW_COLUMN_USAGE 0x00100000L 144524201887SPedro Giffuni #define SQL_ISV_VIEW_TABLE_USAGE 0x00200000L 144624201887SPedro Giffuni #define SQL_ISV_VIEWS 0x00400000L 144724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 144824201887SPedro Giffuni 144924201887SPedro Giffuni 145024201887SPedro Giffuni /* 145124201887SPedro Giffuni * SQLGetInfo - SQL_INSERT_STATEMENT 145224201887SPedro Giffuni */ 145324201887SPedro Giffuni #if (ODBCVER >= 0x0300) 145424201887SPedro Giffuni #define SQL_IS_INSERT_LITERALS 0x00000001L 145524201887SPedro Giffuni #define SQL_IS_INSERT_SEARCHED 0x00000002L 145624201887SPedro Giffuni #define SQL_IS_SELECT_INTO 0x00000004L 145724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 145824201887SPedro Giffuni 145924201887SPedro Giffuni 146024201887SPedro Giffuni /* 146124201887SPedro Giffuni * SQLGetInfo - SQL_LOCK_TYPES 146224201887SPedro Giffuni */ 146324201887SPedro Giffuni #define SQL_LCK_NO_CHANGE 0x00000001L 146424201887SPedro Giffuni #define SQL_LCK_EXCLUSIVE 0x00000002L 146524201887SPedro Giffuni #define SQL_LCK_UNLOCK 0x00000004L 146624201887SPedro Giffuni 146724201887SPedro Giffuni 146824201887SPedro Giffuni /* 146924201887SPedro Giffuni * SQLGetInfo - SQL_POS_OPERATIONS 147024201887SPedro Giffuni */ 147124201887SPedro Giffuni #define SQL_POS_POSITION 0x00000001L 147224201887SPedro Giffuni #define SQL_POS_REFRESH 0x00000002L 147324201887SPedro Giffuni #define SQL_POS_UPDATE 0x00000004L 147424201887SPedro Giffuni #define SQL_POS_DELETE 0x00000008L 147524201887SPedro Giffuni #define SQL_POS_ADD 0x00000010L 147624201887SPedro Giffuni 147724201887SPedro Giffuni 147824201887SPedro Giffuni /* 147924201887SPedro Giffuni * SQLGetInfo - SQL_NON_NULLABLE_COLUMNS 148024201887SPedro Giffuni */ 148124201887SPedro Giffuni #define SQL_NNC_NULL 0x0000 148224201887SPedro Giffuni #define SQL_NNC_NON_NULL 0x0001 148324201887SPedro Giffuni 148424201887SPedro Giffuni 148524201887SPedro Giffuni /* 148624201887SPedro Giffuni * SQLGetInfo - SQL_NULL_COLLATION 148724201887SPedro Giffuni */ 148824201887SPedro Giffuni #define SQL_NC_START 0x0002 148924201887SPedro Giffuni #define SQL_NC_END 0x0004 149024201887SPedro Giffuni 149124201887SPedro Giffuni 149224201887SPedro Giffuni /* 149324201887SPedro Giffuni * SQLGetInfo - SQL_NUMERIC_FUNCTIONS 149424201887SPedro Giffuni */ 149524201887SPedro Giffuni #define SQL_FN_NUM_ABS 0x00000001L 149624201887SPedro Giffuni #define SQL_FN_NUM_ACOS 0x00000002L 149724201887SPedro Giffuni #define SQL_FN_NUM_ASIN 0x00000004L 149824201887SPedro Giffuni #define SQL_FN_NUM_ATAN 0x00000008L 149924201887SPedro Giffuni #define SQL_FN_NUM_ATAN2 0x00000010L 150024201887SPedro Giffuni #define SQL_FN_NUM_CEILING 0x00000020L 150124201887SPedro Giffuni #define SQL_FN_NUM_COS 0x00000040L 150224201887SPedro Giffuni #define SQL_FN_NUM_COT 0x00000080L 150324201887SPedro Giffuni #define SQL_FN_NUM_EXP 0x00000100L 150424201887SPedro Giffuni #define SQL_FN_NUM_FLOOR 0x00000200L 150524201887SPedro Giffuni #define SQL_FN_NUM_LOG 0x00000400L 150624201887SPedro Giffuni #define SQL_FN_NUM_MOD 0x00000800L 150724201887SPedro Giffuni #define SQL_FN_NUM_SIGN 0x00001000L 150824201887SPedro Giffuni #define SQL_FN_NUM_SIN 0x00002000L 150924201887SPedro Giffuni #define SQL_FN_NUM_SQRT 0x00004000L 151024201887SPedro Giffuni #define SQL_FN_NUM_TAN 0x00008000L 151124201887SPedro Giffuni #define SQL_FN_NUM_PI 0x00010000L 151224201887SPedro Giffuni #define SQL_FN_NUM_RAND 0x00020000L 151324201887SPedro Giffuni #define SQL_FN_NUM_DEGREES 0x00040000L 151424201887SPedro Giffuni #define SQL_FN_NUM_LOG10 0x00080000L 151524201887SPedro Giffuni #define SQL_FN_NUM_POWER 0x00100000L 151624201887SPedro Giffuni #define SQL_FN_NUM_RADIANS 0x00200000L 151724201887SPedro Giffuni #define SQL_FN_NUM_ROUND 0x00400000L 151824201887SPedro Giffuni #define SQL_FN_NUM_TRUNCATE 0x00800000L 151924201887SPedro Giffuni 152024201887SPedro Giffuni 152124201887SPedro Giffuni /* 152224201887SPedro Giffuni * SQLGetInfo - SQL_ODBC_API_CONFORMANCE 152324201887SPedro Giffuni */ 152424201887SPedro Giffuni #define SQL_OAC_NONE 0x0000 152524201887SPedro Giffuni #define SQL_OAC_LEVEL1 0x0001 152624201887SPedro Giffuni #define SQL_OAC_LEVEL2 0x0002 152724201887SPedro Giffuni 152824201887SPedro Giffuni 152924201887SPedro Giffuni /* 153024201887SPedro Giffuni * SQLGetInfo - SQL_ODBC_INTERFACE_CONFORMANCE 153124201887SPedro Giffuni */ 153224201887SPedro Giffuni #if (ODBCVER >= 0x0300) 153324201887SPedro Giffuni #define SQL_OIC_CORE 1UL 153424201887SPedro Giffuni #define SQL_OIC_LEVEL1 2UL 153524201887SPedro Giffuni #define SQL_OIC_LEVEL2 3UL 153624201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 153724201887SPedro Giffuni 153824201887SPedro Giffuni 153924201887SPedro Giffuni /* 154024201887SPedro Giffuni * SQLGetInfo - SQL_ODBC_SAG_CLI_CONFORMANCE 154124201887SPedro Giffuni */ 154224201887SPedro Giffuni #define SQL_OSCC_NOT_COMPLIANT 0x0000 154324201887SPedro Giffuni #define SQL_OSCC_COMPLIANT 0x0001 154424201887SPedro Giffuni 154524201887SPedro Giffuni 154624201887SPedro Giffuni /* 154724201887SPedro Giffuni * SQLGetInfo - SQL_ODBC_SQL_CONFORMANCE 154824201887SPedro Giffuni */ 154924201887SPedro Giffuni #define SQL_OSC_MINIMUM 0x0000 155024201887SPedro Giffuni #define SQL_OSC_CORE 0x0001 155124201887SPedro Giffuni #define SQL_OSC_EXTENDED 0x0002 155224201887SPedro Giffuni 155324201887SPedro Giffuni 155424201887SPedro Giffuni /* 155524201887SPedro Giffuni * SQLGetInfo - SQL_OWNER_USAGE 155624201887SPedro Giffuni */ 155724201887SPedro Giffuni #define SQL_OU_DML_STATEMENTS 0x00000001L 155824201887SPedro Giffuni #define SQL_OU_PROCEDURE_INVOCATION 0x00000002L 155924201887SPedro Giffuni #define SQL_OU_TABLE_DEFINITION 0x00000004L 156024201887SPedro Giffuni #define SQL_OU_INDEX_DEFINITION 0x00000008L 156124201887SPedro Giffuni #define SQL_OU_PRIVILEGE_DEFINITION 0x00000010L 156224201887SPedro Giffuni 156324201887SPedro Giffuni 156424201887SPedro Giffuni /* 156524201887SPedro Giffuni * SQLGetInfo - SQL_PARAM_ARRAY_ROW_COUNTS 156624201887SPedro Giffuni */ 156724201887SPedro Giffuni #if (ODBCVER >= 0x0300) 156824201887SPedro Giffuni #define SQL_PARC_BATCH 1 156924201887SPedro Giffuni #define SQL_PARC_NO_BATCH 2 157024201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 157124201887SPedro Giffuni 157224201887SPedro Giffuni 157324201887SPedro Giffuni /* 157424201887SPedro Giffuni * SQLGetInfo - SQL_PARAM_ARRAY_SELECTS 157524201887SPedro Giffuni */ 157624201887SPedro Giffuni #if (ODBCVER >= 0x0300) 157724201887SPedro Giffuni #define SQL_PAS_BATCH 1 157824201887SPedro Giffuni #define SQL_PAS_NO_BATCH 2 157924201887SPedro Giffuni #define SQL_PAS_NO_SELECT 3 158024201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 158124201887SPedro Giffuni 158224201887SPedro Giffuni 158324201887SPedro Giffuni /* 158424201887SPedro Giffuni * SQLGetInfo - SQL_POSITIONED_STATEMENTS 158524201887SPedro Giffuni */ 158624201887SPedro Giffuni #define SQL_PS_POSITIONED_DELETE 0x00000001L 158724201887SPedro Giffuni #define SQL_PS_POSITIONED_UPDATE 0x00000002L 158824201887SPedro Giffuni #define SQL_PS_SELECT_FOR_UPDATE 0x00000004L 158924201887SPedro Giffuni 159024201887SPedro Giffuni 159124201887SPedro Giffuni /* 159224201887SPedro Giffuni * SQLGetInfo - SQL_QUALIFIER_LOCATION 159324201887SPedro Giffuni */ 159424201887SPedro Giffuni #define SQL_QL_START 0x0001 159524201887SPedro Giffuni #define SQL_QL_END 0x0002 159624201887SPedro Giffuni 159724201887SPedro Giffuni 159824201887SPedro Giffuni /* 159924201887SPedro Giffuni * SQLGetInfo - SQL_QUALIFIER_USAGE 160024201887SPedro Giffuni */ 160124201887SPedro Giffuni #define SQL_QU_DML_STATEMENTS 0x00000001L 160224201887SPedro Giffuni #define SQL_QU_PROCEDURE_INVOCATION 0x00000002L 160324201887SPedro Giffuni #define SQL_QU_TABLE_DEFINITION 0x00000004L 160424201887SPedro Giffuni #define SQL_QU_INDEX_DEFINITION 0x00000008L 160524201887SPedro Giffuni #define SQL_QU_PRIVILEGE_DEFINITION 0x00000010L 160624201887SPedro Giffuni 160724201887SPedro Giffuni 160824201887SPedro Giffuni /* 160924201887SPedro Giffuni * SQLGetInfo - SQL_SCHEMA_USAGE 161024201887SPedro Giffuni */ 161124201887SPedro Giffuni #if (ODBCVER >= 0x0300) 161224201887SPedro Giffuni #define SQL_SU_DML_STATEMENTS SQL_OU_DML_STATEMENTS 161324201887SPedro Giffuni #define SQL_SU_PROCEDURE_INVOCATION SQL_OU_PROCEDURE_INVOCATION 161424201887SPedro Giffuni #define SQL_SU_TABLE_DEFINITION SQL_OU_TABLE_DEFINITION 161524201887SPedro Giffuni #define SQL_SU_INDEX_DEFINITION SQL_OU_INDEX_DEFINITION 161624201887SPedro Giffuni #define SQL_SU_PRIVILEGE_DEFINITION SQL_OU_PRIVILEGE_DEFINITION 161724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 161824201887SPedro Giffuni 161924201887SPedro Giffuni 162024201887SPedro Giffuni /* 162124201887SPedro Giffuni * SQLGetInfo - SQL_SCROLL_OPTIONS 162224201887SPedro Giffuni */ 162324201887SPedro Giffuni #define SQL_SO_FORWARD_ONLY 0x00000001L 162424201887SPedro Giffuni #define SQL_SO_KEYSET_DRIVEN 0x00000002L 162524201887SPedro Giffuni #define SQL_SO_DYNAMIC 0x00000004L 162624201887SPedro Giffuni #define SQL_SO_MIXED 0x00000008L 162724201887SPedro Giffuni #define SQL_SO_STATIC 0x00000010L 162824201887SPedro Giffuni 162924201887SPedro Giffuni 163024201887SPedro Giffuni /* 163124201887SPedro Giffuni * SQLGetInfo - SQL_SQL_CONFORMANCE 163224201887SPedro Giffuni */ 163324201887SPedro Giffuni #if (ODBCVER >= 0x0300) 163424201887SPedro Giffuni #define SQL_SC_SQL92_ENTRY 0x00000001L 163524201887SPedro Giffuni #define SQL_SC_FIPS127_2_TRANSITIONAL 0x00000002L 163624201887SPedro Giffuni #define SQL_SC_SQL92_INTERMEDIATE 0x00000004L 163724201887SPedro Giffuni #define SQL_SC_SQL92_FULL 0x00000008L 163824201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 163924201887SPedro Giffuni 164024201887SPedro Giffuni 164124201887SPedro Giffuni /* 164224201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_DATETIME_FUNCTIONS 164324201887SPedro Giffuni */ 164424201887SPedro Giffuni #if (ODBCVER >= 0x0300) 164524201887SPedro Giffuni #define SQL_SDF_CURRENT_DATE 0x00000001L 164624201887SPedro Giffuni #define SQL_SDF_CURRENT_TIME 0x00000002L 164724201887SPedro Giffuni #define SQL_SDF_CURRENT_TIMESTAMP 0x00000004L 164824201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 164924201887SPedro Giffuni 165024201887SPedro Giffuni 165124201887SPedro Giffuni /* 165224201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_FOREIGN_KEY_DELETE_RULE 165324201887SPedro Giffuni */ 165424201887SPedro Giffuni #if (ODBCVER >= 0x0300) 165524201887SPedro Giffuni #define SQL_SFKD_CASCADE 0x00000001L 165624201887SPedro Giffuni #define SQL_SFKD_NO_ACTION 0x00000002L 165724201887SPedro Giffuni #define SQL_SFKD_SET_DEFAULT 0x00000004L 165824201887SPedro Giffuni #define SQL_SFKD_SET_NULL 0x00000008L 165924201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 166024201887SPedro Giffuni 166124201887SPedro Giffuni 166224201887SPedro Giffuni /* 166324201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_FOREIGN_KEY_UPDATE_RULE 166424201887SPedro Giffuni */ 166524201887SPedro Giffuni #if (ODBCVER >= 0x0300) 166624201887SPedro Giffuni #define SQL_SFKU_CASCADE 0x00000001L 166724201887SPedro Giffuni #define SQL_SFKU_NO_ACTION 0x00000002L 166824201887SPedro Giffuni #define SQL_SFKU_SET_DEFAULT 0x00000004L 166924201887SPedro Giffuni #define SQL_SFKU_SET_NULL 0x00000008L 167024201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 167124201887SPedro Giffuni 167224201887SPedro Giffuni 167324201887SPedro Giffuni /* 167424201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_GRANT 167524201887SPedro Giffuni */ 167624201887SPedro Giffuni #if (ODBCVER >= 0x0300) 167724201887SPedro Giffuni #define SQL_SG_USAGE_ON_DOMAIN 0x00000001L 167824201887SPedro Giffuni #define SQL_SG_USAGE_ON_CHARACTER_SET 0x00000002L 167924201887SPedro Giffuni #define SQL_SG_USAGE_ON_COLLATION 0x00000004L 168024201887SPedro Giffuni #define SQL_SG_USAGE_ON_TRANSLATION 0x00000008L 168124201887SPedro Giffuni #define SQL_SG_WITH_GRANT_OPTION 0x00000010L 168224201887SPedro Giffuni #define SQL_SG_DELETE_TABLE 0x00000020L 168324201887SPedro Giffuni #define SQL_SG_INSERT_TABLE 0x00000040L 168424201887SPedro Giffuni #define SQL_SG_INSERT_COLUMN 0x00000080L 168524201887SPedro Giffuni #define SQL_SG_REFERENCES_TABLE 0x00000100L 168624201887SPedro Giffuni #define SQL_SG_REFERENCES_COLUMN 0x00000200L 168724201887SPedro Giffuni #define SQL_SG_SELECT_TABLE 0x00000400L 168824201887SPedro Giffuni #define SQL_SG_UPDATE_TABLE 0x00000800L 168924201887SPedro Giffuni #define SQL_SG_UPDATE_COLUMN 0x00001000L 169024201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 169124201887SPedro Giffuni 169224201887SPedro Giffuni 169324201887SPedro Giffuni /* 169424201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_NUMERIC_VALUE_FUNCTIONS 169524201887SPedro Giffuni */ 169624201887SPedro Giffuni #if (ODBCVER >= 0x0300) 169724201887SPedro Giffuni #define SQL_SNVF_BIT_LENGTH 0x00000001L 169824201887SPedro Giffuni #define SQL_SNVF_CHAR_LENGTH 0x00000002L 169924201887SPedro Giffuni #define SQL_SNVF_CHARACTER_LENGTH 0x00000004L 170024201887SPedro Giffuni #define SQL_SNVF_EXTRACT 0x00000008L 170124201887SPedro Giffuni #define SQL_SNVF_OCTET_LENGTH 0x00000010L 170224201887SPedro Giffuni #define SQL_SNVF_POSITION 0x00000020L 170324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 170424201887SPedro Giffuni 170524201887SPedro Giffuni 170624201887SPedro Giffuni /* 170724201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_PREDICATES 170824201887SPedro Giffuni */ 170924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 171024201887SPedro Giffuni #define SQL_SP_EXISTS 0x00000001L 171124201887SPedro Giffuni #define SQL_SP_ISNOTNULL 0x00000002L 171224201887SPedro Giffuni #define SQL_SP_ISNULL 0x00000004L 171324201887SPedro Giffuni #define SQL_SP_MATCH_FULL 0x00000008L 171424201887SPedro Giffuni #define SQL_SP_MATCH_PARTIAL 0x00000010L 171524201887SPedro Giffuni #define SQL_SP_MATCH_UNIQUE_FULL 0x00000020L 171624201887SPedro Giffuni #define SQL_SP_MATCH_UNIQUE_PARTIAL 0x00000040L 171724201887SPedro Giffuni #define SQL_SP_OVERLAPS 0x00000080L 171824201887SPedro Giffuni #define SQL_SP_UNIQUE 0x00000100L 171924201887SPedro Giffuni #define SQL_SP_LIKE 0x00000200L 172024201887SPedro Giffuni #define SQL_SP_IN 0x00000400L 172124201887SPedro Giffuni #define SQL_SP_BETWEEN 0x00000800L 172224201887SPedro Giffuni #define SQL_SP_COMPARISON 0x00001000L 172324201887SPedro Giffuni #define SQL_SP_QUANTIFIED_COMPARISON 0x00002000L 172424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 172524201887SPedro Giffuni 172624201887SPedro Giffuni 172724201887SPedro Giffuni /* 172824201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_RELATIONAL_JOIN_OPERATORS 172924201887SPedro Giffuni */ 173024201887SPedro Giffuni #if (ODBCVER >= 0x0300) 173124201887SPedro Giffuni #define SQL_SRJO_CORRESPONDING_CLAUSE 0x00000001L 173224201887SPedro Giffuni #define SQL_SRJO_CROSS_JOIN 0x00000002L 173324201887SPedro Giffuni #define SQL_SRJO_EXCEPT_JOIN 0x00000004L 173424201887SPedro Giffuni #define SQL_SRJO_FULL_OUTER_JOIN 0x00000008L 173524201887SPedro Giffuni #define SQL_SRJO_INNER_JOIN 0x00000010L 173624201887SPedro Giffuni #define SQL_SRJO_INTERSECT_JOIN 0x00000020L 173724201887SPedro Giffuni #define SQL_SRJO_LEFT_OUTER_JOIN 0x00000040L 173824201887SPedro Giffuni #define SQL_SRJO_NATURAL_JOIN 0x00000080L 173924201887SPedro Giffuni #define SQL_SRJO_RIGHT_OUTER_JOIN 0x00000100L 174024201887SPedro Giffuni #define SQL_SRJO_UNION_JOIN 0x00000200L 174124201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 174224201887SPedro Giffuni 174324201887SPedro Giffuni 174424201887SPedro Giffuni /* 174524201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_REVOKE 174624201887SPedro Giffuni */ 174724201887SPedro Giffuni #if (ODBCVER >= 0x0300) 174824201887SPedro Giffuni #define SQL_SR_USAGE_ON_DOMAIN 0x00000001L 174924201887SPedro Giffuni #define SQL_SR_USAGE_ON_CHARACTER_SET 0x00000002L 175024201887SPedro Giffuni #define SQL_SR_USAGE_ON_COLLATION 0x00000004L 175124201887SPedro Giffuni #define SQL_SR_USAGE_ON_TRANSLATION 0x00000008L 175224201887SPedro Giffuni #define SQL_SR_GRANT_OPTION_FOR 0x00000010L 175324201887SPedro Giffuni #define SQL_SR_CASCADE 0x00000020L 175424201887SPedro Giffuni #define SQL_SR_RESTRICT 0x00000040L 175524201887SPedro Giffuni #define SQL_SR_DELETE_TABLE 0x00000080L 175624201887SPedro Giffuni #define SQL_SR_INSERT_TABLE 0x00000100L 175724201887SPedro Giffuni #define SQL_SR_INSERT_COLUMN 0x00000200L 175824201887SPedro Giffuni #define SQL_SR_REFERENCES_TABLE 0x00000400L 175924201887SPedro Giffuni #define SQL_SR_REFERENCES_COLUMN 0x00000800L 176024201887SPedro Giffuni #define SQL_SR_SELECT_TABLE 0x00001000L 176124201887SPedro Giffuni #define SQL_SR_UPDATE_TABLE 0x00002000L 176224201887SPedro Giffuni #define SQL_SR_UPDATE_COLUMN 0x00004000L 176324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 176424201887SPedro Giffuni 176524201887SPedro Giffuni 176624201887SPedro Giffuni /* 176724201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_ROW_VALUE_CONSTRUCTOR 176824201887SPedro Giffuni */ 176924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 177024201887SPedro Giffuni #define SQL_SRVC_VALUE_EXPRESSION 0x00000001L 177124201887SPedro Giffuni #define SQL_SRVC_NULL 0x00000002L 177224201887SPedro Giffuni #define SQL_SRVC_DEFAULT 0x00000004L 177324201887SPedro Giffuni #define SQL_SRVC_ROW_SUBQUERY 0x00000008L 177424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 177524201887SPedro Giffuni 177624201887SPedro Giffuni 177724201887SPedro Giffuni /* 177824201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_STRING_FUNCTIONS 177924201887SPedro Giffuni */ 178024201887SPedro Giffuni #if (ODBCVER >= 0x0300) 178124201887SPedro Giffuni #define SQL_SSF_CONVERT 0x00000001L 178224201887SPedro Giffuni #define SQL_SSF_LOWER 0x00000002L 178324201887SPedro Giffuni #define SQL_SSF_UPPER 0x00000004L 178424201887SPedro Giffuni #define SQL_SSF_SUBSTRING 0x00000008L 178524201887SPedro Giffuni #define SQL_SSF_TRANSLATE 0x00000010L 178624201887SPedro Giffuni #define SQL_SSF_TRIM_BOTH 0x00000020L 178724201887SPedro Giffuni #define SQL_SSF_TRIM_LEADING 0x00000040L 178824201887SPedro Giffuni #define SQL_SSF_TRIM_TRAILING 0x00000080L 178924201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 179024201887SPedro Giffuni 179124201887SPedro Giffuni 179224201887SPedro Giffuni /* 179324201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_VALUE_EXPRESSIONS 179424201887SPedro Giffuni */ 179524201887SPedro Giffuni #if (ODBCVER >= 0x0300) 179624201887SPedro Giffuni #define SQL_SVE_CASE 0x00000001L 179724201887SPedro Giffuni #define SQL_SVE_CAST 0x00000002L 179824201887SPedro Giffuni #define SQL_SVE_COALESCE 0x00000004L 179924201887SPedro Giffuni #define SQL_SVE_NULLIF 0x00000008L 180024201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 180124201887SPedro Giffuni 180224201887SPedro Giffuni 180324201887SPedro Giffuni /* 180424201887SPedro Giffuni * SQLGetInfo - SQL_STANDARD_CLI_CONFORMANCE 180524201887SPedro Giffuni */ 180624201887SPedro Giffuni #if (ODBCVER >= 0x0300) 180724201887SPedro Giffuni #define SQL_SCC_XOPEN_CLI_VERSION1 0x00000001L 180824201887SPedro Giffuni #define SQL_SCC_ISO92_CLI 0x00000002L 180924201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 181024201887SPedro Giffuni 181124201887SPedro Giffuni 181224201887SPedro Giffuni /* 181324201887SPedro Giffuni * SQLGetInfo - SQL_STATIC_SENSITIVITY 181424201887SPedro Giffuni */ 181524201887SPedro Giffuni #define SQL_SS_ADDITIONS 0x00000001L 181624201887SPedro Giffuni #define SQL_SS_DELETIONS 0x00000002L 181724201887SPedro Giffuni #define SQL_SS_UPDATES 0x00000004L 181824201887SPedro Giffuni 181924201887SPedro Giffuni 182024201887SPedro Giffuni /* 182124201887SPedro Giffuni * SQLGetInfo - SQL_SUBQUERIES 182224201887SPedro Giffuni */ 182324201887SPedro Giffuni #define SQL_SQ_COMPARISON 0x00000001L 182424201887SPedro Giffuni #define SQL_SQ_EXISTS 0x00000002L 182524201887SPedro Giffuni #define SQL_SQ_IN 0x00000004L 182624201887SPedro Giffuni #define SQL_SQ_QUANTIFIED 0x00000008L 182724201887SPedro Giffuni #define SQL_SQ_CORRELATED_SUBQUERIES 0x00000010L 182824201887SPedro Giffuni 182924201887SPedro Giffuni 183024201887SPedro Giffuni /* 183124201887SPedro Giffuni * SQLGetInfo - SQL_SYSTEM_FUNCTIONS 183224201887SPedro Giffuni */ 183324201887SPedro Giffuni #define SQL_FN_SYS_USERNAME 0x00000001L 183424201887SPedro Giffuni #define SQL_FN_SYS_DBNAME 0x00000002L 183524201887SPedro Giffuni #define SQL_FN_SYS_IFNULL 0x00000004L 183624201887SPedro Giffuni 183724201887SPedro Giffuni 183824201887SPedro Giffuni /* 183924201887SPedro Giffuni * SQLGetInfo - SQL_STRING_FUNCTIONS 184024201887SPedro Giffuni */ 1841cdf0e10cSrcweir #define SQL_FN_STR_CONCAT 0x00000001L 1842cdf0e10cSrcweir #define SQL_FN_STR_INSERT 0x00000002L 1843cdf0e10cSrcweir #define SQL_FN_STR_LEFT 0x00000004L 1844cdf0e10cSrcweir #define SQL_FN_STR_LTRIM 0x00000008L 1845cdf0e10cSrcweir #define SQL_FN_STR_LENGTH 0x00000010L 1846cdf0e10cSrcweir #define SQL_FN_STR_LOCATE 0x00000020L 1847cdf0e10cSrcweir #define SQL_FN_STR_LCASE 0x00000040L 1848cdf0e10cSrcweir #define SQL_FN_STR_REPEAT 0x00000080L 1849cdf0e10cSrcweir #define SQL_FN_STR_REPLACE 0x00000100L 1850cdf0e10cSrcweir #define SQL_FN_STR_RIGHT 0x00000200L 1851cdf0e10cSrcweir #define SQL_FN_STR_RTRIM 0x00000400L 1852cdf0e10cSrcweir #define SQL_FN_STR_SUBSTRING 0x00000800L 1853cdf0e10cSrcweir #define SQL_FN_STR_UCASE 0x00001000L 1854cdf0e10cSrcweir #define SQL_FN_STR_ASCII 0x00002000L 1855cdf0e10cSrcweir #define SQL_FN_STR_CHAR 0x00004000L 1856cdf0e10cSrcweir #define SQL_FN_STR_DIFFERENCE 0x00008000L 1857cdf0e10cSrcweir #define SQL_FN_STR_LOCATE_2 0x00010000L 1858cdf0e10cSrcweir #define SQL_FN_STR_SOUNDEX 0x00020000L 1859cdf0e10cSrcweir #define SQL_FN_STR_SPACE 0x00040000L 1860cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 1861cdf0e10cSrcweir #define SQL_FN_STR_BIT_LENGTH 0x00080000L 1862cdf0e10cSrcweir #define SQL_FN_STR_CHAR_LENGTH 0x00100000L 1863cdf0e10cSrcweir #define SQL_FN_STR_CHARACTER_LENGTH 0x00200000L 1864cdf0e10cSrcweir #define SQL_FN_STR_OCTET_LENGTH 0x00400000L 1865cdf0e10cSrcweir #define SQL_FN_STR_POSITION 0x00800000L 1866cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 1867cdf0e10cSrcweir 1868cdf0e10cSrcweir 186924201887SPedro Giffuni /* 187024201887SPedro Giffuni * SQLGetInfo - SQL_TIMEDATE_ADD_INTERVALS 187124201887SPedro Giffuni * SQLGetInfo - SQL_TIMEDATE_DIFF_INTERVALS 187224201887SPedro Giffuni */ 187324201887SPedro Giffuni #define SQL_FN_TSI_FRAC_SECOND 0x00000001L 187424201887SPedro Giffuni #define SQL_FN_TSI_SECOND 0x00000002L 187524201887SPedro Giffuni #define SQL_FN_TSI_MINUTE 0x00000004L 187624201887SPedro Giffuni #define SQL_FN_TSI_HOUR 0x00000008L 187724201887SPedro Giffuni #define SQL_FN_TSI_DAY 0x00000010L 187824201887SPedro Giffuni #define SQL_FN_TSI_WEEK 0x00000020L 187924201887SPedro Giffuni #define SQL_FN_TSI_MONTH 0x00000040L 188024201887SPedro Giffuni #define SQL_FN_TSI_QUARTER 0x00000080L 188124201887SPedro Giffuni #define SQL_FN_TSI_YEAR 0x00000100L 1882cdf0e10cSrcweir 1883cdf0e10cSrcweir 188424201887SPedro Giffuni /* 188524201887SPedro Giffuni * SQLGetInfo - SQL_TIMEDATE_FUNCTIONS 188624201887SPedro Giffuni */ 1887cdf0e10cSrcweir #define SQL_FN_TD_NOW 0x00000001L 1888cdf0e10cSrcweir #define SQL_FN_TD_CURDATE 0x00000002L 1889cdf0e10cSrcweir #define SQL_FN_TD_DAYOFMONTH 0x00000004L 1890cdf0e10cSrcweir #define SQL_FN_TD_DAYOFWEEK 0x00000008L 1891cdf0e10cSrcweir #define SQL_FN_TD_DAYOFYEAR 0x00000010L 1892cdf0e10cSrcweir #define SQL_FN_TD_MONTH 0x00000020L 1893cdf0e10cSrcweir #define SQL_FN_TD_QUARTER 0x00000040L 1894cdf0e10cSrcweir #define SQL_FN_TD_WEEK 0x00000080L 1895cdf0e10cSrcweir #define SQL_FN_TD_YEAR 0x00000100L 1896cdf0e10cSrcweir #define SQL_FN_TD_CURTIME 0x00000200L 1897cdf0e10cSrcweir #define SQL_FN_TD_HOUR 0x00000400L 1898cdf0e10cSrcweir #define SQL_FN_TD_MINUTE 0x00000800L 1899cdf0e10cSrcweir #define SQL_FN_TD_SECOND 0x00001000L 1900cdf0e10cSrcweir #define SQL_FN_TD_TIMESTAMPADD 0x00002000L 1901cdf0e10cSrcweir #define SQL_FN_TD_TIMESTAMPDIFF 0x00004000L 1902cdf0e10cSrcweir #define SQL_FN_TD_DAYNAME 0x00008000L 1903cdf0e10cSrcweir #define SQL_FN_TD_MONTHNAME 0x00010000L 1904cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 1905cdf0e10cSrcweir #define SQL_FN_TD_CURRENT_DATE 0x00020000L 1906cdf0e10cSrcweir #define SQL_FN_TD_CURRENT_TIME 0x00040000L 1907cdf0e10cSrcweir #define SQL_FN_TD_CURRENT_TIMESTAMP 0x00080000L 1908cdf0e10cSrcweir #define SQL_FN_TD_EXTRACT 0x00100000L 1909cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 1910cdf0e10cSrcweir 1911cdf0e10cSrcweir 191224201887SPedro Giffuni /* 191324201887SPedro Giffuni * SQLGetInfo - SQL_TXN_ISOLATION_OPTION 1914cdf0e10cSrcweir */ 191524201887SPedro Giffuni #if (ODBCVER < 0x0300) 1916cdf0e10cSrcweir #define SQL_TXN_VERSIONING 0x00000010L 191724201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 191824201887SPedro Giffuni 191924201887SPedro Giffuni 192024201887SPedro Giffuni /* 192124201887SPedro Giffuni * SQLGetInfo - SQL_UNION 1922cdf0e10cSrcweir */ 1923cdf0e10cSrcweir #define SQL_U_UNION 0x00000001L 1924cdf0e10cSrcweir #define SQL_U_UNION_ALL 0x00000002L 1925cdf0e10cSrcweir 1926cdf0e10cSrcweir 192724201887SPedro Giffuni /* 192824201887SPedro Giffuni * SQLGetInfo - SQL_UNION_STATEMENT 192924201887SPedro Giffuni */ 1930cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 1931cdf0e10cSrcweir #define SQL_US_UNION SQL_U_UNION 1932cdf0e10cSrcweir #define SQL_US_UNION_ALL SQL_U_UNION_ALL 1933cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 1934cdf0e10cSrcweir 1935cdf0e10cSrcweir 193624201887SPedro Giffuni /* 193724201887SPedro Giffuni * SQLGetStmtAttr - ODBC 2.x attributes 193824201887SPedro Giffuni */ 193924201887SPedro Giffuni #define SQL_QUERY_TIMEOUT 0 194024201887SPedro Giffuni #define SQL_MAX_ROWS 1 194124201887SPedro Giffuni #define SQL_NOSCAN 2 194224201887SPedro Giffuni #define SQL_MAX_LENGTH 3 194324201887SPedro Giffuni #define SQL_ASYNC_ENABLE 4 194424201887SPedro Giffuni #define SQL_BIND_TYPE 5 194524201887SPedro Giffuni #define SQL_CURSOR_TYPE 6 194624201887SPedro Giffuni #define SQL_CONCURRENCY 7 194724201887SPedro Giffuni #define SQL_KEYSET_SIZE 8 194824201887SPedro Giffuni #define SQL_ROWSET_SIZE 9 194924201887SPedro Giffuni #define SQL_SIMULATE_CURSOR 10 195024201887SPedro Giffuni #define SQL_RETRIEVE_DATA 11 195124201887SPedro Giffuni #define SQL_USE_BOOKMARKS 12 195224201887SPedro Giffuni #define SQL_GET_BOOKMARK 13 195324201887SPedro Giffuni #define SQL_ROW_NUMBER 14 195424201887SPedro Giffuni 195524201887SPedro Giffuni 195624201887SPedro Giffuni /* 195724201887SPedro Giffuni * SQLGetStmtAttr - ODBC 3.x attributes 195824201887SPedro Giffuni */ 1959cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 196024201887SPedro Giffuni #define SQL_ATTR_ASYNC_ENABLE 4 196124201887SPedro Giffuni #define SQL_ATTR_CONCURRENCY SQL_CONCURRENCY 196224201887SPedro Giffuni #define SQL_ATTR_CURSOR_TYPE SQL_CURSOR_TYPE 196324201887SPedro Giffuni #define SQL_ATTR_ENABLE_AUTO_IPD 15 196424201887SPedro Giffuni #define SQL_ATTR_FETCH_BOOKMARK_PTR 16 196524201887SPedro Giffuni #define SQL_ATTR_KEYSET_SIZE SQL_KEYSET_SIZE 196624201887SPedro Giffuni #define SQL_ATTR_MAX_LENGTH SQL_MAX_LENGTH 196724201887SPedro Giffuni #define SQL_ATTR_MAX_ROWS SQL_MAX_ROWS 196824201887SPedro Giffuni #define SQL_ATTR_NOSCAN SQL_NOSCAN 196924201887SPedro Giffuni #define SQL_ATTR_PARAM_BIND_OFFSET_PTR 17 197024201887SPedro Giffuni #define SQL_ATTR_PARAM_BIND_TYPE 18 197124201887SPedro Giffuni #define SQL_ATTR_PARAM_OPERATION_PTR 19 197224201887SPedro Giffuni #define SQL_ATTR_PARAM_STATUS_PTR 20 197324201887SPedro Giffuni #define SQL_ATTR_PARAMS_PROCESSED_PTR 21 197424201887SPedro Giffuni #define SQL_ATTR_PARAMSET_SIZE 22 197524201887SPedro Giffuni #define SQL_ATTR_QUERY_TIMEOUT SQL_QUERY_TIMEOUT 197624201887SPedro Giffuni #define SQL_ATTR_RETRIEVE_DATA SQL_RETRIEVE_DATA 197724201887SPedro Giffuni #define SQL_ATTR_ROW_BIND_OFFSET_PTR 23 197824201887SPedro Giffuni #define SQL_ATTR_ROW_BIND_TYPE SQL_BIND_TYPE 197924201887SPedro Giffuni #define SQL_ATTR_ROW_NUMBER SQL_ROW_NUMBER /*GetStmtAttr*/ 198024201887SPedro Giffuni #define SQL_ATTR_ROW_OPERATION_PTR 24 198124201887SPedro Giffuni #define SQL_ATTR_ROW_STATUS_PTR 25 198224201887SPedro Giffuni #define SQL_ATTR_ROWS_FETCHED_PTR 26 198324201887SPedro Giffuni #define SQL_ATTR_ROW_ARRAY_SIZE 27 198424201887SPedro Giffuni #define SQL_ATTR_SIMULATE_CURSOR SQL_SIMULATE_CURSOR 198524201887SPedro Giffuni #define SQL_ATTR_USE_BOOKMARKS SQL_USE_BOOKMARKS 198624201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 198724201887SPedro Giffuni 198824201887SPedro Giffuni #if (ODBCVER < 0x0300) 198924201887SPedro Giffuni #define SQL_STMT_OPT_MAX SQL_ROW_NUMBER 199024201887SPedro Giffuni #define SQL_STMT_OPT_MIN SQL_QUERY_TIMEOUT 199124201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 199224201887SPedro Giffuni 199324201887SPedro Giffuni 199424201887SPedro Giffuni /* 199524201887SPedro Giffuni * SQLGetStmtAttr - SQL_ATTR_ASYNC_ENABLE 199624201887SPedro Giffuni */ 199724201887SPedro Giffuni #define SQL_ASYNC_ENABLE_OFF 0UL 199824201887SPedro Giffuni #define SQL_ASYNC_ENABLE_ON 1UL 199924201887SPedro Giffuni #define SQL_ASYNC_ENABLE_DEFAULT SQL_ASYNC_ENABLE_OFF 200024201887SPedro Giffuni 200124201887SPedro Giffuni 200224201887SPedro Giffuni /* 200324201887SPedro Giffuni * SQLGetStmtAttr - SQL_ATTR_PARAM_BIND_TYPE 200424201887SPedro Giffuni */ 200524201887SPedro Giffuni #if (ODBCVER >= 0x0300) 200624201887SPedro Giffuni #define SQL_PARAM_BIND_BY_COLUMN 0UL 200724201887SPedro Giffuni #define SQL_PARAM_BIND_TYPE_DEFAULT SQL_PARAM_BIND_BY_COLUMN 2008cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 2009cdf0e10cSrcweir 2010cdf0e10cSrcweir 201124201887SPedro Giffuni /* 201224201887SPedro Giffuni * SQLGetStmtAttr - SQL_BIND_TYPE 201324201887SPedro Giffuni */ 201424201887SPedro Giffuni #define SQL_BIND_BY_COLUMN 0UL 201524201887SPedro Giffuni #define SQL_BIND_TYPE_DEFAULT SQL_BIND_BY_COLUMN 201624201887SPedro Giffuni 201724201887SPedro Giffuni 201824201887SPedro Giffuni /* 201924201887SPedro Giffuni * SQLGetStmtAttr - SQL_CONCURRENCY 202024201887SPedro Giffuni */ 202124201887SPedro Giffuni #define SQL_CONCUR_READ_ONLY 1 202224201887SPedro Giffuni #define SQL_CONCUR_LOCK 2 202324201887SPedro Giffuni #define SQL_CONCUR_ROWVER 3 202424201887SPedro Giffuni #define SQL_CONCUR_VALUES 4 202524201887SPedro Giffuni #define SQL_CONCUR_DEFAULT SQL_CONCUR_READ_ONLY 202624201887SPedro Giffuni 202724201887SPedro Giffuni 202824201887SPedro Giffuni /* 202924201887SPedro Giffuni * SQLGetStmtAttr - SQL_CURSOR_TYPE 203024201887SPedro Giffuni */ 203124201887SPedro Giffuni #define SQL_CURSOR_FORWARD_ONLY 0UL 203224201887SPedro Giffuni #define SQL_CURSOR_KEYSET_DRIVEN 1UL 203324201887SPedro Giffuni #define SQL_CURSOR_DYNAMIC 2UL 203424201887SPedro Giffuni #define SQL_CURSOR_STATIC 3UL 203524201887SPedro Giffuni #define SQL_CURSOR_TYPE_DEFAULT SQL_CURSOR_FORWARD_ONLY 203624201887SPedro Giffuni 203724201887SPedro Giffuni 203824201887SPedro Giffuni /* 203924201887SPedro Giffuni * SQLGetStmtAttr - SQL_KEYSET_SIZE 204024201887SPedro Giffuni */ 204124201887SPedro Giffuni #define SQL_KEYSET_SIZE_DEFAULT 0UL 204224201887SPedro Giffuni 204324201887SPedro Giffuni 204424201887SPedro Giffuni /* 204524201887SPedro Giffuni * SQLGetStmtAttr - SQL_MAX_LENGTH 204624201887SPedro Giffuni */ 204724201887SPedro Giffuni #define SQL_MAX_LENGTH_DEFAULT 0UL 204824201887SPedro Giffuni 204924201887SPedro Giffuni 205024201887SPedro Giffuni /* 205124201887SPedro Giffuni * SQLGetStmtAttr - SQL_MAX_ROWS 205224201887SPedro Giffuni */ 205324201887SPedro Giffuni #define SQL_MAX_ROWS_DEFAULT 0UL 205424201887SPedro Giffuni 205524201887SPedro Giffuni 205624201887SPedro Giffuni /* 205724201887SPedro Giffuni * SQLGetStmtAttr - SQL_NOSCAN 205824201887SPedro Giffuni */ 205924201887SPedro Giffuni #define SQL_NOSCAN_OFF 0UL /* 1.0 FALSE */ 206024201887SPedro Giffuni #define SQL_NOSCAN_ON 1UL /* 1.0 TRUE */ 206124201887SPedro Giffuni #define SQL_NOSCAN_DEFAULT SQL_NOSCAN_OFF 206224201887SPedro Giffuni 206324201887SPedro Giffuni 206424201887SPedro Giffuni /* 206524201887SPedro Giffuni * SQLGetStmtAttr - SQL_QUERY_TIMEOUT 206624201887SPedro Giffuni */ 206724201887SPedro Giffuni #define SQL_QUERY_TIMEOUT_DEFAULT 0UL 206824201887SPedro Giffuni 206924201887SPedro Giffuni 207024201887SPedro Giffuni /* 207124201887SPedro Giffuni * SQLGetStmtAttr - SQL_RETRIEVE_DATA 207224201887SPedro Giffuni */ 207324201887SPedro Giffuni #define SQL_RD_OFF 0UL 207424201887SPedro Giffuni #define SQL_RD_ON 1UL 207524201887SPedro Giffuni #define SQL_RD_DEFAULT SQL_RD_ON 207624201887SPedro Giffuni 207724201887SPedro Giffuni 207824201887SPedro Giffuni /* 207924201887SPedro Giffuni * SQLGetStmtAttr - SQL_ROWSET_SIZE 208024201887SPedro Giffuni */ 208124201887SPedro Giffuni #define SQL_ROWSET_SIZE_DEFAULT 1UL 208224201887SPedro Giffuni 208324201887SPedro Giffuni 208424201887SPedro Giffuni /* 208524201887SPedro Giffuni * SQLGetStmtAttr - SQL_SIMULATE_CURSOR 208624201887SPedro Giffuni */ 208724201887SPedro Giffuni #define SQL_SC_NON_UNIQUE 0UL 208824201887SPedro Giffuni #define SQL_SC_TRY_UNIQUE 1UL 208924201887SPedro Giffuni #define SQL_SC_UNIQUE 2UL 209024201887SPedro Giffuni 209124201887SPedro Giffuni 209224201887SPedro Giffuni /* 209324201887SPedro Giffuni * SQLGetStmtAttr - SQL_USE_BOOKMARKS 209424201887SPedro Giffuni */ 209524201887SPedro Giffuni #define SQL_UB_OFF 0UL 209624201887SPedro Giffuni #define SQL_UB_ON 1UL 209724201887SPedro Giffuni #define SQL_UB_DEFAULT SQL_UB_OFF 209824201887SPedro Giffuni #if (ODBCVER >= 0x0300) 209924201887SPedro Giffuni #define SQL_UB_FIXED SQL_UB_ON 210024201887SPedro Giffuni #define SQL_UB_VARIABLE 2UL 210124201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 210224201887SPedro Giffuni 210324201887SPedro Giffuni 210424201887SPedro Giffuni /* 210524201887SPedro Giffuni * SQLGetTypeInfo - SEARCHABLE 210624201887SPedro Giffuni */ 210724201887SPedro Giffuni #if (ODBCVER >= 0x0300) 210824201887SPedro Giffuni #define SQL_COL_PRED_CHAR SQL_LIKE_ONLY 210924201887SPedro Giffuni #define SQL_COL_PRED_BASIC SQL_ALL_EXCEPT_LIKE 211024201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 211124201887SPedro Giffuni 211224201887SPedro Giffuni 211324201887SPedro Giffuni /* 211424201887SPedro Giffuni * SQLSetPos 211524201887SPedro Giffuni */ 2116cdf0e10cSrcweir #define SQL_ENTIRE_ROWSET 0 2117cdf0e10cSrcweir 211824201887SPedro Giffuni 211924201887SPedro Giffuni /* 212024201887SPedro Giffuni * SQLSetPos - Operation 212124201887SPedro Giffuni */ 212224201887SPedro Giffuni #define SQL_POSITION 0 212324201887SPedro Giffuni #define SQL_REFRESH 1 2124cdf0e10cSrcweir #define SQL_UPDATE 2 2125cdf0e10cSrcweir #define SQL_DELETE 3 2126cdf0e10cSrcweir 212724201887SPedro Giffuni 212824201887SPedro Giffuni /* 212924201887SPedro Giffuni * SQLBulkOperations - Operation 213024201887SPedro Giffuni */ 2131cdf0e10cSrcweir #define SQL_ADD 4 2132cdf0e10cSrcweir #define SQL_SETPOS_MAX_OPTION_VALUE SQL_ADD 2133cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 2134cdf0e10cSrcweir #define SQL_UPDATE_BY_BOOKMARK 5 2135cdf0e10cSrcweir #define SQL_DELETE_BY_BOOKMARK 6 2136cdf0e10cSrcweir #define SQL_FETCH_BY_BOOKMARK 7 2137cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 2138cdf0e10cSrcweir 2139cdf0e10cSrcweir 214024201887SPedro Giffuni /* 214124201887SPedro Giffuni * SQLSetPos - LockType 214224201887SPedro Giffuni */ 214324201887SPedro Giffuni #define SQL_LOCK_NO_CHANGE 0 214424201887SPedro Giffuni #define SQL_LOCK_EXCLUSIVE 1 214524201887SPedro Giffuni #define SQL_LOCK_UNLOCK 2 2146cdf0e10cSrcweir #define SQL_SETPOS_MAX_LOCK_VALUE SQL_LOCK_UNLOCK 2147cdf0e10cSrcweir 2148cdf0e10cSrcweir 214924201887SPedro Giffuni /* 215024201887SPedro Giffuni * SQLSetPos macros 215124201887SPedro Giffuni */ 215224201887SPedro Giffuni #define SQL_POSITION_TO(hstmt,irow) \ 215324201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_POSITION,SQL_LOCK_NO_CHANGE) 215424201887SPedro Giffuni #define SQL_LOCK_RECORD(hstmt,irow,fLock) \ 215524201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_POSITION,fLock) 215624201887SPedro Giffuni #define SQL_REFRESH_RECORD(hstmt,irow,fLock) \ 215724201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_REFRESH,fLock) 215824201887SPedro Giffuni #define SQL_UPDATE_RECORD(hstmt,irow) \ 215924201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_UPDATE,SQL_LOCK_NO_CHANGE) 216024201887SPedro Giffuni #define SQL_DELETE_RECORD(hstmt,irow) \ 216124201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_DELETE,SQL_LOCK_NO_CHANGE) 216224201887SPedro Giffuni #define SQL_ADD_RECORD(hstmt,irow) \ 216324201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_ADD,SQL_LOCK_NO_CHANGE) 216424201887SPedro Giffuni 216524201887SPedro Giffuni 216624201887SPedro Giffuni /* 216724201887SPedro Giffuni * SQLSpecialColumns - Column types and scopes 216824201887SPedro Giffuni */ 2169cdf0e10cSrcweir #define SQL_BEST_ROWID 1 2170cdf0e10cSrcweir #define SQL_ROWVER 2 2171cdf0e10cSrcweir 2172cdf0e10cSrcweir 217324201887SPedro Giffuni /* 217424201887SPedro Giffuni * All the ODBC keywords 217524201887SPedro Giffuni */ 217624201887SPedro Giffuni #define SQL_ODBC_KEYWORDS \ 217724201887SPedro Giffuni "ABSOLUTE,ACTION,ADA,ADD,ALL,ALLOCATE,ALTER,AND,ANY,ARE,AS,"\ 2178cdf0e10cSrcweir "ASC,ASSERTION,AT,AUTHORIZATION,AVG,"\ 2179cdf0e10cSrcweir "BEGIN,BETWEEN,BIT,BIT_LENGTH,BOTH,BY,CASCADE,CASCADED,CASE,CAST,CATALOG,"\ 2180cdf0e10cSrcweir "CHAR,CHAR_LENGTH,CHARACTER,CHARACTER_LENGTH,CHECK,CLOSE,COALESCE,"\ 2181cdf0e10cSrcweir "COLLATE,COLLATION,COLUMN,COMMIT,CONNECT,CONNECTION,CONSTRAINT,"\ 2182cdf0e10cSrcweir "CONSTRAINTS,CONTINUE,CONVERT,CORRESPONDING,COUNT,CREATE,CROSS,CURRENT,"\ 2183cdf0e10cSrcweir "CURRENT_DATE,CURRENT_TIME,CURRENT_TIMESTAMP,CURRENT_USER,CURSOR,"\ 2184cdf0e10cSrcweir "DATE,DAY,DEALLOCATE,DEC,DECIMAL,DECLARE,DEFAULT,DEFERRABLE,"\ 2185cdf0e10cSrcweir "DEFERRED,DELETE,DESC,DESCRIBE,DESCRIPTOR,DIAGNOSTICS,DISCONNECT,"\ 2186cdf0e10cSrcweir "DISTINCT,DOMAIN,DOUBLE,DROP,"\ 2187cdf0e10cSrcweir "ELSE,END,END-EXEC,ESCAPE,EXCEPT,EXCEPTION,EXEC,EXECUTE,"\ 2188cdf0e10cSrcweir "EXISTS,EXTERNAL,EXTRACT,"\ 2189cdf0e10cSrcweir "FALSE,FETCH,FIRST,FLOAT,FOR,FOREIGN,FORTRAN,FOUND,FROM,FULL,"\ 2190cdf0e10cSrcweir "GET,GLOBAL,GO,GOTO,GRANT,GROUP,HAVING,HOUR,"\ 2191cdf0e10cSrcweir "IDENTITY,IMMEDIATE,IN,INCLUDE,INDEX,INDICATOR,INITIALLY,INNER,"\ 2192cdf0e10cSrcweir "INPUT,INSENSITIVE,INSERT,INT,INTEGER,INTERSECT,INTERVAL,INTO,IS,ISOLATION,"\ 2193cdf0e10cSrcweir "JOIN,KEY,LANGUAGE,LAST,LEADING,LEFT,LEVEL,LIKE,LOCAL,LOWER,"\ 2194cdf0e10cSrcweir "MATCH,MAX,MIN,MINUTE,MODULE,MONTH,"\ 2195cdf0e10cSrcweir "NAMES,NATIONAL,NATURAL,NCHAR,NEXT,NO,NONE,NOT,NULL,NULLIF,NUMERIC,"\ 2196cdf0e10cSrcweir "OCTET_LENGTH,OF,ON,ONLY,OPEN,OPTION,OR,ORDER,OUTER,OUTPUT,OVERLAPS,"\ 2197cdf0e10cSrcweir "PAD,PARTIAL,PASCAL,PLI,POSITION,PRECISION,PREPARE,PRESERVE,"\ 2198cdf0e10cSrcweir "PRIMARY,PRIOR,PRIVILEGES,PROCEDURE,PUBLIC,"\ 2199cdf0e10cSrcweir "READ,REAL,REFERENCES,RELATIVE,RESTRICT,REVOKE,RIGHT,ROLLBACK,ROWS"\ 2200cdf0e10cSrcweir "SCHEMA,SCROLL,SECOND,SECTION,SELECT,SESSION,SESSION_USER,SET,SIZE,"\ 2201cdf0e10cSrcweir "SMALLINT,SOME,SPACE,SQL,SQLCA,SQLCODE,SQLERROR,SQLSTATE,SQLWARNING,"\ 2202cdf0e10cSrcweir "SUBSTRING,SUM,SYSTEM_USER,"\ 2203cdf0e10cSrcweir "TABLE,TEMPORARY,THEN,TIME,TIMESTAMP,TIMEZONE_HOUR,TIMEZONE_MINUTE,"\ 2204cdf0e10cSrcweir "TO,TRAILING,TRANSACTION,TRANSLATE,TRANSLATION,TRIM,TRUE,"\ 2205cdf0e10cSrcweir "UNION,UNIQUE,UNKNOWN,UPDATE,UPPER,USAGE,USER,USING,"\ 2206cdf0e10cSrcweir "VALUE,VALUES,VARCHAR,VARYING,VIEW,WHEN,WHENEVER,WHERE,WITH,WORK,WRITE,"\ 2207cdf0e10cSrcweir "YEAR,ZONE" 2208cdf0e10cSrcweir 220924201887SPedro Giffuni 221024201887SPedro Giffuni /* 221124201887SPedro Giffuni * ---------------------------------------------------------------------- 221224201887SPedro Giffuni * Level 2 Functions 221324201887SPedro Giffuni * ---------------------------------------------------------------------- 221424201887SPedro Giffuni */ 221524201887SPedro Giffuni 221624201887SPedro Giffuni /* 221724201887SPedro Giffuni * SQLExtendedFetch - fFetchType 221824201887SPedro Giffuni */ 221924201887SPedro Giffuni #define SQL_FETCH_BOOKMARK 8 222024201887SPedro Giffuni 222124201887SPedro Giffuni 222224201887SPedro Giffuni /* 222324201887SPedro Giffuni * SQLExtendedFetch - rgfRowStatus 222424201887SPedro Giffuni */ 222524201887SPedro Giffuni #define SQL_ROW_SUCCESS 0 222624201887SPedro Giffuni #define SQL_ROW_DELETED 1 222724201887SPedro Giffuni #define SQL_ROW_UPDATED 2 222824201887SPedro Giffuni #define SQL_ROW_NOROW 3 222924201887SPedro Giffuni #define SQL_ROW_ADDED 4 223024201887SPedro Giffuni #define SQL_ROW_ERROR 5 223124201887SPedro Giffuni #if (ODBCVER >= 0x0300) 223224201887SPedro Giffuni #define SQL_ROW_SUCCESS_WITH_INFO 6 223324201887SPedro Giffuni #define SQL_ROW_PROCEED 0 223424201887SPedro Giffuni #define SQL_ROW_IGNORE 1 223524201887SPedro Giffuni #endif 223624201887SPedro Giffuni 223724201887SPedro Giffuni 223824201887SPedro Giffuni /* 223924201887SPedro Giffuni * SQL_DESC_ARRAY_STATUS_PTR 224024201887SPedro Giffuni */ 224124201887SPedro Giffuni #if (ODBCVER >= 0x0300) 224224201887SPedro Giffuni #define SQL_PARAM_SUCCESS 0 224324201887SPedro Giffuni #define SQL_PARAM_SUCCESS_WITH_INFO 6 224424201887SPedro Giffuni #define SQL_PARAM_ERROR 5 224524201887SPedro Giffuni #define SQL_PARAM_UNUSED 7 224624201887SPedro Giffuni #define SQL_PARAM_DIAG_UNAVAILABLE 1 224724201887SPedro Giffuni 224824201887SPedro Giffuni #define SQL_PARAM_PROCEED 0 224924201887SPedro Giffuni #define SQL_PARAM_IGNORE 1 225024201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 225124201887SPedro Giffuni 225224201887SPedro Giffuni 225324201887SPedro Giffuni /* 225424201887SPedro Giffuni * SQLForeignKeys - UPDATE_RULE/DELETE_RULE 225524201887SPedro Giffuni */ 225624201887SPedro Giffuni #define SQL_CASCADE 0 225724201887SPedro Giffuni #define SQL_RESTRICT 1 225824201887SPedro Giffuni #define SQL_SET_NULL 2 225924201887SPedro Giffuni 226024201887SPedro Giffuni #if (ODBCVER >= 0x0250) 226124201887SPedro Giffuni #define SQL_NO_ACTION 3 226224201887SPedro Giffuni #define SQL_SET_DEFAULT 4 226324201887SPedro Giffuni #endif /* ODBCVER >= 0x0250 */ 226424201887SPedro Giffuni 226524201887SPedro Giffuni 226624201887SPedro Giffuni /* 226724201887SPedro Giffuni * SQLForeignKeys - DEFERABILITY 226824201887SPedro Giffuni */ 226924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 227024201887SPedro Giffuni #define SQL_INITIALLY_DEFERRED 5 227124201887SPedro Giffuni #define SQL_INITIALLY_IMMEDIATE 6 227224201887SPedro Giffuni #define SQL_NOT_DEFERRABLE 7 227324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 227424201887SPedro Giffuni 227524201887SPedro Giffuni 227624201887SPedro Giffuni /* 227724201887SPedro Giffuni * SQLBindParameter - fParamType 227824201887SPedro Giffuni * SQLProcedureColumns - COLUMN_TYPE 227924201887SPedro Giffuni */ 228024201887SPedro Giffuni #define SQL_PARAM_TYPE_UNKNOWN 0 228124201887SPedro Giffuni #define SQL_PARAM_INPUT 1 228224201887SPedro Giffuni #define SQL_PARAM_INPUT_OUTPUT 2 228324201887SPedro Giffuni #define SQL_RESULT_COL 3 228424201887SPedro Giffuni #define SQL_PARAM_OUTPUT 4 228524201887SPedro Giffuni #define SQL_RETURN_VALUE 5 228624201887SPedro Giffuni 228724201887SPedro Giffuni 228824201887SPedro Giffuni /* 228924201887SPedro Giffuni * SQLProcedures - PROCEDURE_TYPE 229024201887SPedro Giffuni */ 229124201887SPedro Giffuni #define SQL_PT_UNKNOWN 0 229224201887SPedro Giffuni #define SQL_PT_PROCEDURE 1 229324201887SPedro Giffuni #define SQL_PT_FUNCTION 2 229424201887SPedro Giffuni 229524201887SPedro Giffuni 229624201887SPedro Giffuni /* 229724201887SPedro Giffuni * SQLSetParam to SQLBindParameter conversion 229824201887SPedro Giffuni */ 229924201887SPedro Giffuni #define SQL_PARAM_TYPE_DEFAULT SQL_PARAM_INPUT_OUTPUT 230024201887SPedro Giffuni #define SQL_SETPARAM_VALUE_MAX (-1L) 230124201887SPedro Giffuni 230224201887SPedro Giffuni 230324201887SPedro Giffuni /* 230424201887SPedro Giffuni * SQLStatistics - fAccuracy 230524201887SPedro Giffuni */ 230624201887SPedro Giffuni #define SQL_QUICK 0 230724201887SPedro Giffuni #define SQL_ENSURE 1 230824201887SPedro Giffuni 230924201887SPedro Giffuni 231024201887SPedro Giffuni /* 231124201887SPedro Giffuni * SQLStatistics - TYPE 231224201887SPedro Giffuni */ 231324201887SPedro Giffuni #define SQL_TABLE_STAT 0 231424201887SPedro Giffuni 231524201887SPedro Giffuni 231624201887SPedro Giffuni /* 231724201887SPedro Giffuni * SQLTables 231824201887SPedro Giffuni */ 231924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 232024201887SPedro Giffuni #define SQL_ALL_CATALOGS "%" 232124201887SPedro Giffuni #define SQL_ALL_SCHEMAS "%" 232224201887SPedro Giffuni #define SQL_ALL_TABLE_TYPES "%" 232324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 232424201887SPedro Giffuni 232524201887SPedro Giffuni /* 232624201887SPedro Giffuni * SQLSpecialColumns - PSEUDO_COLUMN 232724201887SPedro Giffuni */ 232824201887SPedro Giffuni #define SQL_PC_NOT_PSEUDO 1 232924201887SPedro Giffuni 233024201887SPedro Giffuni 233124201887SPedro Giffuni /* 233224201887SPedro Giffuni * Deprecated defines from prior versions of ODBC 233324201887SPedro Giffuni */ 233424201887SPedro Giffuni #define SQL_DATABASE_NAME 16 233524201887SPedro Giffuni #define SQL_FD_FETCH_PREV SQL_FD_FETCH_PRIOR 233624201887SPedro Giffuni #define SQL_FETCH_PREV SQL_FETCH_PRIOR 233724201887SPedro Giffuni #define SQL_CONCUR_TIMESTAMP SQL_CONCUR_ROWVER 233824201887SPedro Giffuni #define SQL_SCCO_OPT_TIMESTAMP SQL_SCCO_OPT_ROWVER 233924201887SPedro Giffuni #define SQL_CC_DELETE SQL_CB_DELETE 234024201887SPedro Giffuni #define SQL_CR_DELETE SQL_CB_DELETE 234124201887SPedro Giffuni #define SQL_CC_CLOSE SQL_CB_CLOSE 234224201887SPedro Giffuni #define SQL_CR_CLOSE SQL_CB_CLOSE 234324201887SPedro Giffuni #define SQL_CC_PRESERVE SQL_CB_PRESERVE 234424201887SPedro Giffuni #define SQL_CR_PRESERVE SQL_CB_PRESERVE 234524201887SPedro Giffuni #if (ODBCVER < 0x0200) 234624201887SPedro Giffuni #define SQL_FETCH_RESUME 7 234724201887SPedro Giffuni #endif 234824201887SPedro Giffuni #define SQL_SCROLL_FORWARD_ONLY 0L 234924201887SPedro Giffuni #define SQL_SCROLL_KEYSET_DRIVEN (-1L) 235024201887SPedro Giffuni #define SQL_SCROLL_DYNAMIC (-2L) 235124201887SPedro Giffuni #define SQL_SCROLL_STATIC (-3L) 235224201887SPedro Giffuni 235324201887SPedro Giffuni 235424201887SPedro Giffuni /* 235524201887SPedro Giffuni * Level 1 function prototypes 235624201887SPedro Giffuni */ 235724201887SPedro Giffuni SQLRETURN SQL_API SQLDriverConnect ( 235824201887SPedro Giffuni SQLHDBC hdbc, 235924201887SPedro Giffuni SQLHWND hwnd, 236024201887SPedro Giffuni SQLCHAR * szConnStrIn, 236124201887SPedro Giffuni SQLSMALLINT cbConnStrIn, 236224201887SPedro Giffuni SQLCHAR * szConnStrOut, 236324201887SPedro Giffuni SQLSMALLINT cbConnStrOutMax, 236424201887SPedro Giffuni SQLSMALLINT * pcbConnStrOut, 236524201887SPedro Giffuni SQLUSMALLINT fDriverCompletion); 236624201887SPedro Giffuni 236724201887SPedro Giffuni /* 236824201887SPedro Giffuni * Level 2 function prototypes 236924201887SPedro Giffuni */ 237024201887SPedro Giffuni 2371cdf0e10cSrcweir SQLRETURN SQL_API SQLBrowseConnect ( 2372cdf0e10cSrcweir SQLHDBC hdbc, 2373cdf0e10cSrcweir SQLCHAR * szConnStrIn, 2374cdf0e10cSrcweir SQLSMALLINT cbConnStrIn, 2375cdf0e10cSrcweir SQLCHAR * szConnStrOut, 2376cdf0e10cSrcweir SQLSMALLINT cbConnStrOutMax, 2377cdf0e10cSrcweir SQLSMALLINT * pcbConnStrOut); 2378cdf0e10cSrcweir 2379cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 2380cdf0e10cSrcweir SQLRETURN SQL_API SQLBulkOperations ( 2381cdf0e10cSrcweir SQLHSTMT StatementHandle, 2382cdf0e10cSrcweir SQLSMALLINT Operation); 2383cdf0e10cSrcweir #endif /* ODBCVER >= 0x0300 */ 2384cdf0e10cSrcweir 2385cdf0e10cSrcweir SQLRETURN SQL_API SQLColAttributes ( 2386cdf0e10cSrcweir SQLHSTMT hstmt, 2387cdf0e10cSrcweir SQLUSMALLINT icol, 2388cdf0e10cSrcweir SQLUSMALLINT fDescType, 2389cdf0e10cSrcweir SQLPOINTER rgbDesc, 2390cdf0e10cSrcweir SQLSMALLINT cbDescMax, 2391cdf0e10cSrcweir SQLSMALLINT * pcbDesc, 2392cdf0e10cSrcweir SQLLEN * pfDesc); 2393cdf0e10cSrcweir 2394cdf0e10cSrcweir SQLRETURN SQL_API SQLColumnPrivileges ( 2395cdf0e10cSrcweir SQLHSTMT hstmt, 2396cdf0e10cSrcweir SQLCHAR * szCatalogName, 2397cdf0e10cSrcweir SQLSMALLINT cbCatalogName, 2398cdf0e10cSrcweir SQLCHAR * szSchemaName, 2399cdf0e10cSrcweir SQLSMALLINT cbSchemaName, 2400cdf0e10cSrcweir SQLCHAR * szTableName, 2401cdf0e10cSrcweir SQLSMALLINT cbTableName, 2402cdf0e10cSrcweir SQLCHAR * szColumnName, 2403cdf0e10cSrcweir SQLSMALLINT cbColumnName); 2404cdf0e10cSrcweir 2405cdf0e10cSrcweir SQLRETURN SQL_API SQLDescribeParam ( 2406cdf0e10cSrcweir SQLHSTMT hstmt, 2407cdf0e10cSrcweir SQLUSMALLINT ipar, 2408cdf0e10cSrcweir SQLSMALLINT * pfSqlType, 2409cdf0e10cSrcweir SQLULEN * pcbParamDef, 2410cdf0e10cSrcweir SQLSMALLINT * pibScale, 2411cdf0e10cSrcweir SQLSMALLINT * pfNullable); 2412cdf0e10cSrcweir 2413cdf0e10cSrcweir SQLRETURN SQL_API SQLExtendedFetch ( 2414cdf0e10cSrcweir SQLHSTMT hstmt, 2415cdf0e10cSrcweir SQLUSMALLINT fFetchType, 2416cdf0e10cSrcweir SQLLEN irow, 2417cdf0e10cSrcweir SQLULEN * pcrow, 2418cdf0e10cSrcweir SQLUSMALLINT * rgfRowStatus); 2419cdf0e10cSrcweir 2420cdf0e10cSrcweir SQLRETURN SQL_API SQLForeignKeys ( 2421cdf0e10cSrcweir SQLHSTMT hstmt, 2422cdf0e10cSrcweir SQLCHAR * szPkCatalogName, 2423cdf0e10cSrcweir SQLSMALLINT cbPkCatalogName, 2424cdf0e10cSrcweir SQLCHAR * szPkSchemaName, 2425cdf0e10cSrcweir SQLSMALLINT cbPkSchemaName, 2426cdf0e10cSrcweir SQLCHAR * szPkTableName, 2427cdf0e10cSrcweir SQLSMALLINT cbPkTableName, 2428cdf0e10cSrcweir SQLCHAR * szFkCatalogName, 2429cdf0e10cSrcweir SQLSMALLINT cbFkCatalogName, 2430cdf0e10cSrcweir SQLCHAR * szFkSchemaName, 2431cdf0e10cSrcweir SQLSMALLINT cbFkSchemaName, 2432cdf0e10cSrcweir SQLCHAR * szFkTableName, 2433cdf0e10cSrcweir SQLSMALLINT cbFkTableName); 2434cdf0e10cSrcweir 2435cdf0e10cSrcweir SQLRETURN SQL_API SQLMoreResults ( 2436cdf0e10cSrcweir SQLHSTMT hstmt); 2437cdf0e10cSrcweir 2438cdf0e10cSrcweir SQLRETURN SQL_API SQLNativeSql ( 2439cdf0e10cSrcweir SQLHDBC hdbc, 2440cdf0e10cSrcweir SQLCHAR * szSqlStrIn, 2441cdf0e10cSrcweir SQLINTEGER cbSqlStrIn, 2442cdf0e10cSrcweir SQLCHAR * szSqlStr, 2443cdf0e10cSrcweir SQLINTEGER cbSqlStrMax, 2444cdf0e10cSrcweir SQLINTEGER * pcbSqlStr); 2445cdf0e10cSrcweir 2446cdf0e10cSrcweir SQLRETURN SQL_API SQLNumParams ( 2447cdf0e10cSrcweir SQLHSTMT hstmt, 2448cdf0e10cSrcweir SQLSMALLINT * pcpar); 2449cdf0e10cSrcweir 2450cdf0e10cSrcweir SQLRETURN SQL_API SQLParamOptions ( 2451cdf0e10cSrcweir SQLHSTMT hstmt, 2452cdf0e10cSrcweir SQLULEN crow, 2453cdf0e10cSrcweir SQLULEN * pirow); 2454cdf0e10cSrcweir 2455cdf0e10cSrcweir SQLRETURN SQL_API SQLPrimaryKeys ( 2456cdf0e10cSrcweir SQLHSTMT hstmt, 2457cdf0e10cSrcweir SQLCHAR * szCatalogName, 2458cdf0e10cSrcweir SQLSMALLINT cbCatalogName, 2459cdf0e10cSrcweir SQLCHAR * szSchemaName, 2460cdf0e10cSrcweir SQLSMALLINT cbSchemaName, 2461cdf0e10cSrcweir SQLCHAR * szTableName, 2462cdf0e10cSrcweir SQLSMALLINT cbTableName); 2463cdf0e10cSrcweir 2464cdf0e10cSrcweir SQLRETURN SQL_API SQLProcedureColumns ( 2465cdf0e10cSrcweir SQLHSTMT hstmt, 2466cdf0e10cSrcweir SQLCHAR * szCatalogName, 2467cdf0e10cSrcweir SQLSMALLINT cbCatalogName, 2468cdf0e10cSrcweir SQLCHAR * szSchemaName, 2469cdf0e10cSrcweir SQLSMALLINT cbSchemaName, 2470cdf0e10cSrcweir SQLCHAR * szProcName, 2471cdf0e10cSrcweir SQLSMALLINT cbProcName, 2472cdf0e10cSrcweir SQLCHAR * szColumnName, 2473cdf0e10cSrcweir SQLSMALLINT cbColumnName); 2474cdf0e10cSrcweir 2475cdf0e10cSrcweir SQLRETURN SQL_API SQLProcedures ( 2476cdf0e10cSrcweir SQLHSTMT hstmt, 2477cdf0e10cSrcweir SQLCHAR * szCatalogName, 2478cdf0e10cSrcweir SQLSMALLINT cbCatalogName, 2479cdf0e10cSrcweir SQLCHAR * szSchemaName, 2480cdf0e10cSrcweir SQLSMALLINT cbSchemaName, 2481cdf0e10cSrcweir SQLCHAR * szProcName, 2482cdf0e10cSrcweir SQLSMALLINT cbProcName); 2483cdf0e10cSrcweir 2484cdf0e10cSrcweir SQLRETURN SQL_API SQLSetPos ( 2485cdf0e10cSrcweir SQLHSTMT hstmt, 2486cdf0e10cSrcweir SQLSETPOSIROW irow, 2487cdf0e10cSrcweir SQLUSMALLINT fOption, 2488cdf0e10cSrcweir SQLUSMALLINT fLock); 2489cdf0e10cSrcweir 2490cdf0e10cSrcweir SQLRETURN SQL_API SQLTablePrivileges ( 2491cdf0e10cSrcweir SQLHSTMT hstmt, 2492cdf0e10cSrcweir SQLCHAR * szCatalogName, 2493cdf0e10cSrcweir SQLSMALLINT cbCatalogName, 2494cdf0e10cSrcweir SQLCHAR * szSchemaName, 2495cdf0e10cSrcweir SQLSMALLINT cbSchemaName, 2496cdf0e10cSrcweir SQLCHAR * szTableName, 2497cdf0e10cSrcweir SQLSMALLINT cbTableName); 2498cdf0e10cSrcweir 2499cdf0e10cSrcweir SQLRETURN SQL_API SQLDrivers ( 2500cdf0e10cSrcweir SQLHENV henv, 2501cdf0e10cSrcweir SQLUSMALLINT fDirection, 2502cdf0e10cSrcweir SQLCHAR * szDriverDesc, 2503cdf0e10cSrcweir SQLSMALLINT cbDriverDescMax, 2504cdf0e10cSrcweir SQLSMALLINT * pcbDriverDesc, 2505cdf0e10cSrcweir SQLCHAR * szDriverAttributes, 2506cdf0e10cSrcweir SQLSMALLINT cbDrvrAttrMax, 2507cdf0e10cSrcweir SQLSMALLINT * pcbDrvrAttr); 2508cdf0e10cSrcweir 2509cdf0e10cSrcweir SQLRETURN SQL_API SQLBindParameter ( 2510cdf0e10cSrcweir SQLHSTMT hstmt, 2511cdf0e10cSrcweir SQLUSMALLINT ipar, 2512cdf0e10cSrcweir SQLSMALLINT fParamType, 2513cdf0e10cSrcweir SQLSMALLINT fCType, 2514cdf0e10cSrcweir SQLSMALLINT fSqlType, 2515cdf0e10cSrcweir SQLULEN cbColDef, 2516cdf0e10cSrcweir SQLSMALLINT ibScale, 2517cdf0e10cSrcweir SQLPOINTER rgbValue, 2518cdf0e10cSrcweir SQLLEN cbValueMax, 2519cdf0e10cSrcweir SQLLEN * pcbValue); 2520cdf0e10cSrcweir 252124201887SPedro Giffuni /* 252224201887SPedro Giffuni * Depreciated - use SQLSetStmtOptions 252324201887SPedro Giffuni */ 252424201887SPedro Giffuni SQLRETURN SQL_API SQLSetScrollOptions ( /* Use SQLSetStmtOptions */ 252524201887SPedro Giffuni SQLHSTMT hstmt, 252624201887SPedro Giffuni SQLUSMALLINT fConcurrency, 252724201887SPedro Giffuni SQLLEN crowKeyset, 252824201887SPedro Giffuni SQLUSMALLINT crowRowset); 252924201887SPedro Giffuni 253024201887SPedro Giffuni 253124201887SPedro Giffuni /* 253224201887SPedro Giffuni * SQLAllocHandleStd - make SQLAllocHandle compatible with X/Open standard 253324201887SPedro Giffuni * 253424201887SPedro Giffuni * NOTE: An application should not call SQLAllocHandleStd directly 253524201887SPedro Giffuni */ 2536cdf0e10cSrcweir #ifdef ODBC_STD 2537cdf0e10cSrcweir #define SQLAllocHandle SQLAllocHandleStd 253824201887SPedro Giffuni #define SQLAllocEnv(phenv) \ 253924201887SPedro Giffuni SQLAllocHandleStd(SQL_HANDLE_ENV, SQL_NULL_HANDLE, phenv) 254024201887SPedro Giffuni 254124201887SPedro Giffuni #if (ODBCVER >= 0x0300) 254224201887SPedro Giffuni SQLRETURN SQL_API SQLAllocHandleStd ( 254324201887SPedro Giffuni SQLSMALLINT fHandleType, 254424201887SPedro Giffuni SQLHANDLE hInput, 254524201887SPedro Giffuni SQLHANDLE * phOutput); 254624201887SPedro Giffuni #endif 254724201887SPedro Giffuni 2548cdf0e10cSrcweir 2549cdf0e10cSrcweir /* Internal type subcodes */ 2550cdf0e10cSrcweir #define SQL_YEAR SQL_CODE_YEAR 2551cdf0e10cSrcweir #define SQL_MONTH SQL_CODE_MONTH 2552cdf0e10cSrcweir #define SQL_DAY SQL_CODE_DAY 2553cdf0e10cSrcweir #define SQL_HOUR SQL_CODE_HOUR 2554cdf0e10cSrcweir #define SQL_MINUTE SQL_CODE_MINUTE 2555cdf0e10cSrcweir #define SQL_SECOND SQL_CODE_SECOND 2556cdf0e10cSrcweir #define SQL_YEAR_TO_MONTH SQL_CODE_YEAR_TO_MONTH 2557cdf0e10cSrcweir #define SQL_DAY_TO_HOUR SQL_CODE_DAY_TO_HOUR 2558cdf0e10cSrcweir #define SQL_DAY_TO_MINUTE SQL_CODE_DAY_TO_MINUTE 2559cdf0e10cSrcweir #define SQL_DAY_TO_SECOND SQL_CODE_DAY_TO_SECOND 2560cdf0e10cSrcweir #define SQL_HOUR_TO_MINUTE SQL_CODE_HOUR_TO_MINUTE 2561cdf0e10cSrcweir #define SQL_HOUR_TO_SECOND SQL_CODE_HOUR_TO_SECOND 2562cdf0e10cSrcweir #define SQL_MINUTE_TO_SECOND SQL_CODE_MINUTE_TO_SECOND 2563cdf0e10cSrcweir #endif /* ODBC_STD */ 2564cdf0e10cSrcweir 2565cdf0e10cSrcweir 2566cdf0e10cSrcweir #ifdef __cplusplus 2567cdf0e10cSrcweir } 2568cdf0e10cSrcweir #endif 2569cdf0e10cSrcweir 257024201887SPedro Giffuni #include <odbc/sqlucode.h> 2571cdf0e10cSrcweir 257224201887SPedro Giffuni #endif /* _SQLEXT_H */ 2573