124201887SPedro Giffuni /* 224201887SPedro Giffuni * 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 8524201887SPedro Giffuni #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 9924201887SPedro Giffuni #define SQL_MAX_OPTION_STRING_LENGTH 256 100cdf0e10cSrcweir 101cdf0e10cSrcweir 10224201887SPedro Giffuni /* 10324201887SPedro Giffuni * Handle types 10424201887SPedro Giffuni */ 105cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 10624201887SPedro Giffuni #define SQL_HANDLE_SENV 5 10724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 108cdf0e10cSrcweir 109cdf0e10cSrcweir 11024201887SPedro Giffuni /* 11124201887SPedro Giffuni * Function return codes 11224201887SPedro Giffuni */ 113cdf0e10cSrcweir #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 */ 118cdf0e10cSrcweir 119cdf0e10cSrcweir 12024201887SPedro Giffuni /* 12124201887SPedro Giffuni * Special length values for attributes 12224201887SPedro Giffuni */ 123cdf0e10cSrcweir #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) 12924201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 130cdf0e10cSrcweir 131cdf0e10cSrcweir 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) 148cdf0e10cSrcweir #if (ODBCVER >= 0x0350) 149cdf0e10cSrcweir #define SQL_GUID (-11) 15024201887SPedro Giffuni #endif /* ODBCVER >= 0x0350 */ 15124201887SPedro Giffuni 152cdf0e10cSrcweir 15324201887SPedro Giffuni /* 15424201887SPedro Giffuni * SQL Interval datatypes 15524201887SPedro Giffuni */ 156cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 157cdf0e10cSrcweir #define SQL_CODE_YEAR 1 158cdf0e10cSrcweir #define SQL_CODE_MONTH 2 159cdf0e10cSrcweir #define SQL_CODE_DAY 3 160cdf0e10cSrcweir #define SQL_CODE_HOUR 4 161cdf0e10cSrcweir #define SQL_CODE_MINUTE 5 162cdf0e10cSrcweir #define SQL_CODE_SECOND 6 163cdf0e10cSrcweir #define SQL_CODE_YEAR_TO_MONTH 7 164cdf0e10cSrcweir #define SQL_CODE_DAY_TO_HOUR 8 165cdf0e10cSrcweir #define SQL_CODE_DAY_TO_MINUTE 9 166cdf0e10cSrcweir #define SQL_CODE_DAY_TO_SECOND 10 167cdf0e10cSrcweir #define SQL_CODE_HOUR_TO_MINUTE 11 168cdf0e10cSrcweir #define SQL_CODE_HOUR_TO_SECOND 12 169cdf0e10cSrcweir #define SQL_CODE_MINUTE_TO_SECOND 13 170cdf0e10cSrcweir 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) 183cdf0e10cSrcweir #define SQL_INTERVAL_MINUTE_TO_SECOND (100 + SQL_CODE_MINUTE_TO_SECOND) 184cdf0e10cSrcweir #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) 19824201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 199cdf0e10cSrcweir 200cdf0e10cSrcweir 20124201887SPedro Giffuni /* 20224201887SPedro Giffuni * SQL unicode data types 20324201887SPedro Giffuni */ 204cdf0e10cSrcweir #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 210cdf0e10cSrcweir #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 */ 216cdf0e10cSrcweir 217cdf0e10cSrcweir 218cdf0e10cSrcweir #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 264cdf0e10cSrcweir #define SQL_C_TYPE_TIMESTAMP SQL_TYPE_TIMESTAMP 26524201887SPedro Giffuni #define SQL_C_INTERVAL_YEAR SQL_INTERVAL_YEAR 266cdf0e10cSrcweir #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 269cdf0e10cSrcweir #define SQL_C_INTERVAL_MINUTE SQL_INTERVAL_MINUTE 270cdf0e10cSrcweir #define SQL_C_INTERVAL_SECOND SQL_INTERVAL_SECOND 27124201887SPedro Giffuni #define SQL_C_INTERVAL_YEAR_TO_MONTH SQL_INTERVAL_YEAR_TO_MONTH 272cdf0e10cSrcweir #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 */ 282cdf0e10cSrcweir 283cdf0e10cSrcweir #if (ODBCVER >= 0x0350) 28424201887SPedro Giffuni #define SQL_C_GUID SQL_GUID 28524201887SPedro Giffuni #endif 28624201887SPedro Giffuni 28724201887SPedro Giffuni #define SQL_TYPE_NULL 0 288cdf0e10cSrcweir 289cdf0e10cSrcweir #if (ODBCVER < 0x0300) 29024201887SPedro Giffuni #define SQL_TYPE_MIN SQL_BIT 29124201887SPedro Giffuni #define SQL_TYPE_MAX SQL_VARCHAR 29224201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 293cdf0e10cSrcweir 294cdf0e10cSrcweir 29524201887SPedro Giffuni /* 29624201887SPedro Giffuni * ---------------------------------------------------------------------- 29724201887SPedro Giffuni * Level 1 Functions 29824201887SPedro Giffuni * ---------------------------------------------------------------------- 29924201887SPedro Giffuni */ 300cdf0e10cSrcweir 30124201887SPedro Giffuni /* 30224201887SPedro Giffuni * SQLBindParameter 30324201887SPedro Giffuni */ 30424201887SPedro Giffuni #define SQL_DEFAULT_PARAM (-5) 30524201887SPedro Giffuni #define SQL_IGNORE (-6) 306cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 307cdf0e10cSrcweir #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) 311cdf0e10cSrcweir 31224201887SPedro Giffuni 31324201887SPedro Giffuni /* 31424201887SPedro Giffuni * binary length for driver specific attributes 31524201887SPedro Giffuni */ 31624201887SPedro Giffuni #define SQL_LEN_BINARY_ATTR_OFFSET (-100) 317cdf0e10cSrcweir #define SQL_LEN_BINARY_ATTR(length) (-(length)+SQL_LEN_BINARY_ATTR_OFFSET) 318cdf0e10cSrcweir 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 343cdf0e10cSrcweir #if (ODBCVER < 0x0300) 34424201887SPedro Giffuni #define SQL_COLUMN_DRIVER_START 1000 34524201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 346cdf0e10cSrcweir 34724201887SPedro Giffuni #define SQL_COLATT_OPT_MIN SQL_COLUMN_COUNT 348cdf0e10cSrcweir 349cdf0e10cSrcweir 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 356cdf0e10cSrcweir 357cdf0e10cSrcweir 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 366cdf0e10cSrcweir 367cdf0e10cSrcweir 36824201887SPedro Giffuni /* 36924201887SPedro Giffuni * SQLDataSources - additional fetch directions 37024201887SPedro Giffuni */ 371cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 37224201887SPedro Giffuni #define SQL_FETCH_FIRST_USER 31 37324201887SPedro Giffuni #define SQL_FETCH_FIRST_SYSTEM 32 37424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 375cdf0e10cSrcweir 376cdf0e10cSrcweir 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 384cdf0e10cSrcweir 385cdf0e10cSrcweir 38624201887SPedro Giffuni /* 38724201887SPedro Giffuni * SQLGetConnectAttr - ODBC 2.x attributes 38824201887SPedro Giffuni */ 38924201887SPedro Giffuni #define SQL_ACCESS_MODE 101 39024201887SPedro Giffuni #define SQL_AUTOCOMMIT 102 39124201887SPedro Giffuni #define SQL_LOGIN_TIMEOUT 103 39224201887SPedro Giffuni #define SQL_OPT_TRACE 104 39324201887SPedro Giffuni #define SQL_OPT_TRACEFILE 105 39424201887SPedro Giffuni #define SQL_TRANSLATE_DLL 106 39524201887SPedro Giffuni #define SQL_TRANSLATE_OPTION 107 39624201887SPedro Giffuni #define SQL_TXN_ISOLATION 108 39724201887SPedro Giffuni #define SQL_CURRENT_QUALIFIER 109 39824201887SPedro Giffuni #define SQL_ODBC_CURSORS 110 39924201887SPedro Giffuni #define SQL_QUIET_MODE 111 40024201887SPedro Giffuni #define SQL_PACKET_SIZE 112 401cdf0e10cSrcweir 402cdf0e10cSrcweir 40324201887SPedro Giffuni /* 40424201887SPedro Giffuni * SQLGetConnectAttr - ODBC 3.0 attributes 405cdf0e10cSrcweir */ 406cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 40724201887SPedro Giffuni #define SQL_ATTR_ACCESS_MODE SQL_ACCESS_MODE 40824201887SPedro Giffuni #define SQL_ATTR_AUTOCOMMIT SQL_AUTOCOMMIT 40924201887SPedro Giffuni #define SQL_ATTR_CONNECTION_TIMEOUT 113 41024201887SPedro Giffuni #define SQL_ATTR_CURRENT_CATALOG SQL_CURRENT_QUALIFIER 41124201887SPedro Giffuni #define SQL_ATTR_DISCONNECT_BEHAVIOR 114 41224201887SPedro Giffuni #define SQL_ATTR_ENLIST_IN_DTC 1207 41324201887SPedro Giffuni #define SQL_ATTR_ENLIST_IN_XA 1208 41424201887SPedro Giffuni #define SQL_ATTR_LOGIN_TIMEOUT SQL_LOGIN_TIMEOUT 41524201887SPedro Giffuni #define SQL_ATTR_ODBC_CURSORS SQL_ODBC_CURSORS 41624201887SPedro Giffuni #define SQL_ATTR_PACKET_SIZE SQL_PACKET_SIZE 41724201887SPedro Giffuni #define SQL_ATTR_QUIET_MODE SQL_QUIET_MODE 41824201887SPedro Giffuni #define SQL_ATTR_TRACE SQL_OPT_TRACE 41924201887SPedro Giffuni #define SQL_ATTR_TRACEFILE SQL_OPT_TRACEFILE 42024201887SPedro Giffuni #define SQL_ATTR_TRANSLATE_LIB SQL_TRANSLATE_DLL 42124201887SPedro Giffuni #define SQL_ATTR_TRANSLATE_OPTION SQL_TRANSLATE_OPTION 42224201887SPedro Giffuni #define SQL_ATTR_TXN_ISOLATION SQL_TXN_ISOLATION 42324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 424cdf0e10cSrcweir 42524201887SPedro Giffuni #define SQL_ATTR_CONNECTION_DEAD 1209 /* GetConnectAttr only */ 426cdf0e10cSrcweir 427cdf0e10cSrcweir 42824201887SPedro Giffuni /* 42924201887SPedro Giffuni * These options have no meaning for a 3.0 driver 43024201887SPedro Giffuni */ 43124201887SPedro Giffuni #if (ODBCVER < 0x0300) 43224201887SPedro Giffuni #define SQL_CONN_OPT_MIN SQL_ACCESS_MODE 43324201887SPedro Giffuni #define SQL_CONN_OPT_MAX SQL_PACKET_SIZE 43424201887SPedro Giffuni #define SQL_CONNECT_OPT_DRVR_START 1000 43524201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 436cdf0e10cSrcweir 437cdf0e10cSrcweir 43824201887SPedro Giffuni /* 43924201887SPedro Giffuni * SQLGetConnectAttr - SQL_ACCESS_MODE 44024201887SPedro Giffuni */ 44124201887SPedro Giffuni #define SQL_MODE_READ_WRITE 0UL 44224201887SPedro Giffuni #define SQL_MODE_READ_ONLY 1UL 44324201887SPedro Giffuni #define SQL_MODE_DEFAULT SQL_MODE_READ_WRITE 444cdf0e10cSrcweir 445cdf0e10cSrcweir 44624201887SPedro Giffuni /* 44724201887SPedro Giffuni * SQLGetConnectAttr - SQL_AUTOCOMMIT 44824201887SPedro Giffuni */ 44924201887SPedro Giffuni #define SQL_AUTOCOMMIT_OFF 0UL 45024201887SPedro Giffuni #define SQL_AUTOCOMMIT_ON 1UL 45124201887SPedro Giffuni #define SQL_AUTOCOMMIT_DEFAULT SQL_AUTOCOMMIT_ON 452cdf0e10cSrcweir 453cdf0e10cSrcweir 45424201887SPedro Giffuni /* 45524201887SPedro Giffuni * SQLGetConnectAttr - SQL_LOGIN_TIMEOUT 45624201887SPedro Giffuni */ 45724201887SPedro Giffuni #define SQL_LOGIN_TIMEOUT_DEFAULT 15UL 458cdf0e10cSrcweir 459cdf0e10cSrcweir 46024201887SPedro Giffuni /* 46124201887SPedro Giffuni * SQLGetConnectAttr - SQL_ODBC_CURSORS 46224201887SPedro Giffuni */ 46324201887SPedro Giffuni #define SQL_CUR_USE_IF_NEEDED 0UL 46424201887SPedro Giffuni #define SQL_CUR_USE_ODBC 1UL 46524201887SPedro Giffuni #define SQL_CUR_USE_DRIVER 2UL 46624201887SPedro Giffuni #define SQL_CUR_DEFAULT SQL_CUR_USE_DRIVER 467cdf0e10cSrcweir 468cdf0e10cSrcweir 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 482cdf0e10cSrcweir 483cdf0e10cSrcweir 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 491cdf0e10cSrcweir 492cdf0e10cSrcweir 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 */ 498cdf0e10cSrcweir 499cdf0e10cSrcweir 50024201887SPedro Giffuni /* 50124201887SPedro Giffuni * SQLGetConnectAttr - SQL_ATTR_DISCONNECT_BEHAVIOR 50224201887SPedro Giffuni */ 50324201887SPedro Giffuni #if (ODBCVER >= 0x0300) 50424201887SPedro Giffuni #define SQL_DB_RETURN_TO_POOL 0UL 50524201887SPedro Giffuni #define SQL_DB_DISCONNECT 1UL 50624201887SPedro Giffuni #define SQL_DB_DEFAULT SQL_DB_RETURN_TO_POOL 50724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 508cdf0e10cSrcweir 509cdf0e10cSrcweir 51024201887SPedro Giffuni /* 51124201887SPedro Giffuni * SQLGetConnectAttr - SQL_ATTR_ENLIST_IN_DTC 51224201887SPedro Giffuni */ 51324201887SPedro Giffuni #if (ODBCVER >= 0x0300) 51424201887SPedro Giffuni #define SQL_DTC_DONE 0L 51524201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 516cdf0e10cSrcweir 517cdf0e10cSrcweir 51824201887SPedro Giffuni /* 51924201887SPedro Giffuni * SQLGetConnectAttr - Unicode drivers 52024201887SPedro Giffuni */ 52124201887SPedro Giffuni #if (ODBCVER >= 0x0351) 52224201887SPedro Giffuni #define SQL_ATTR_ANSI_APP 115 52324201887SPedro Giffuni #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 */ 53524201887SPedro Giffuni #if (ODBCVER >= 0x0300) 53624201887SPedro Giffuni #define SQL_DESC_ARRAY_SIZE 20 53724201887SPedro Giffuni #define SQL_DESC_ARRAY_STATUS_PTR 21 53824201887SPedro Giffuni #define SQL_DESC_AUTO_UNIQUE_VALUE SQL_COLUMN_AUTO_INCREMENT 53924201887SPedro Giffuni #define SQL_DESC_BASE_COLUMN_NAME 22 54024201887SPedro Giffuni #define SQL_DESC_BASE_TABLE_NAME 23 54124201887SPedro Giffuni #define SQL_DESC_BIND_OFFSET_PTR 24 54224201887SPedro Giffuni #define SQL_DESC_BIND_TYPE 25 54324201887SPedro Giffuni #define SQL_DESC_CASE_SENSITIVE SQL_COLUMN_CASE_SENSITIVE 54424201887SPedro Giffuni #define SQL_DESC_CATALOG_NAME SQL_COLUMN_QUALIFIER_NAME 54524201887SPedro Giffuni #define SQL_DESC_CONCISE_TYPE SQL_COLUMN_TYPE 54624201887SPedro Giffuni #define SQL_DESC_DATETIME_INTERVAL_PRECISION 26 54724201887SPedro Giffuni #define SQL_DESC_DISPLAY_SIZE SQL_COLUMN_DISPLAY_SIZE 54824201887SPedro Giffuni #define SQL_DESC_FIXED_PREC_SCALE SQL_COLUMN_MONEY 54924201887SPedro Giffuni #define SQL_DESC_LABEL SQL_COLUMN_LABEL 55024201887SPedro Giffuni #define SQL_DESC_LITERAL_PREFIX 27 55124201887SPedro Giffuni #define SQL_DESC_LITERAL_SUFFIX 28 55224201887SPedro Giffuni #define SQL_DESC_LOCAL_TYPE_NAME 29 55324201887SPedro Giffuni #define SQL_DESC_MAXIMUM_SCALE 30 55424201887SPedro Giffuni #define SQL_DESC_MINIMUM_SCALE 31 55524201887SPedro Giffuni #define SQL_DESC_NUM_PREC_RADIX 32 55624201887SPedro Giffuni #define SQL_DESC_PARAMETER_TYPE 33 55724201887SPedro Giffuni #define SQL_DESC_ROWS_PROCESSED_PTR 34 55824201887SPedro Giffuni #if (ODBCVER >= 0x0350) 55924201887SPedro Giffuni #define SQL_DESC_ROWVER 35 56024201887SPedro Giffuni #endif /* ODBCVER >= 0x0350 */ 56124201887SPedro Giffuni #define SQL_DESC_SCHEMA_NAME SQL_COLUMN_OWNER_NAME 56224201887SPedro Giffuni #define SQL_DESC_SEARCHABLE SQL_COLUMN_SEARCHABLE 56324201887SPedro Giffuni #define SQL_DESC_TYPE_NAME SQL_COLUMN_TYPE_NAME 56424201887SPedro Giffuni #define SQL_DESC_TABLE_NAME SQL_COLUMN_TABLE_NAME 56524201887SPedro Giffuni #define SQL_DESC_UNSIGNED SQL_COLUMN_UNSIGNED 56624201887SPedro Giffuni #define SQL_DESC_UPDATABLE SQL_COLUMN_UPDATABLE 56724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 568cdf0e10cSrcweir 569cdf0e10cSrcweir 57024201887SPedro Giffuni /* 57124201887SPedro Giffuni * SQLGetDiagField - defines for diagnostics fields 57224201887SPedro Giffuni */ 57324201887SPedro Giffuni #if (ODBCVER >= 0x0300) 57424201887SPedro Giffuni #define SQL_DIAG_CURSOR_ROW_COUNT (-1249) 57524201887SPedro Giffuni #define SQL_DIAG_ROW_NUMBER (-1248) 57624201887SPedro Giffuni #define SQL_DIAG_COLUMN_NUMBER (-1247) 57724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 578cdf0e10cSrcweir 579cdf0e10cSrcweir 58024201887SPedro Giffuni /* 58124201887SPedro Giffuni * SQLGetDiagField - SQL_DIAG_ROW_NUMBER and SQL_DIAG_COLUMN_NUMBER 58224201887SPedro Giffuni */ 58324201887SPedro Giffuni #if (ODBCVER >= 0x0300) 58424201887SPedro Giffuni #define SQL_NO_ROW_NUMBER (-1) 58524201887SPedro Giffuni #define SQL_NO_COLUMN_NUMBER (-1) 58624201887SPedro Giffuni #define SQL_ROW_NUMBER_UNKNOWN (-2) 58724201887SPedro Giffuni #define SQL_COLUMN_NUMBER_UNKNOWN (-2) 58824201887SPedro Giffuni #endif 589cdf0e10cSrcweir 590cdf0e10cSrcweir 591cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 59224201887SPedro Giffuni /* 59324201887SPedro Giffuni * SQLGetEnvAttr - Attributes 59424201887SPedro Giffuni */ 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 615cdf0e10cSrcweir 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 */ 623cdf0e10cSrcweir 624cdf0e10cSrcweir 62524201887SPedro Giffuni /* 62624201887SPedro Giffuni * SQLGetFunctions - extensions to the X/Open specification 62724201887SPedro Giffuni */ 628cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 62924201887SPedro Giffuni #define SQL_API_SQLALLOCHANDLESTD 73 63024201887SPedro Giffuni #define SQL_API_SQLBULKOPERATIONS 24 63124201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 63224201887SPedro Giffuni #define SQL_API_SQLBINDPARAMETER 72 63324201887SPedro Giffuni #define SQL_API_SQLBROWSECONNECT 55 63424201887SPedro Giffuni #define SQL_API_SQLCOLATTRIBUTES 6 63524201887SPedro Giffuni #define SQL_API_SQLCOLUMNPRIVILEGES 56 63624201887SPedro Giffuni #define SQL_API_SQLDESCRIBEPARAM 58 63724201887SPedro Giffuni #define SQL_API_SQLDRIVERCONNECT 41 63824201887SPedro Giffuni #define SQL_API_SQLDRIVERS 71 63924201887SPedro Giffuni #define SQL_API_SQLEXTENDEDFETCH 59 64024201887SPedro Giffuni #define SQL_API_SQLFOREIGNKEYS 60 64124201887SPedro Giffuni #define SQL_API_SQLMORERESULTS 61 64224201887SPedro Giffuni #define SQL_API_SQLNATIVESQL 62 64324201887SPedro Giffuni #define SQL_API_SQLNUMPARAMS 63 64424201887SPedro Giffuni #define SQL_API_SQLPARAMOPTIONS 64 64524201887SPedro Giffuni #define SQL_API_SQLPRIMARYKEYS 65 64624201887SPedro Giffuni #define SQL_API_SQLPROCEDURECOLUMNS 66 64724201887SPedro Giffuni #define SQL_API_SQLPROCEDURES 67 64824201887SPedro Giffuni #define SQL_API_SQLSETPOS 68 64924201887SPedro Giffuni #define SQL_API_SQLSETSCROLLOPTIONS 69 65024201887SPedro Giffuni #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 */ 65724201887SPedro Giffuni #if (ODBCVER < 0x0300) 65824201887SPedro Giffuni #define SQL_EXT_API_LAST SQL_API_SQLBINDPARAMETER 65924201887SPedro Giffuni #define SQL_NUM_FUNCTIONS 23 66024201887SPedro Giffuni #define SQL_EXT_API_START 40 66124201887SPedro Giffuni #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 669cdf0e10cSrcweir 670cdf0e10cSrcweir 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 675cdf0e10cSrcweir 676cdf0e10cSrcweir 67724201887SPedro Giffuni /* 67824201887SPedro Giffuni * SQLGetFunctions - SQL_API_ODBC3_ALL_FUNCTIONS 67924201887SPedro Giffuni */ 68024201887SPedro Giffuni #if (ODBCVER >= 0x0300) 68124201887SPedro Giffuni #define SQL_API_ODBC3_ALL_FUNCTIONS 999 68224201887SPedro Giffuni #define SQL_API_ODBC3_ALL_FUNCTIONS_SIZE 250 68324201887SPedro Giffuni 68424201887SPedro Giffuni #define SQL_FUNC_EXISTS(pfExists, uwAPI) \ 68524201887SPedro Giffuni ((*(((UWORD*) (pfExists)) + ((uwAPI) >> 4)) & (1 << ((uwAPI) & 0x000F))) \ 68624201887SPedro Giffuni ? SQL_TRUE : SQL_FALSE) 68724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 68824201887SPedro Giffuni 68924201887SPedro Giffuni 69024201887SPedro Giffuni /* 69124201887SPedro Giffuni * SQLGetInfo - ODBC 2.x extensions to the X/Open standard 69224201887SPedro Giffuni */ 69324201887SPedro Giffuni #define SQL_INFO_FIRST 0 69424201887SPedro Giffuni #define SQL_ACTIVE_CONNECTIONS 0 /* MAX_DRIVER_CONNECTIONS */ 69524201887SPedro Giffuni #define SQL_ACTIVE_STATEMENTS 1 /* MAX_CONCURRENT_ACTIVITIES */ 69624201887SPedro Giffuni #define SQL_DRIVER_HDBC 3 69724201887SPedro Giffuni #define SQL_DRIVER_HENV 4 69824201887SPedro Giffuni #define SQL_DRIVER_HSTMT 5 69924201887SPedro Giffuni #define SQL_DRIVER_NAME 6 70024201887SPedro Giffuni #define SQL_DRIVER_VER 7 70124201887SPedro Giffuni #define SQL_ODBC_API_CONFORMANCE 9 70224201887SPedro Giffuni #define SQL_ODBC_VER 10 70324201887SPedro Giffuni #define SQL_ROW_UPDATES 11 70424201887SPedro Giffuni #define SQL_ODBC_SAG_CLI_CONFORMANCE 12 70524201887SPedro Giffuni #define SQL_ODBC_SQL_CONFORMANCE 15 70624201887SPedro Giffuni #define SQL_PROCEDURES 21 70724201887SPedro Giffuni #define SQL_CONCAT_NULL_BEHAVIOR 22 70824201887SPedro Giffuni #define SQL_CURSOR_ROLLBACK_BEHAVIOR 24 70924201887SPedro Giffuni #define SQL_EXPRESSIONS_IN_ORDERBY 27 71024201887SPedro Giffuni #define SQL_MAX_OWNER_NAME_LEN 32 /* MAX_SCHEMA_NAME_LEN */ 71124201887SPedro Giffuni #define SQL_MAX_PROCEDURE_NAME_LEN 33 71224201887SPedro Giffuni #define SQL_MAX_QUALIFIER_NAME_LEN 34 /* MAX_CATALOG_NAME_LEN */ 71324201887SPedro Giffuni #define SQL_MULT_RESULT_SETS 36 71424201887SPedro Giffuni #define SQL_MULTIPLE_ACTIVE_TXN 37 71524201887SPedro Giffuni #define SQL_OUTER_JOINS 38 71624201887SPedro Giffuni #define SQL_OWNER_TERM 39 71724201887SPedro Giffuni #define SQL_PROCEDURE_TERM 40 71824201887SPedro Giffuni #define SQL_QUALIFIER_NAME_SEPARATOR 41 71924201887SPedro Giffuni #define SQL_QUALIFIER_TERM 42 72024201887SPedro Giffuni #define SQL_SCROLL_OPTIONS 44 72124201887SPedro Giffuni #define SQL_TABLE_TERM 45 72224201887SPedro Giffuni #define SQL_CONVERT_FUNCTIONS 48 72324201887SPedro Giffuni #define SQL_NUMERIC_FUNCTIONS 49 72424201887SPedro Giffuni #define SQL_STRING_FUNCTIONS 50 72524201887SPedro Giffuni #define SQL_SYSTEM_FUNCTIONS 51 72624201887SPedro Giffuni #define SQL_TIMEDATE_FUNCTIONS 52 72724201887SPedro Giffuni #define SQL_CONVERT_BIGINT 53 72824201887SPedro Giffuni #define SQL_CONVERT_BINARY 54 72924201887SPedro Giffuni #define SQL_CONVERT_BIT 55 73024201887SPedro Giffuni #define SQL_CONVERT_CHAR 56 73124201887SPedro Giffuni #define SQL_CONVERT_DATE 57 73224201887SPedro Giffuni #define SQL_CONVERT_DECIMAL 58 73324201887SPedro Giffuni #define SQL_CONVERT_DOUBLE 59 73424201887SPedro Giffuni #define SQL_CONVERT_FLOAT 60 73524201887SPedro Giffuni #define SQL_CONVERT_INTEGER 61 73624201887SPedro Giffuni #define SQL_CONVERT_LONGVARCHAR 62 73724201887SPedro Giffuni #define SQL_CONVERT_NUMERIC 63 73824201887SPedro Giffuni #define SQL_CONVERT_REAL 64 73924201887SPedro Giffuni #define SQL_CONVERT_SMALLINT 65 74024201887SPedro Giffuni #define SQL_CONVERT_TIME 66 74124201887SPedro Giffuni #define SQL_CONVERT_TIMESTAMP 67 74224201887SPedro Giffuni #define SQL_CONVERT_TINYINT 68 74324201887SPedro Giffuni #define SQL_CONVERT_VARBINARY 69 74424201887SPedro Giffuni #define SQL_CONVERT_VARCHAR 70 74524201887SPedro Giffuni #define SQL_CONVERT_LONGVARBINARY 71 74624201887SPedro Giffuni #define SQL_ODBC_SQL_OPT_IEF 73 /* SQL_INTEGRITY */ 74724201887SPedro Giffuni #define SQL_CORRELATION_NAME 74 74824201887SPedro Giffuni #define SQL_NON_NULLABLE_COLUMNS 75 74924201887SPedro Giffuni #define SQL_DRIVER_HLIB 76 75024201887SPedro Giffuni #define SQL_DRIVER_ODBC_VER 77 75124201887SPedro Giffuni #define SQL_LOCK_TYPES 78 75224201887SPedro Giffuni #define SQL_POS_OPERATIONS 79 75324201887SPedro Giffuni #define SQL_POSITIONED_STATEMENTS 80 75424201887SPedro Giffuni #define SQL_BOOKMARK_PERSISTENCE 82 75524201887SPedro Giffuni #define SQL_STATIC_SENSITIVITY 83 75624201887SPedro Giffuni #define SQL_FILE_USAGE 84 75724201887SPedro Giffuni #define SQL_COLUMN_ALIAS 87 75824201887SPedro Giffuni #define SQL_GROUP_BY 88 75924201887SPedro Giffuni #define SQL_KEYWORDS 89 76024201887SPedro Giffuni #define SQL_OWNER_USAGE 91 76124201887SPedro Giffuni #define SQL_QUALIFIER_USAGE 92 76224201887SPedro Giffuni #define SQL_QUOTED_IDENTIFIER_CASE 93 76324201887SPedro Giffuni #define SQL_SUBQUERIES 95 76424201887SPedro Giffuni #define SQL_UNION 96 76524201887SPedro Giffuni #define SQL_MAX_ROW_SIZE_INCLUDES_LONG 103 76624201887SPedro Giffuni #define SQL_MAX_CHAR_LITERAL_LEN 108 76724201887SPedro Giffuni #define SQL_TIMEDATE_ADD_INTERVALS 109 76824201887SPedro Giffuni #define SQL_TIMEDATE_DIFF_INTERVALS 110 76924201887SPedro Giffuni #define SQL_NEED_LONG_DATA_LEN 111 77024201887SPedro Giffuni #define SQL_MAX_BINARY_LITERAL_LEN 112 77124201887SPedro Giffuni #define SQL_LIKE_ESCAPE_CLAUSE 113 77224201887SPedro Giffuni #define SQL_QUALIFIER_LOCATION 114 77324201887SPedro Giffuni 77424201887SPedro Giffuni #if (ODBCVER >= 0x0201 && ODBCVER < 0x0300) 77524201887SPedro Giffuni #define SQL_OJ_CAPABILITIES 65003 /* Temp value until ODBC 3.0 */ 77624201887SPedro Giffuni #endif /* ODBCVER >= 0x0201 && ODBCVER < 0x0300 */ 77724201887SPedro Giffuni 77824201887SPedro Giffuni 77924201887SPedro Giffuni /* 78024201887SPedro Giffuni * These values are not useful anymore as X/Open defines values in the 78124201887SPedro Giffuni * 10000 range 78224201887SPedro Giffuni */ 78324201887SPedro Giffuni #if (ODBCVER < 0x0300) 78424201887SPedro Giffuni #define SQL_INFO_LAST SQL_QUALIFIER_LOCATION 78524201887SPedro Giffuni #define SQL_INFO_DRIVER_START 1000 78624201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 78724201887SPedro Giffuni 78824201887SPedro Giffuni 78924201887SPedro Giffuni /* 79024201887SPedro Giffuni * SQLGetInfo - ODBC 3.x extensions to the X/Open standard 79124201887SPedro Giffuni */ 79224201887SPedro Giffuni #if (ODBCVER >= 0x0300) 79324201887SPedro Giffuni #define SQL_ACTIVE_ENVIRONMENTS 116 79424201887SPedro Giffuni #define SQL_ALTER_DOMAIN 117 79524201887SPedro Giffuni 79624201887SPedro Giffuni #define SQL_SQL_CONFORMANCE 118 79724201887SPedro Giffuni #define SQL_DATETIME_LITERALS 119 79824201887SPedro Giffuni 79924201887SPedro Giffuni #define SQL_ASYNC_MODE 10021 /* new X/Open spec */ 80024201887SPedro Giffuni #define SQL_BATCH_ROW_COUNT 120 80124201887SPedro Giffuni #define SQL_BATCH_SUPPORT 121 80224201887SPedro Giffuni #define SQL_CATALOG_LOCATION SQL_QUALIFIER_LOCATION 80324201887SPedro Giffuni #define SQL_CATALOG_NAME_SEPARATOR SQL_QUALIFIER_NAME_SEPARATOR 80424201887SPedro Giffuni #define SQL_CATALOG_TERM SQL_QUALIFIER_TERM 80524201887SPedro Giffuni #define SQL_CATALOG_USAGE SQL_QUALIFIER_USAGE 80624201887SPedro Giffuni #define SQL_CONVERT_WCHAR 122 80724201887SPedro Giffuni #define SQL_CONVERT_INTERVAL_DAY_TIME 123 80824201887SPedro Giffuni #define SQL_CONVERT_INTERVAL_YEAR_MONTH 124 80924201887SPedro Giffuni #define SQL_CONVERT_WLONGVARCHAR 125 81024201887SPedro Giffuni #define SQL_CONVERT_WVARCHAR 126 81124201887SPedro Giffuni #define SQL_CREATE_ASSERTION 127 81224201887SPedro Giffuni #define SQL_CREATE_CHARACTER_SET 128 81324201887SPedro Giffuni #define SQL_CREATE_COLLATION 129 81424201887SPedro Giffuni #define SQL_CREATE_DOMAIN 130 81524201887SPedro Giffuni #define SQL_CREATE_SCHEMA 131 81624201887SPedro Giffuni #define SQL_CREATE_TABLE 132 81724201887SPedro Giffuni #define SQL_CREATE_TRANSLATION 133 81824201887SPedro Giffuni #define SQL_CREATE_VIEW 134 81924201887SPedro Giffuni #define SQL_DRIVER_HDESC 135 82024201887SPedro Giffuni #define SQL_DROP_ASSERTION 136 82124201887SPedro Giffuni #define SQL_DROP_CHARACTER_SET 137 82224201887SPedro Giffuni #define SQL_DROP_COLLATION 138 82324201887SPedro Giffuni #define SQL_DROP_DOMAIN 139 82424201887SPedro Giffuni #define SQL_DROP_SCHEMA 140 82524201887SPedro Giffuni #define SQL_DROP_TABLE 141 82624201887SPedro Giffuni #define SQL_DROP_TRANSLATION 142 82724201887SPedro Giffuni #define SQL_DROP_VIEW 143 82824201887SPedro Giffuni #define SQL_DYNAMIC_CURSOR_ATTRIBUTES1 144 82924201887SPedro Giffuni #define SQL_DYNAMIC_CURSOR_ATTRIBUTES2 145 83024201887SPedro Giffuni #define SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 146 83124201887SPedro Giffuni #define SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 147 83224201887SPedro Giffuni #define SQL_INDEX_KEYWORDS 148 83324201887SPedro Giffuni #define SQL_INFO_SCHEMA_VIEWS 149 83424201887SPedro Giffuni #define SQL_KEYSET_CURSOR_ATTRIBUTES1 150 83524201887SPedro Giffuni #define SQL_KEYSET_CURSOR_ATTRIBUTES2 151 83624201887SPedro Giffuni #define SQL_MAX_ASYNC_CONCURRENT_STATEMENTS 10022 /* new X/Open spec */ 83724201887SPedro Giffuni #define SQL_ODBC_INTERFACE_CONFORMANCE 152 83824201887SPedro Giffuni #define SQL_PARAM_ARRAY_ROW_COUNTS 153 83924201887SPedro Giffuni #define SQL_PARAM_ARRAY_SELECTS 154 84024201887SPedro Giffuni #define SQL_SCHEMA_TERM SQL_OWNER_TERM 84124201887SPedro Giffuni #define SQL_SCHEMA_USAGE SQL_OWNER_USAGE 84224201887SPedro Giffuni #define SQL_SQL92_DATETIME_FUNCTIONS 155 84324201887SPedro Giffuni #define SQL_SQL92_FOREIGN_KEY_DELETE_RULE 156 84424201887SPedro Giffuni #define SQL_SQL92_FOREIGN_KEY_UPDATE_RULE 157 84524201887SPedro Giffuni #define SQL_SQL92_GRANT 158 84624201887SPedro Giffuni #define SQL_SQL92_NUMERIC_VALUE_FUNCTIONS 159 84724201887SPedro Giffuni #define SQL_SQL92_PREDICATES 160 84824201887SPedro Giffuni #define SQL_SQL92_RELATIONAL_JOIN_OPERATORS 161 84924201887SPedro Giffuni #define SQL_SQL92_REVOKE 162 85024201887SPedro Giffuni #define SQL_SQL92_ROW_VALUE_CONSTRUCTOR 163 85124201887SPedro Giffuni #define SQL_SQL92_STRING_FUNCTIONS 164 85224201887SPedro Giffuni #define SQL_SQL92_VALUE_EXPRESSIONS 165 85324201887SPedro Giffuni #define SQL_STANDARD_CLI_CONFORMANCE 166 85424201887SPedro Giffuni #define SQL_STATIC_CURSOR_ATTRIBUTES1 167 85524201887SPedro Giffuni #define SQL_STATIC_CURSOR_ATTRIBUTES2 168 85624201887SPedro Giffuni 85724201887SPedro Giffuni #define SQL_AGGREGATE_FUNCTIONS 169 85824201887SPedro Giffuni #define SQL_DDL_INDEX 170 85924201887SPedro Giffuni #define SQL_DM_VER 171 86024201887SPedro Giffuni #define SQL_INSERT_STATEMENT 172 86124201887SPedro Giffuni #define SQL_UNION_STATEMENT SQL_UNION 86224201887SPedro Giffuni 86324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 86424201887SPedro Giffuni 86524201887SPedro Giffuni #define SQL_DTC_TRANSITION_COST 1750 86624201887SPedro Giffuni 86724201887SPedro Giffuni 86824201887SPedro Giffuni /* 86924201887SPedro Giffuni * SQLGetInfo - SQL_AGGREGATE_FUNCTIONS 87024201887SPedro Giffuni */ 87124201887SPedro Giffuni #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 * 90424201887SPedro Giffuni * #define SQL_AT_ADD_COLUMN 0x00000001L 90524201887SPedro Giffuni * #define SQL_AT_DROP_COLUMN 0x00000002L 90624201887SPedro Giffuni * #define SQL_AT_ADD_CONSTRAINT 0x00000008L 90724201887SPedro Giffuni */ 90824201887SPedro Giffuni #define SQL_AT_ADD_COLUMN_SINGLE 0x00000020L 90924201887SPedro Giffuni #define SQL_AT_ADD_COLUMN_DEFAULT 0x00000040L 91024201887SPedro Giffuni #define SQL_AT_ADD_COLUMN_COLLATION 0x00000080L 91124201887SPedro Giffuni #define SQL_AT_SET_COLUMN_DEFAULT 0x00000100L 91224201887SPedro Giffuni #define SQL_AT_DROP_COLUMN_DEFAULT 0x00000200L 91324201887SPedro Giffuni #define SQL_AT_DROP_COLUMN_CASCADE 0x00000400L 91424201887SPedro Giffuni #define SQL_AT_DROP_COLUMN_RESTRICT 0x00000800L 91524201887SPedro Giffuni #define SQL_AT_ADD_TABLE_CONSTRAINT 0x00001000L 91624201887SPedro Giffuni #define SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE 0x00002000L 91724201887SPedro Giffuni #define SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT 0x00004000L 91824201887SPedro Giffuni #define SQL_AT_CONSTRAINT_NAME_DEFINITION 0x00008000L 91924201887SPedro Giffuni #define SQL_AT_CONSTRAINT_INITIALLY_DEFERRED 0x00010000L 92024201887SPedro Giffuni #define SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE 0x00020000L 92124201887SPedro Giffuni #define SQL_AT_CONSTRAINT_DEFERRABLE 0x00040000L 92224201887SPedro Giffuni #define SQL_AT_CONSTRAINT_NON_DEFERRABLE 0x00080000L 92324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 92424201887SPedro Giffuni 92524201887SPedro Giffuni 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 */ 100024201887SPedro Giffuni #define SQL_CVT_CHAR 0x00000001L 100124201887SPedro Giffuni #define SQL_CVT_NUMERIC 0x00000002L 100224201887SPedro Giffuni #define SQL_CVT_DECIMAL 0x00000004L 100324201887SPedro Giffuni #define SQL_CVT_INTEGER 0x00000008L 100424201887SPedro Giffuni #define SQL_CVT_SMALLINT 0x00000010L 100524201887SPedro Giffuni #define SQL_CVT_FLOAT 0x00000020L 100624201887SPedro Giffuni #define SQL_CVT_REAL 0x00000040L 100724201887SPedro Giffuni #define SQL_CVT_DOUBLE 0x00000080L 100824201887SPedro Giffuni #define SQL_CVT_VARCHAR 0x00000100L 100924201887SPedro Giffuni #define SQL_CVT_LONGVARCHAR 0x00000200L 101024201887SPedro Giffuni #define SQL_CVT_BINARY 0x00000400L 101124201887SPedro Giffuni #define SQL_CVT_VARBINARY 0x00000800L 101224201887SPedro Giffuni #define SQL_CVT_BIT 0x00001000L 101324201887SPedro Giffuni #define SQL_CVT_TINYINT 0x00002000L 101424201887SPedro Giffuni #define SQL_CVT_BIGINT 0x00004000L 101524201887SPedro Giffuni #define SQL_CVT_DATE 0x00008000L 101624201887SPedro Giffuni #define SQL_CVT_TIME 0x00010000L 101724201887SPedro Giffuni #define SQL_CVT_TIMESTAMP 0x00020000L 101824201887SPedro Giffuni #define SQL_CVT_LONGVARBINARY 0x00040000L 101924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 102024201887SPedro Giffuni #define SQL_CVT_INTERVAL_YEAR_MONTH 0x00080000L 102124201887SPedro Giffuni #define SQL_CVT_INTERVAL_DAY_TIME 0x00100000L 102224201887SPedro Giffuni #define SQL_CVT_WCHAR 0x00200000L 102324201887SPedro Giffuni #define SQL_CVT_WLONGVARCHAR 0x00400000L 102424201887SPedro Giffuni #define SQL_CVT_WVARCHAR 0x00800000L 102524201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 102624201887SPedro Giffuni 102724201887SPedro Giffuni 102824201887SPedro Giffuni /* 102924201887SPedro Giffuni * SQLGetInfo - SQL_CONVERT_FUNCTIONS 103024201887SPedro Giffuni */ 103124201887SPedro Giffuni #define SQL_FN_CVT_CONVERT 0x00000001L 103224201887SPedro Giffuni #if (ODBCVER >= 0x0300) 103324201887SPedro Giffuni #define SQL_FN_CVT_CAST 0x00000002L 103424201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 103524201887SPedro Giffuni 103624201887SPedro Giffuni 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 104324201887SPedro Giffuni 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 */ 184124201887SPedro Giffuni #define SQL_FN_STR_CONCAT 0x00000001L 184224201887SPedro Giffuni #define SQL_FN_STR_INSERT 0x00000002L 184324201887SPedro Giffuni #define SQL_FN_STR_LEFT 0x00000004L 184424201887SPedro Giffuni #define SQL_FN_STR_LTRIM 0x00000008L 184524201887SPedro Giffuni #define SQL_FN_STR_LENGTH 0x00000010L 184624201887SPedro Giffuni #define SQL_FN_STR_LOCATE 0x00000020L 184724201887SPedro Giffuni #define SQL_FN_STR_LCASE 0x00000040L 184824201887SPedro Giffuni #define SQL_FN_STR_REPEAT 0x00000080L 184924201887SPedro Giffuni #define SQL_FN_STR_REPLACE 0x00000100L 185024201887SPedro Giffuni #define SQL_FN_STR_RIGHT 0x00000200L 185124201887SPedro Giffuni #define SQL_FN_STR_RTRIM 0x00000400L 185224201887SPedro Giffuni #define SQL_FN_STR_SUBSTRING 0x00000800L 185324201887SPedro Giffuni #define SQL_FN_STR_UCASE 0x00001000L 185424201887SPedro Giffuni #define SQL_FN_STR_ASCII 0x00002000L 185524201887SPedro Giffuni #define SQL_FN_STR_CHAR 0x00004000L 185624201887SPedro Giffuni #define SQL_FN_STR_DIFFERENCE 0x00008000L 185724201887SPedro Giffuni #define SQL_FN_STR_LOCATE_2 0x00010000L 185824201887SPedro Giffuni #define SQL_FN_STR_SOUNDEX 0x00020000L 185924201887SPedro Giffuni #define SQL_FN_STR_SPACE 0x00040000L 1860cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 186124201887SPedro Giffuni #define SQL_FN_STR_BIT_LENGTH 0x00080000L 186224201887SPedro Giffuni #define SQL_FN_STR_CHAR_LENGTH 0x00100000L 186324201887SPedro Giffuni #define SQL_FN_STR_CHARACTER_LENGTH 0x00200000L 186424201887SPedro Giffuni #define SQL_FN_STR_OCTET_LENGTH 0x00400000L 186524201887SPedro Giffuni #define SQL_FN_STR_POSITION 0x00800000L 186624201887SPedro Giffuni #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 188224201887SPedro Giffuni 1883cdf0e10cSrcweir 188424201887SPedro Giffuni /* 188524201887SPedro Giffuni * SQLGetInfo - SQL_TIMEDATE_FUNCTIONS 188624201887SPedro Giffuni */ 188724201887SPedro Giffuni #define SQL_FN_TD_NOW 0x00000001L 188824201887SPedro Giffuni #define SQL_FN_TD_CURDATE 0x00000002L 188924201887SPedro Giffuni #define SQL_FN_TD_DAYOFMONTH 0x00000004L 189024201887SPedro Giffuni #define SQL_FN_TD_DAYOFWEEK 0x00000008L 189124201887SPedro Giffuni #define SQL_FN_TD_DAYOFYEAR 0x00000010L 189224201887SPedro Giffuni #define SQL_FN_TD_MONTH 0x00000020L 189324201887SPedro Giffuni #define SQL_FN_TD_QUARTER 0x00000040L 189424201887SPedro Giffuni #define SQL_FN_TD_WEEK 0x00000080L 189524201887SPedro Giffuni #define SQL_FN_TD_YEAR 0x00000100L 189624201887SPedro Giffuni #define SQL_FN_TD_CURTIME 0x00000200L 189724201887SPedro Giffuni #define SQL_FN_TD_HOUR 0x00000400L 189824201887SPedro Giffuni #define SQL_FN_TD_MINUTE 0x00000800L 189924201887SPedro Giffuni #define SQL_FN_TD_SECOND 0x00001000L 190024201887SPedro Giffuni #define SQL_FN_TD_TIMESTAMPADD 0x00002000L 190124201887SPedro Giffuni #define SQL_FN_TD_TIMESTAMPDIFF 0x00004000L 190224201887SPedro Giffuni #define SQL_FN_TD_DAYNAME 0x00008000L 190324201887SPedro Giffuni #define SQL_FN_TD_MONTHNAME 0x00010000L 1904cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 190524201887SPedro Giffuni #define SQL_FN_TD_CURRENT_DATE 0x00020000L 190624201887SPedro Giffuni #define SQL_FN_TD_CURRENT_TIME 0x00040000L 190724201887SPedro Giffuni #define SQL_FN_TD_CURRENT_TIMESTAMP 0x00080000L 190824201887SPedro Giffuni #define SQL_FN_TD_EXTRACT 0x00100000L 190924201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 191024201887SPedro Giffuni 191124201887SPedro Giffuni 191224201887SPedro Giffuni /* 191324201887SPedro Giffuni * SQLGetInfo - SQL_TXN_ISOLATION_OPTION 191424201887SPedro Giffuni */ 191524201887SPedro Giffuni #if (ODBCVER < 0x0300) 191624201887SPedro Giffuni #define SQL_TXN_VERSIONING 0x00000010L 191724201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 191824201887SPedro Giffuni 191924201887SPedro Giffuni 192024201887SPedro Giffuni /* 192124201887SPedro Giffuni * SQLGetInfo - SQL_UNION 192224201887SPedro Giffuni */ 192324201887SPedro Giffuni #define SQL_U_UNION 0x00000001L 192424201887SPedro Giffuni #define SQL_U_UNION_ALL 0x00000002L 192524201887SPedro Giffuni 192624201887SPedro Giffuni 192724201887SPedro Giffuni /* 192824201887SPedro Giffuni * SQLGetInfo - SQL_UNION_STATEMENT 192924201887SPedro Giffuni */ 193024201887SPedro Giffuni #if (ODBCVER >= 0x0300) 193124201887SPedro Giffuni #define SQL_US_UNION SQL_U_UNION 193224201887SPedro Giffuni #define SQL_US_UNION_ALL SQL_U_UNION_ALL 193324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 193424201887SPedro Giffuni 193524201887SPedro Giffuni 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 */ 195924201887SPedro Giffuni #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 200824201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 200924201887SPedro Giffuni 201024201887SPedro Giffuni 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 */ 211624201887SPedro Giffuni #define SQL_ENTIRE_ROWSET 0 2117cdf0e10cSrcweir 2118cdf0e10cSrcweir 211924201887SPedro Giffuni /* 212024201887SPedro Giffuni * SQLSetPos - Operation 212124201887SPedro Giffuni */ 212224201887SPedro Giffuni #define SQL_POSITION 0 212324201887SPedro Giffuni #define SQL_REFRESH 1 212424201887SPedro Giffuni #define SQL_UPDATE 2 212524201887SPedro Giffuni #define SQL_DELETE 3 212624201887SPedro Giffuni 212724201887SPedro Giffuni 212824201887SPedro Giffuni /* 212924201887SPedro Giffuni * SQLBulkOperations - Operation 213024201887SPedro Giffuni */ 213124201887SPedro Giffuni #define SQL_ADD 4 213224201887SPedro Giffuni #define SQL_SETPOS_MAX_OPTION_VALUE SQL_ADD 213324201887SPedro Giffuni #if (ODBCVER >= 0x0300) 213424201887SPedro Giffuni #define SQL_UPDATE_BY_BOOKMARK 5 213524201887SPedro Giffuni #define SQL_DELETE_BY_BOOKMARK 6 213624201887SPedro Giffuni #define SQL_FETCH_BY_BOOKMARK 7 213724201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 213824201887SPedro Giffuni 213924201887SPedro Giffuni 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 214624201887SPedro Giffuni #define SQL_SETPOS_MAX_LOCK_VALUE SQL_LOCK_UNLOCK 214724201887SPedro Giffuni 214824201887SPedro Giffuni 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) 2164cdf0e10cSrcweir 2165cdf0e10cSrcweir 216624201887SPedro Giffuni /* 216724201887SPedro Giffuni * SQLSpecialColumns - Column types and scopes 216824201887SPedro Giffuni */ 216924201887SPedro Giffuni #define SQL_BEST_ROWID 1 217024201887SPedro Giffuni #define SQL_ROWVER 2 2171cdf0e10cSrcweir 217224201887SPedro Giffuni 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 2209cdf0e10cSrcweir 221024201887SPedro Giffuni /* 221124201887SPedro Giffuni * ---------------------------------------------------------------------- 221224201887SPedro Giffuni * Level 2 Functions 221324201887SPedro Giffuni * ---------------------------------------------------------------------- 221424201887SPedro Giffuni */ 2215cdf0e10cSrcweir 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 2235cdf0e10cSrcweir #endif 2236cdf0e10cSrcweir 2237cdf0e10cSrcweir 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 2252cdf0e10cSrcweir 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 2259cdf0e10cSrcweir 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 */ 2274cdf0e10cSrcweir 2275cdf0e10cSrcweir 2276cdf0e10cSrcweir /* 227724201887SPedro Giffuni * SQLBindParameter - fParamType 227824201887SPedro Giffuni * SQLProcedureColumns - COLUMN_TYPE 2279cdf0e10cSrcweir */ 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 2286cdf0e10cSrcweir 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 2347cdf0e10cSrcweir #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 237124201887SPedro Giffuni SQLRETURN SQL_API SQLBrowseConnect ( 237224201887SPedro Giffuni SQLHDBC hdbc, 237324201887SPedro Giffuni SQLCHAR * szConnStrIn, 237424201887SPedro Giffuni SQLSMALLINT cbConnStrIn, 237524201887SPedro Giffuni SQLCHAR * szConnStrOut, 237624201887SPedro Giffuni SQLSMALLINT cbConnStrOutMax, 237724201887SPedro Giffuni SQLSMALLINT * pcbConnStrOut); 237824201887SPedro Giffuni 237924201887SPedro Giffuni #if (ODBCVER >= 0x0300) 238024201887SPedro Giffuni SQLRETURN SQL_API SQLBulkOperations ( 238124201887SPedro Giffuni SQLHSTMT StatementHandle, 238224201887SPedro Giffuni SQLSMALLINT Operation); 238324201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 238424201887SPedro Giffuni 238524201887SPedro Giffuni SQLRETURN SQL_API SQLColAttributes ( 238624201887SPedro Giffuni SQLHSTMT hstmt, 238724201887SPedro Giffuni SQLUSMALLINT icol, 238824201887SPedro Giffuni SQLUSMALLINT fDescType, 238924201887SPedro Giffuni SQLPOINTER rgbDesc, 239024201887SPedro Giffuni SQLSMALLINT cbDescMax, 239124201887SPedro Giffuni SQLSMALLINT * pcbDesc, 239224201887SPedro Giffuni SQLLEN * pfDesc); 239324201887SPedro Giffuni 239424201887SPedro Giffuni SQLRETURN SQL_API SQLColumnPrivileges ( 239524201887SPedro Giffuni SQLHSTMT hstmt, 239624201887SPedro Giffuni SQLCHAR * szCatalogName, 239724201887SPedro Giffuni SQLSMALLINT cbCatalogName, 239824201887SPedro Giffuni SQLCHAR * szSchemaName, 239924201887SPedro Giffuni SQLSMALLINT cbSchemaName, 240024201887SPedro Giffuni SQLCHAR * szTableName, 240124201887SPedro Giffuni SQLSMALLINT cbTableName, 240224201887SPedro Giffuni SQLCHAR * szColumnName, 240324201887SPedro Giffuni SQLSMALLINT cbColumnName); 240424201887SPedro Giffuni 240524201887SPedro Giffuni SQLRETURN SQL_API SQLDescribeParam ( 240624201887SPedro Giffuni SQLHSTMT hstmt, 240724201887SPedro Giffuni SQLUSMALLINT ipar, 240824201887SPedro Giffuni SQLSMALLINT * pfSqlType, 240924201887SPedro Giffuni SQLULEN * pcbParamDef, 241024201887SPedro Giffuni SQLSMALLINT * pibScale, 241124201887SPedro Giffuni SQLSMALLINT * pfNullable); 241224201887SPedro Giffuni 241324201887SPedro Giffuni SQLRETURN SQL_API SQLExtendedFetch ( 241424201887SPedro Giffuni SQLHSTMT hstmt, 241524201887SPedro Giffuni SQLUSMALLINT fFetchType, 241624201887SPedro Giffuni SQLLEN irow, 241724201887SPedro Giffuni SQLULEN * pcrow, 241824201887SPedro Giffuni SQLUSMALLINT * rgfRowStatus); 241924201887SPedro Giffuni 242024201887SPedro Giffuni SQLRETURN SQL_API SQLForeignKeys ( 242124201887SPedro Giffuni SQLHSTMT hstmt, 242224201887SPedro Giffuni SQLCHAR * szPkCatalogName, 242324201887SPedro Giffuni SQLSMALLINT cbPkCatalogName, 242424201887SPedro Giffuni SQLCHAR * szPkSchemaName, 242524201887SPedro Giffuni SQLSMALLINT cbPkSchemaName, 242624201887SPedro Giffuni SQLCHAR * szPkTableName, 242724201887SPedro Giffuni SQLSMALLINT cbPkTableName, 242824201887SPedro Giffuni SQLCHAR * szFkCatalogName, 242924201887SPedro Giffuni SQLSMALLINT cbFkCatalogName, 243024201887SPedro Giffuni SQLCHAR * szFkSchemaName, 243124201887SPedro Giffuni SQLSMALLINT cbFkSchemaName, 243224201887SPedro Giffuni SQLCHAR * szFkTableName, 243324201887SPedro Giffuni SQLSMALLINT cbFkTableName); 243424201887SPedro Giffuni 243524201887SPedro Giffuni SQLRETURN SQL_API SQLMoreResults ( 243624201887SPedro Giffuni SQLHSTMT hstmt); 243724201887SPedro Giffuni 243824201887SPedro Giffuni SQLRETURN SQL_API SQLNativeSql ( 243924201887SPedro Giffuni SQLHDBC hdbc, 244024201887SPedro Giffuni SQLCHAR * szSqlStrIn, 244124201887SPedro Giffuni SQLINTEGER cbSqlStrIn, 244224201887SPedro Giffuni SQLCHAR * szSqlStr, 244324201887SPedro Giffuni SQLINTEGER cbSqlStrMax, 244424201887SPedro Giffuni SQLINTEGER * pcbSqlStr); 244524201887SPedro Giffuni 244624201887SPedro Giffuni SQLRETURN SQL_API SQLNumParams ( 244724201887SPedro Giffuni SQLHSTMT hstmt, 244824201887SPedro Giffuni SQLSMALLINT * pcpar); 244924201887SPedro Giffuni 245024201887SPedro Giffuni SQLRETURN SQL_API SQLParamOptions ( 245124201887SPedro Giffuni SQLHSTMT hstmt, 245224201887SPedro Giffuni SQLULEN crow, 245324201887SPedro Giffuni SQLULEN * pirow); 245424201887SPedro Giffuni 245524201887SPedro Giffuni SQLRETURN SQL_API SQLPrimaryKeys ( 245624201887SPedro Giffuni SQLHSTMT hstmt, 245724201887SPedro Giffuni SQLCHAR * szCatalogName, 245824201887SPedro Giffuni SQLSMALLINT cbCatalogName, 245924201887SPedro Giffuni SQLCHAR * szSchemaName, 246024201887SPedro Giffuni SQLSMALLINT cbSchemaName, 246124201887SPedro Giffuni SQLCHAR * szTableName, 246224201887SPedro Giffuni SQLSMALLINT cbTableName); 246324201887SPedro Giffuni 246424201887SPedro Giffuni SQLRETURN SQL_API SQLProcedureColumns ( 246524201887SPedro Giffuni SQLHSTMT hstmt, 246624201887SPedro Giffuni SQLCHAR * szCatalogName, 246724201887SPedro Giffuni SQLSMALLINT cbCatalogName, 246824201887SPedro Giffuni SQLCHAR * szSchemaName, 246924201887SPedro Giffuni SQLSMALLINT cbSchemaName, 247024201887SPedro Giffuni SQLCHAR * szProcName, 247124201887SPedro Giffuni SQLSMALLINT cbProcName, 247224201887SPedro Giffuni SQLCHAR * szColumnName, 247324201887SPedro Giffuni SQLSMALLINT cbColumnName); 247424201887SPedro Giffuni 247524201887SPedro Giffuni SQLRETURN SQL_API SQLProcedures ( 247624201887SPedro Giffuni SQLHSTMT hstmt, 247724201887SPedro Giffuni SQLCHAR * szCatalogName, 247824201887SPedro Giffuni SQLSMALLINT cbCatalogName, 247924201887SPedro Giffuni SQLCHAR * szSchemaName, 248024201887SPedro Giffuni SQLSMALLINT cbSchemaName, 248124201887SPedro Giffuni SQLCHAR * szProcName, 248224201887SPedro Giffuni SQLSMALLINT cbProcName); 248324201887SPedro Giffuni 248424201887SPedro Giffuni SQLRETURN SQL_API SQLSetPos ( 248524201887SPedro Giffuni SQLHSTMT hstmt, 248624201887SPedro Giffuni SQLSETPOSIROW irow, 248724201887SPedro Giffuni SQLUSMALLINT fOption, 248824201887SPedro Giffuni SQLUSMALLINT fLock); 248924201887SPedro Giffuni 249024201887SPedro Giffuni SQLRETURN SQL_API SQLTablePrivileges ( 249124201887SPedro Giffuni SQLHSTMT hstmt, 249224201887SPedro Giffuni SQLCHAR * szCatalogName, 249324201887SPedro Giffuni SQLSMALLINT cbCatalogName, 249424201887SPedro Giffuni SQLCHAR * szSchemaName, 249524201887SPedro Giffuni SQLSMALLINT cbSchemaName, 249624201887SPedro Giffuni SQLCHAR * szTableName, 249724201887SPedro Giffuni SQLSMALLINT cbTableName); 249824201887SPedro Giffuni 249924201887SPedro Giffuni SQLRETURN SQL_API SQLDrivers ( 250024201887SPedro Giffuni SQLHENV henv, 250124201887SPedro Giffuni SQLUSMALLINT fDirection, 250224201887SPedro Giffuni SQLCHAR * szDriverDesc, 250324201887SPedro Giffuni SQLSMALLINT cbDriverDescMax, 250424201887SPedro Giffuni SQLSMALLINT * pcbDriverDesc, 250524201887SPedro Giffuni SQLCHAR * szDriverAttributes, 250624201887SPedro Giffuni SQLSMALLINT cbDrvrAttrMax, 250724201887SPedro Giffuni SQLSMALLINT * pcbDrvrAttr); 250824201887SPedro Giffuni 250924201887SPedro Giffuni SQLRETURN SQL_API SQLBindParameter ( 251024201887SPedro Giffuni SQLHSTMT hstmt, 251124201887SPedro Giffuni SQLUSMALLINT ipar, 251224201887SPedro Giffuni SQLSMALLINT fParamType, 251324201887SPedro Giffuni SQLSMALLINT fCType, 251424201887SPedro Giffuni SQLSMALLINT fSqlType, 251524201887SPedro Giffuni SQLULEN cbColDef, 251624201887SPedro Giffuni SQLSMALLINT ibScale, 251724201887SPedro Giffuni SQLPOINTER rgbValue, 251824201887SPedro Giffuni SQLLEN cbValueMax, 251924201887SPedro Giffuni SQLLEN * pcbValue); 252024201887SPedro Giffuni 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 */ 253624201887SPedro Giffuni #ifdef ODBC_STD 253724201887SPedro Giffuni #define SQLAllocHandle SQLAllocHandleStd 253824201887SPedro Giffuni #define SQLAllocEnv(phenv) \ 253924201887SPedro Giffuni SQLAllocHandleStd(SQL_HANDLE_ENV, SQL_NULL_HANDLE, phenv) 2540cdf0e10cSrcweir 254124201887SPedro Giffuni #if (ODBCVER >= 0x0300) 254224201887SPedro Giffuni SQLRETURN SQL_API SQLAllocHandleStd ( 254324201887SPedro Giffuni SQLSMALLINT fHandleType, 254424201887SPedro Giffuni SQLHANDLE hInput, 254524201887SPedro Giffuni SQLHANDLE * phOutput); 2546cdf0e10cSrcweir #endif 2547cdf0e10cSrcweir 254824201887SPedro Giffuni 254924201887SPedro Giffuni /* Internal type subcodes */ 255024201887SPedro Giffuni #define SQL_YEAR SQL_CODE_YEAR 255124201887SPedro Giffuni #define SQL_MONTH SQL_CODE_MONTH 255224201887SPedro Giffuni #define SQL_DAY SQL_CODE_DAY 255324201887SPedro Giffuni #define SQL_HOUR SQL_CODE_HOUR 255424201887SPedro Giffuni #define SQL_MINUTE SQL_CODE_MINUTE 255524201887SPedro Giffuni #define SQL_SECOND SQL_CODE_SECOND 255624201887SPedro Giffuni #define SQL_YEAR_TO_MONTH SQL_CODE_YEAR_TO_MONTH 255724201887SPedro Giffuni #define SQL_DAY_TO_HOUR SQL_CODE_DAY_TO_HOUR 255824201887SPedro Giffuni #define SQL_DAY_TO_MINUTE SQL_CODE_DAY_TO_MINUTE 255924201887SPedro Giffuni #define SQL_DAY_TO_SECOND SQL_CODE_DAY_TO_SECOND 256024201887SPedro Giffuni #define SQL_HOUR_TO_MINUTE SQL_CODE_HOUR_TO_MINUTE 256124201887SPedro Giffuni #define SQL_HOUR_TO_SECOND SQL_CODE_HOUR_TO_SECOND 256224201887SPedro Giffuni #define SQL_MINUTE_TO_SECOND SQL_CODE_MINUTE_TO_SECOND 256324201887SPedro Giffuni #endif /* ODBC_STD */ 256424201887SPedro Giffuni 256524201887SPedro Giffuni 256624201887SPedro Giffuni #ifdef __cplusplus 256724201887SPedro Giffuni } 2568cdf0e10cSrcweir #endif 256924201887SPedro Giffuni 257024201887SPedro Giffuni #include <odbc/sqlucode.h> 257124201887SPedro Giffuni 257224201887SPedro Giffuni #endif /* _SQLEXT_H */ 2573