1*24201887SPedro Giffuni /* 2*24201887SPedro Giffuni * sqlext.h 3cdf0e10cSrcweir * 4*24201887SPedro Giffuni * $Id: sqlext.h,v 1.10 2006/01/20 15:58:34 source Exp $ 5cdf0e10cSrcweir * 6*24201887SPedro Giffuni * ODBC defines (ext) 7*24201887SPedro Giffuni * 8*24201887SPedro Giffuni * The iODBC driver manager. 9*24201887SPedro Giffuni * 10*24201887SPedro Giffuni * Copyright (C) 1995 by Ke Jin <kejin@empress.com> 11*24201887SPedro Giffuni * Copyright (C) 1996-2006 by OpenLink Software <iodbc@openlinksw.com> 12*24201887SPedro Giffuni * All Rights Reserved. 13*24201887SPedro Giffuni * 14*24201887SPedro Giffuni * This software is released under the terms of either of the following 15*24201887SPedro Giffuni * licenses: 16*24201887SPedro Giffuni * 17*24201887SPedro Giffuni * - GNU Library General Public License (see LICENSE.LGPL) 18*24201887SPedro Giffuni * - The BSD License (see LICENSE.BSD). 19*24201887SPedro Giffuni * 20*24201887SPedro Giffuni * Note that the only valid version of the LGPL license as far as this 21*24201887SPedro Giffuni * project is concerned is the original GNU Library General Public License 22*24201887SPedro Giffuni * Version 2, dated June 1991. 23*24201887SPedro Giffuni * 24*24201887SPedro Giffuni * While not mandated by the BSD license, any patches you make to the 25*24201887SPedro Giffuni * iODBC source code may be contributed back into the iODBC project 26*24201887SPedro Giffuni * at your discretion. Contributions will benefit the Open Source and 27*24201887SPedro Giffuni * Data Access community as a whole. Submissions may be made at: 28*24201887SPedro Giffuni * 29*24201887SPedro Giffuni * http://www.iodbc.org 30*24201887SPedro Giffuni * 31*24201887SPedro Giffuni * 32*24201887SPedro Giffuni * GNU Library Generic Public License Version 2 33*24201887SPedro Giffuni * ============================================ 34*24201887SPedro Giffuni * This library is free software; you can redistribute it and/or 35*24201887SPedro Giffuni * modify it under the terms of the GNU Library General Public 36*24201887SPedro Giffuni * License as published by the Free Software Foundation; only 37*24201887SPedro Giffuni * Version 2 of the License dated June 1991. 38*24201887SPedro Giffuni * 39*24201887SPedro Giffuni * This library is distributed in the hope that it will be useful, 40*24201887SPedro Giffuni * but WITHOUT ANY WARRANTY; without even the implied warranty of 41*24201887SPedro Giffuni * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 42*24201887SPedro Giffuni * Library General Public License for more details. 43*24201887SPedro Giffuni * 44*24201887SPedro Giffuni * You should have received a copy of the GNU Library General Public 45*24201887SPedro Giffuni * License along with this library; if not, write to the Free 46*24201887SPedro Giffuni * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 47*24201887SPedro Giffuni * 48*24201887SPedro Giffuni * 49*24201887SPedro Giffuni * The BSD License 50*24201887SPedro Giffuni * =============== 51*24201887SPedro Giffuni * Redistribution and use in source and binary forms, with or without 52*24201887SPedro Giffuni * modification, are permitted provided that the following conditions 53*24201887SPedro Giffuni * are met: 54*24201887SPedro Giffuni * 55*24201887SPedro Giffuni * 1. Redistributions of source code must retain the above copyright 56*24201887SPedro Giffuni * notice, this list of conditions and the following disclaimer. 57*24201887SPedro Giffuni * 2. Redistributions in binary form must reproduce the above copyright 58*24201887SPedro Giffuni * notice, this list of conditions and the following disclaimer in 59*24201887SPedro Giffuni * the documentation and/or other materials provided with the 60*24201887SPedro Giffuni * distribution. 61*24201887SPedro Giffuni * 3. Neither the name of OpenLink Software Inc. nor the names of its 62*24201887SPedro Giffuni * contributors may be used to endorse or promote products derived 63*24201887SPedro Giffuni * from this software without specific prior written permission. 64*24201887SPedro Giffuni * 65*24201887SPedro Giffuni * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 66*24201887SPedro Giffuni * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 67*24201887SPedro Giffuni * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 68*24201887SPedro Giffuni * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL OPENLINK OR 69*24201887SPedro Giffuni * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 70*24201887SPedro Giffuni * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 71*24201887SPedro Giffuni * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 72*24201887SPedro Giffuni * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 73*24201887SPedro Giffuni * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 74*24201887SPedro Giffuni * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 75*24201887SPedro Giffuni * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 76*24201887SPedro Giffuni */ 77cdf0e10cSrcweir 78*24201887SPedro Giffuni #ifndef _SQLEXT_H 79*24201887SPedro Giffuni #define _SQLEXT_H 80cdf0e10cSrcweir 81*24201887SPedro Giffuni #ifndef _SQL_H 82*24201887SPedro Giffuni #include <odbc/sql.h> 83cdf0e10cSrcweir #endif 84cdf0e10cSrcweir 85*24201887SPedro Giffuni #ifdef __cplusplus 86*24201887SPedro Giffuni extern "C" { 87cdf0e10cSrcweir #endif 88cdf0e10cSrcweir 89cdf0e10cSrcweir 90*24201887SPedro Giffuni /* 91*24201887SPedro Giffuni * Useful Constants 92*24201887SPedro Giffuni */ 93*24201887SPedro Giffuni #define SQL_SPEC_MAJOR 3 94*24201887SPedro Giffuni #define SQL_SPEC_MINOR 52 95*24201887SPedro Giffuni #define SQL_SPEC_STRING "03.52" 96cdf0e10cSrcweir 97*24201887SPedro Giffuni #define SQL_SQLSTATE_SIZE 5 98*24201887SPedro Giffuni #define SQL_MAX_DSN_LENGTH 32 99*24201887SPedro Giffuni #define SQL_MAX_OPTION_STRING_LENGTH 256 100cdf0e10cSrcweir 101cdf0e10cSrcweir 102*24201887SPedro Giffuni /* 103*24201887SPedro Giffuni * Handle types 104*24201887SPedro Giffuni */ 105cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 106*24201887SPedro Giffuni #define SQL_HANDLE_SENV 5 107*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 108cdf0e10cSrcweir 109cdf0e10cSrcweir 110*24201887SPedro Giffuni /* 111*24201887SPedro Giffuni * Function return codes 112*24201887SPedro Giffuni */ 113cdf0e10cSrcweir #if (ODBCVER < 0x0300) 114*24201887SPedro Giffuni #define SQL_NO_DATA_FOUND 100 115*24201887SPedro Giffuni #else 116*24201887SPedro Giffuni #define SQL_NO_DATA_FOUND SQL_NO_DATA 117*24201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 118cdf0e10cSrcweir 119cdf0e10cSrcweir 120*24201887SPedro Giffuni /* 121*24201887SPedro Giffuni * Special length values for attributes 122*24201887SPedro Giffuni */ 123cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 124*24201887SPedro Giffuni #define SQL_IS_POINTER (-4) 125*24201887SPedro Giffuni #define SQL_IS_UINTEGER (-5) 126*24201887SPedro Giffuni #define SQL_IS_INTEGER (-6) 127*24201887SPedro Giffuni #define SQL_IS_USMALLINT (-7) 128*24201887SPedro Giffuni #define SQL_IS_SMALLINT (-8) 129*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 130cdf0e10cSrcweir 131cdf0e10cSrcweir 132*24201887SPedro Giffuni /* 133*24201887SPedro Giffuni * SQL extended datatypes 134*24201887SPedro Giffuni */ 135*24201887SPedro Giffuni #define SQL_DATE 9 136cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 137*24201887SPedro Giffuni #define SQL_INTERVAL 10 138*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 139*24201887SPedro Giffuni #define SQL_TIME 10 140*24201887SPedro Giffuni #define SQL_TIMESTAMP 11 141*24201887SPedro Giffuni #define SQL_LONGVARCHAR (-1) 142*24201887SPedro Giffuni #define SQL_BINARY (-2) 143*24201887SPedro Giffuni #define SQL_VARBINARY (-3) 144*24201887SPedro Giffuni #define SQL_LONGVARBINARY (-4) 145*24201887SPedro Giffuni #define SQL_BIGINT (-5) 146*24201887SPedro Giffuni #define SQL_TINYINT (-6) 147*24201887SPedro Giffuni #define SQL_BIT (-7) 148cdf0e10cSrcweir #if (ODBCVER >= 0x0350) 149cdf0e10cSrcweir #define SQL_GUID (-11) 150*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0350 */ 151*24201887SPedro Giffuni 152cdf0e10cSrcweir 153*24201887SPedro Giffuni /* 154*24201887SPedro Giffuni * SQL Interval datatypes 155*24201887SPedro 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 171*24201887SPedro Giffuni #define SQL_INTERVAL_YEAR (100 + SQL_CODE_YEAR) 172*24201887SPedro Giffuni #define SQL_INTERVAL_MONTH (100 + SQL_CODE_MONTH) 173*24201887SPedro Giffuni #define SQL_INTERVAL_DAY (100 + SQL_CODE_DAY) 174*24201887SPedro Giffuni #define SQL_INTERVAL_HOUR (100 + SQL_CODE_HOUR) 175*24201887SPedro Giffuni #define SQL_INTERVAL_MINUTE (100 + SQL_CODE_MINUTE) 176*24201887SPedro Giffuni #define SQL_INTERVAL_SECOND (100 + SQL_CODE_SECOND) 177*24201887SPedro Giffuni #define SQL_INTERVAL_YEAR_TO_MONTH (100 + SQL_CODE_YEAR_TO_MONTH) 178*24201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_HOUR (100 + SQL_CODE_DAY_TO_HOUR) 179*24201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_MINUTE (100 + SQL_CODE_DAY_TO_MINUTE) 180*24201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_SECOND (100 + SQL_CODE_DAY_TO_SECOND) 181*24201887SPedro Giffuni #define SQL_INTERVAL_HOUR_TO_MINUTE (100 + SQL_CODE_HOUR_TO_MINUTE) 182*24201887SPedro 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 185*24201887SPedro Giffuni #define SQL_INTERVAL_YEAR (-80) 186*24201887SPedro Giffuni #define SQL_INTERVAL_MONTH (-81) 187*24201887SPedro Giffuni #define SQL_INTERVAL_YEAR_TO_MONTH (-82) 188*24201887SPedro Giffuni #define SQL_INTERVAL_DAY (-83) 189*24201887SPedro Giffuni #define SQL_INTERVAL_HOUR (-84) 190*24201887SPedro Giffuni #define SQL_INTERVAL_MINUTE (-85) 191*24201887SPedro Giffuni #define SQL_INTERVAL_SECOND (-86) 192*24201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_HOUR (-87) 193*24201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_MINUTE (-88) 194*24201887SPedro Giffuni #define SQL_INTERVAL_DAY_TO_SECOND (-89) 195*24201887SPedro Giffuni #define SQL_INTERVAL_HOUR_TO_MINUTE (-90) 196*24201887SPedro Giffuni #define SQL_INTERVAL_HOUR_TO_SECOND (-91) 197*24201887SPedro Giffuni #define SQL_INTERVAL_MINUTE_TO_SECOND (-92) 198*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 199cdf0e10cSrcweir 200cdf0e10cSrcweir 201*24201887SPedro Giffuni /* 202*24201887SPedro Giffuni * SQL unicode data types 203*24201887SPedro Giffuni */ 204cdf0e10cSrcweir #if (ODBCVER <= 0x0300) 205*24201887SPedro Giffuni /* These definitions are historical and obsolete */ 206*24201887SPedro Giffuni #define SQL_UNICODE (-95) 207*24201887SPedro Giffuni #define SQL_UNICODE_VARCHAR (-96) 208*24201887SPedro Giffuni #define SQL_UNICODE_LONGVARCHAR (-97) 209*24201887SPedro Giffuni #define SQL_UNICODE_CHAR SQL_UNICODE 210cdf0e10cSrcweir #else 211*24201887SPedro Giffuni #define SQL_UNICODE SQL_WCHAR 212*24201887SPedro Giffuni #define SQL_UNICODE_VARCHAR SQL_WVARCHAR 213*24201887SPedro Giffuni #define SQL_UNICODE_LONGVARCHAR SQL_WLONGVARCHAR 214*24201887SPedro Giffuni #define SQL_UNICODE_CHAR SQL_WCHAR 215*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 216cdf0e10cSrcweir 217cdf0e10cSrcweir 218cdf0e10cSrcweir #if (ODBCVER < 0x0300) 219*24201887SPedro Giffuni #define SQL_TYPE_DRIVER_START SQL_INTERVAL_YEAR 220*24201887SPedro Giffuni #define SQL_TYPE_DRIVER_END SQL_UNICODE_LONGVARCHAR 221*24201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 222*24201887SPedro Giffuni 223*24201887SPedro Giffuni 224*24201887SPedro Giffuni #define SQL_SIGNED_OFFSET (-20) 225*24201887SPedro Giffuni #define SQL_UNSIGNED_OFFSET (-22) 226*24201887SPedro Giffuni 227*24201887SPedro Giffuni 228*24201887SPedro Giffuni /* 229*24201887SPedro Giffuni * C datatype to SQL datatype mapping 230*24201887SPedro Giffuni */ 231*24201887SPedro Giffuni #define SQL_C_CHAR SQL_CHAR 232*24201887SPedro Giffuni #define SQL_C_LONG SQL_INTEGER 233*24201887SPedro Giffuni #define SQL_C_SHORT SQL_SMALLINT 234*24201887SPedro Giffuni #define SQL_C_FLOAT SQL_REAL 235*24201887SPedro Giffuni #define SQL_C_DOUBLE SQL_DOUBLE 236*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 237*24201887SPedro Giffuni #define SQL_C_NUMERIC SQL_NUMERIC 238*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 239*24201887SPedro Giffuni #define SQL_C_DEFAULT 99 240*24201887SPedro Giffuni 241*24201887SPedro Giffuni 242*24201887SPedro Giffuni #define SQL_C_DATE SQL_DATE 243*24201887SPedro Giffuni #define SQL_C_TIME SQL_TIME 244*24201887SPedro Giffuni #define SQL_C_TIMESTAMP SQL_TIMESTAMP 245*24201887SPedro Giffuni #define SQL_C_BINARY SQL_BINARY 246*24201887SPedro Giffuni #define SQL_C_BIT SQL_BIT 247*24201887SPedro Giffuni #define SQL_C_TINYINT SQL_TINYINT 248*24201887SPedro Giffuni #define SQL_C_SLONG (SQL_C_LONG+SQL_SIGNED_OFFSET) 249*24201887SPedro Giffuni #define SQL_C_SSHORT (SQL_C_SHORT+SQL_SIGNED_OFFSET) 250*24201887SPedro Giffuni #define SQL_C_STINYINT (SQL_TINYINT+SQL_SIGNED_OFFSET) 251*24201887SPedro Giffuni #define SQL_C_ULONG (SQL_C_LONG+SQL_UNSIGNED_OFFSET) 252*24201887SPedro Giffuni #define SQL_C_USHORT (SQL_C_SHORT+SQL_UNSIGNED_OFFSET) 253*24201887SPedro Giffuni #define SQL_C_UTINYINT (SQL_TINYINT+SQL_UNSIGNED_OFFSET) 254*24201887SPedro Giffuni 255*24201887SPedro Giffuni #if defined(_WIN64) 256*24201887SPedro Giffuni #define SQL_C_BOOKMARK SQL_C_UBIGINT 257*24201887SPedro Giffuni #else 258*24201887SPedro Giffuni #define SQL_C_BOOKMARK SQL_C_ULONG 259*24201887SPedro Giffuni #endif 260*24201887SPedro Giffuni 261*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 262*24201887SPedro Giffuni #define SQL_C_TYPE_DATE SQL_TYPE_DATE 263*24201887SPedro Giffuni #define SQL_C_TYPE_TIME SQL_TYPE_TIME 264cdf0e10cSrcweir #define SQL_C_TYPE_TIMESTAMP SQL_TYPE_TIMESTAMP 265*24201887SPedro Giffuni #define SQL_C_INTERVAL_YEAR SQL_INTERVAL_YEAR 266cdf0e10cSrcweir #define SQL_C_INTERVAL_MONTH SQL_INTERVAL_MONTH 267*24201887SPedro Giffuni #define SQL_C_INTERVAL_DAY SQL_INTERVAL_DAY 268*24201887SPedro 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 271*24201887SPedro 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 273*24201887SPedro Giffuni #define SQL_C_INTERVAL_DAY_TO_MINUTE SQL_INTERVAL_DAY_TO_MINUTE 274*24201887SPedro Giffuni #define SQL_C_INTERVAL_DAY_TO_SECOND SQL_INTERVAL_DAY_TO_SECOND 275*24201887SPedro Giffuni #define SQL_C_INTERVAL_HOUR_TO_MINUTE SQL_INTERVAL_HOUR_TO_MINUTE 276*24201887SPedro Giffuni #define SQL_C_INTERVAL_HOUR_TO_SECOND SQL_INTERVAL_HOUR_TO_SECOND 277*24201887SPedro Giffuni #define SQL_C_INTERVAL_MINUTE_TO_SECOND SQL_INTERVAL_MINUTE_TO_SECOND 278*24201887SPedro Giffuni #define SQL_C_SBIGINT (SQL_BIGINT+SQL_SIGNED_OFFSET) 279*24201887SPedro Giffuni #define SQL_C_UBIGINT (SQL_BIGINT+SQL_UNSIGNED_OFFSET) 280*24201887SPedro Giffuni #define SQL_C_VARBOOKMARK SQL_C_BINARY 281*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 282cdf0e10cSrcweir 283cdf0e10cSrcweir #if (ODBCVER >= 0x0350) 284*24201887SPedro Giffuni #define SQL_C_GUID SQL_GUID 285*24201887SPedro Giffuni #endif 286*24201887SPedro Giffuni 287*24201887SPedro Giffuni #define SQL_TYPE_NULL 0 288cdf0e10cSrcweir 289cdf0e10cSrcweir #if (ODBCVER < 0x0300) 290*24201887SPedro Giffuni #define SQL_TYPE_MIN SQL_BIT 291*24201887SPedro Giffuni #define SQL_TYPE_MAX SQL_VARCHAR 292*24201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 293cdf0e10cSrcweir 294cdf0e10cSrcweir 295*24201887SPedro Giffuni /* 296*24201887SPedro Giffuni * ---------------------------------------------------------------------- 297*24201887SPedro Giffuni * Level 1 Functions 298*24201887SPedro Giffuni * ---------------------------------------------------------------------- 299*24201887SPedro Giffuni */ 300cdf0e10cSrcweir 301*24201887SPedro Giffuni /* 302*24201887SPedro Giffuni * SQLBindParameter 303*24201887SPedro Giffuni */ 304*24201887SPedro Giffuni #define SQL_DEFAULT_PARAM (-5) 305*24201887SPedro Giffuni #define SQL_IGNORE (-6) 306cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 307cdf0e10cSrcweir #define SQL_COLUMN_IGNORE SQL_IGNORE 308*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 309*24201887SPedro Giffuni #define SQL_LEN_DATA_AT_EXEC_OFFSET (-100) 310*24201887SPedro Giffuni #define SQL_LEN_DATA_AT_EXEC(length) (-(length)+SQL_LEN_DATA_AT_EXEC_OFFSET) 311cdf0e10cSrcweir 312*24201887SPedro Giffuni 313*24201887SPedro Giffuni /* 314*24201887SPedro Giffuni * binary length for driver specific attributes 315*24201887SPedro Giffuni */ 316*24201887SPedro Giffuni #define SQL_LEN_BINARY_ATTR_OFFSET (-100) 317cdf0e10cSrcweir #define SQL_LEN_BINARY_ATTR(length) (-(length)+SQL_LEN_BINARY_ATTR_OFFSET) 318cdf0e10cSrcweir 319*24201887SPedro Giffuni 320*24201887SPedro Giffuni /* 321*24201887SPedro Giffuni * SQLColAttributes - ODBC 2.x defines 322*24201887SPedro Giffuni */ 323*24201887SPedro Giffuni #define SQL_COLUMN_COUNT 0 324*24201887SPedro Giffuni #define SQL_COLUMN_NAME 1 325*24201887SPedro Giffuni #define SQL_COLUMN_TYPE 2 326*24201887SPedro Giffuni #define SQL_COLUMN_LENGTH 3 327*24201887SPedro Giffuni #define SQL_COLUMN_PRECISION 4 328*24201887SPedro Giffuni #define SQL_COLUMN_SCALE 5 329*24201887SPedro Giffuni #define SQL_COLUMN_DISPLAY_SIZE 6 330*24201887SPedro Giffuni #define SQL_COLUMN_NULLABLE 7 331*24201887SPedro Giffuni #define SQL_COLUMN_UNSIGNED 8 332*24201887SPedro Giffuni #define SQL_COLUMN_MONEY 9 333*24201887SPedro Giffuni #define SQL_COLUMN_UPDATABLE 10 334*24201887SPedro Giffuni #define SQL_COLUMN_AUTO_INCREMENT 11 335*24201887SPedro Giffuni #define SQL_COLUMN_CASE_SENSITIVE 12 336*24201887SPedro Giffuni #define SQL_COLUMN_SEARCHABLE 13 337*24201887SPedro Giffuni #define SQL_COLUMN_TYPE_NAME 14 338*24201887SPedro Giffuni #define SQL_COLUMN_TABLE_NAME 15 339*24201887SPedro Giffuni #define SQL_COLUMN_OWNER_NAME 16 340*24201887SPedro Giffuni #define SQL_COLUMN_QUALIFIER_NAME 17 341*24201887SPedro Giffuni #define SQL_COLUMN_LABEL 18 342*24201887SPedro Giffuni #define SQL_COLATT_OPT_MAX SQL_COLUMN_LABEL 343cdf0e10cSrcweir #if (ODBCVER < 0x0300) 344*24201887SPedro Giffuni #define SQL_COLUMN_DRIVER_START 1000 345*24201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 346cdf0e10cSrcweir 347*24201887SPedro Giffuni #define SQL_COLATT_OPT_MIN SQL_COLUMN_COUNT 348cdf0e10cSrcweir 349cdf0e10cSrcweir 350*24201887SPedro Giffuni /* 351*24201887SPedro Giffuni * SQLColAttributes - SQL_COLUMN_UPDATABLE 352*24201887SPedro Giffuni */ 353*24201887SPedro Giffuni #define SQL_ATTR_READONLY 0 354*24201887SPedro Giffuni #define SQL_ATTR_WRITE 1 355*24201887SPedro Giffuni #define SQL_ATTR_READWRITE_UNKNOWN 2 356cdf0e10cSrcweir 357cdf0e10cSrcweir 358*24201887SPedro Giffuni /* 359*24201887SPedro Giffuni * SQLColAttributes - SQL_COLUMN_SEARCHABLE 360*24201887SPedro Giffuni */ 361*24201887SPedro Giffuni #define SQL_UNSEARCHABLE 0 362*24201887SPedro Giffuni #define SQL_LIKE_ONLY 1 363*24201887SPedro Giffuni #define SQL_ALL_EXCEPT_LIKE 2 364*24201887SPedro Giffuni #define SQL_SEARCHABLE 3 365*24201887SPedro Giffuni #define SQL_PRED_SEARCHABLE SQL_SEARCHABLE 366cdf0e10cSrcweir 367cdf0e10cSrcweir 368*24201887SPedro Giffuni /* 369*24201887SPedro Giffuni * SQLDataSources - additional fetch directions 370*24201887SPedro Giffuni */ 371cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 372*24201887SPedro Giffuni #define SQL_FETCH_FIRST_USER 31 373*24201887SPedro Giffuni #define SQL_FETCH_FIRST_SYSTEM 32 374*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 375cdf0e10cSrcweir 376cdf0e10cSrcweir 377*24201887SPedro Giffuni /* 378*24201887SPedro Giffuni * SQLDriverConnect 379*24201887SPedro Giffuni */ 380*24201887SPedro Giffuni #define SQL_DRIVER_NOPROMPT 0 381*24201887SPedro Giffuni #define SQL_DRIVER_COMPLETE 1 382*24201887SPedro Giffuni #define SQL_DRIVER_PROMPT 2 383*24201887SPedro Giffuni #define SQL_DRIVER_COMPLETE_REQUIRED 3 384cdf0e10cSrcweir 385cdf0e10cSrcweir 386*24201887SPedro Giffuni /* 387*24201887SPedro Giffuni * SQLGetConnectAttr - ODBC 2.x attributes 388*24201887SPedro Giffuni */ 389*24201887SPedro Giffuni #define SQL_ACCESS_MODE 101 390*24201887SPedro Giffuni #define SQL_AUTOCOMMIT 102 391*24201887SPedro Giffuni #define SQL_LOGIN_TIMEOUT 103 392*24201887SPedro Giffuni #define SQL_OPT_TRACE 104 393*24201887SPedro Giffuni #define SQL_OPT_TRACEFILE 105 394*24201887SPedro Giffuni #define SQL_TRANSLATE_DLL 106 395*24201887SPedro Giffuni #define SQL_TRANSLATE_OPTION 107 396*24201887SPedro Giffuni #define SQL_TXN_ISOLATION 108 397*24201887SPedro Giffuni #define SQL_CURRENT_QUALIFIER 109 398*24201887SPedro Giffuni #define SQL_ODBC_CURSORS 110 399*24201887SPedro Giffuni #define SQL_QUIET_MODE 111 400*24201887SPedro Giffuni #define SQL_PACKET_SIZE 112 401cdf0e10cSrcweir 402cdf0e10cSrcweir 403*24201887SPedro Giffuni /* 404*24201887SPedro Giffuni * SQLGetConnectAttr - ODBC 3.0 attributes 405cdf0e10cSrcweir */ 406cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 407*24201887SPedro Giffuni #define SQL_ATTR_ACCESS_MODE SQL_ACCESS_MODE 408*24201887SPedro Giffuni #define SQL_ATTR_AUTOCOMMIT SQL_AUTOCOMMIT 409*24201887SPedro Giffuni #define SQL_ATTR_CONNECTION_TIMEOUT 113 410*24201887SPedro Giffuni #define SQL_ATTR_CURRENT_CATALOG SQL_CURRENT_QUALIFIER 411*24201887SPedro Giffuni #define SQL_ATTR_DISCONNECT_BEHAVIOR 114 412*24201887SPedro Giffuni #define SQL_ATTR_ENLIST_IN_DTC 1207 413*24201887SPedro Giffuni #define SQL_ATTR_ENLIST_IN_XA 1208 414*24201887SPedro Giffuni #define SQL_ATTR_LOGIN_TIMEOUT SQL_LOGIN_TIMEOUT 415*24201887SPedro Giffuni #define SQL_ATTR_ODBC_CURSORS SQL_ODBC_CURSORS 416*24201887SPedro Giffuni #define SQL_ATTR_PACKET_SIZE SQL_PACKET_SIZE 417*24201887SPedro Giffuni #define SQL_ATTR_QUIET_MODE SQL_QUIET_MODE 418*24201887SPedro Giffuni #define SQL_ATTR_TRACE SQL_OPT_TRACE 419*24201887SPedro Giffuni #define SQL_ATTR_TRACEFILE SQL_OPT_TRACEFILE 420*24201887SPedro Giffuni #define SQL_ATTR_TRANSLATE_LIB SQL_TRANSLATE_DLL 421*24201887SPedro Giffuni #define SQL_ATTR_TRANSLATE_OPTION SQL_TRANSLATE_OPTION 422*24201887SPedro Giffuni #define SQL_ATTR_TXN_ISOLATION SQL_TXN_ISOLATION 423*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 424cdf0e10cSrcweir 425*24201887SPedro Giffuni #define SQL_ATTR_CONNECTION_DEAD 1209 /* GetConnectAttr only */ 426cdf0e10cSrcweir 427cdf0e10cSrcweir 428*24201887SPedro Giffuni /* 429*24201887SPedro Giffuni * These options have no meaning for a 3.0 driver 430*24201887SPedro Giffuni */ 431*24201887SPedro Giffuni #if (ODBCVER < 0x0300) 432*24201887SPedro Giffuni #define SQL_CONN_OPT_MIN SQL_ACCESS_MODE 433*24201887SPedro Giffuni #define SQL_CONN_OPT_MAX SQL_PACKET_SIZE 434*24201887SPedro Giffuni #define SQL_CONNECT_OPT_DRVR_START 1000 435*24201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 436cdf0e10cSrcweir 437cdf0e10cSrcweir 438*24201887SPedro Giffuni /* 439*24201887SPedro Giffuni * SQLGetConnectAttr - SQL_ACCESS_MODE 440*24201887SPedro Giffuni */ 441*24201887SPedro Giffuni #define SQL_MODE_READ_WRITE 0UL 442*24201887SPedro Giffuni #define SQL_MODE_READ_ONLY 1UL 443*24201887SPedro Giffuni #define SQL_MODE_DEFAULT SQL_MODE_READ_WRITE 444cdf0e10cSrcweir 445cdf0e10cSrcweir 446*24201887SPedro Giffuni /* 447*24201887SPedro Giffuni * SQLGetConnectAttr - SQL_AUTOCOMMIT 448*24201887SPedro Giffuni */ 449*24201887SPedro Giffuni #define SQL_AUTOCOMMIT_OFF 0UL 450*24201887SPedro Giffuni #define SQL_AUTOCOMMIT_ON 1UL 451*24201887SPedro Giffuni #define SQL_AUTOCOMMIT_DEFAULT SQL_AUTOCOMMIT_ON 452cdf0e10cSrcweir 453cdf0e10cSrcweir 454*24201887SPedro Giffuni /* 455*24201887SPedro Giffuni * SQLGetConnectAttr - SQL_LOGIN_TIMEOUT 456*24201887SPedro Giffuni */ 457*24201887SPedro Giffuni #define SQL_LOGIN_TIMEOUT_DEFAULT 15UL 458cdf0e10cSrcweir 459cdf0e10cSrcweir 460*24201887SPedro Giffuni /* 461*24201887SPedro Giffuni * SQLGetConnectAttr - SQL_ODBC_CURSORS 462*24201887SPedro Giffuni */ 463*24201887SPedro Giffuni #define SQL_CUR_USE_IF_NEEDED 0UL 464*24201887SPedro Giffuni #define SQL_CUR_USE_ODBC 1UL 465*24201887SPedro Giffuni #define SQL_CUR_USE_DRIVER 2UL 466*24201887SPedro Giffuni #define SQL_CUR_DEFAULT SQL_CUR_USE_DRIVER 467cdf0e10cSrcweir 468cdf0e10cSrcweir 469*24201887SPedro Giffuni /* 470*24201887SPedro Giffuni * SQLGetConnectAttr - SQL_OPT_TRACE 471*24201887SPedro Giffuni */ 472*24201887SPedro Giffuni #define SQL_OPT_TRACE_OFF 0UL 473*24201887SPedro Giffuni #define SQL_OPT_TRACE_ON 1UL 474*24201887SPedro Giffuni #define SQL_OPT_TRACE_DEFAULT SQL_OPT_TRACE_OFF 475*24201887SPedro Giffuni #if defined (WIN32) 476*24201887SPedro Giffuni #define SQL_OPT_TRACE_FILE_DEFAULT "\\SQL.LOG" 477*24201887SPedro Giffuni #define SQL_OPT_TRACE_FILE_DEFAULTW L"\\SQL.LOG" 478*24201887SPedro Giffuni #else 479*24201887SPedro Giffuni #define SQL_OPT_TRACE_FILE_DEFAULT "/tmp/odbc.log" 480*24201887SPedro Giffuni #define SQL_OPT_TRACE_FILE_DEFAULTW L"/tmp/odbc.log" 481*24201887SPedro Giffuni #endif 482cdf0e10cSrcweir 483cdf0e10cSrcweir 484*24201887SPedro Giffuni /* 485*24201887SPedro Giffuni * SQLGetConnectAttr - SQL_ATTR_ANSI_APP 486*24201887SPedro Giffuni */ 487*24201887SPedro Giffuni #if (ODBCVER >= 0x0351) 488*24201887SPedro Giffuni #define SQL_AA_TRUE 1L /* ANSI app */ 489*24201887SPedro Giffuni #define SQL_AA_FALSE 0L /* Unicode app */ 490*24201887SPedro Giffuni #endif 491cdf0e10cSrcweir 492cdf0e10cSrcweir 493*24201887SPedro Giffuni /* 494*24201887SPedro Giffuni * SQLGetConnectAttr - SQL_ATTR_CONNECTION_DEAD 495*24201887SPedro Giffuni */ 496*24201887SPedro Giffuni #define SQL_CD_TRUE 1L /* closed/dead */ 497*24201887SPedro Giffuni #define SQL_CD_FALSE 0L /* open/available */ 498cdf0e10cSrcweir 499cdf0e10cSrcweir 500*24201887SPedro Giffuni /* 501*24201887SPedro Giffuni * SQLGetConnectAttr - SQL_ATTR_DISCONNECT_BEHAVIOR 502*24201887SPedro Giffuni */ 503*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 504*24201887SPedro Giffuni #define SQL_DB_RETURN_TO_POOL 0UL 505*24201887SPedro Giffuni #define SQL_DB_DISCONNECT 1UL 506*24201887SPedro Giffuni #define SQL_DB_DEFAULT SQL_DB_RETURN_TO_POOL 507*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 508cdf0e10cSrcweir 509cdf0e10cSrcweir 510*24201887SPedro Giffuni /* 511*24201887SPedro Giffuni * SQLGetConnectAttr - SQL_ATTR_ENLIST_IN_DTC 512*24201887SPedro Giffuni */ 513*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 514*24201887SPedro Giffuni #define SQL_DTC_DONE 0L 515*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 516cdf0e10cSrcweir 517cdf0e10cSrcweir 518*24201887SPedro Giffuni /* 519*24201887SPedro Giffuni * SQLGetConnectAttr - Unicode drivers 520*24201887SPedro Giffuni */ 521*24201887SPedro Giffuni #if (ODBCVER >= 0x0351) 522*24201887SPedro Giffuni #define SQL_ATTR_ANSI_APP 115 523*24201887SPedro Giffuni #endif 524cdf0e10cSrcweir 525cdf0e10cSrcweir 526*24201887SPedro Giffuni /* 527*24201887SPedro Giffuni * SQLGetData 528*24201887SPedro Giffuni */ 529*24201887SPedro Giffuni #define SQL_NO_TOTAL (-4) 530cdf0e10cSrcweir 531cdf0e10cSrcweir 532*24201887SPedro Giffuni /* 533*24201887SPedro Giffuni * SQLGetDescField - extended descriptor field 534*24201887SPedro Giffuni */ 535*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 536*24201887SPedro Giffuni #define SQL_DESC_ARRAY_SIZE 20 537*24201887SPedro Giffuni #define SQL_DESC_ARRAY_STATUS_PTR 21 538*24201887SPedro Giffuni #define SQL_DESC_AUTO_UNIQUE_VALUE SQL_COLUMN_AUTO_INCREMENT 539*24201887SPedro Giffuni #define SQL_DESC_BASE_COLUMN_NAME 22 540*24201887SPedro Giffuni #define SQL_DESC_BASE_TABLE_NAME 23 541*24201887SPedro Giffuni #define SQL_DESC_BIND_OFFSET_PTR 24 542*24201887SPedro Giffuni #define SQL_DESC_BIND_TYPE 25 543*24201887SPedro Giffuni #define SQL_DESC_CASE_SENSITIVE SQL_COLUMN_CASE_SENSITIVE 544*24201887SPedro Giffuni #define SQL_DESC_CATALOG_NAME SQL_COLUMN_QUALIFIER_NAME 545*24201887SPedro Giffuni #define SQL_DESC_CONCISE_TYPE SQL_COLUMN_TYPE 546*24201887SPedro Giffuni #define SQL_DESC_DATETIME_INTERVAL_PRECISION 26 547*24201887SPedro Giffuni #define SQL_DESC_DISPLAY_SIZE SQL_COLUMN_DISPLAY_SIZE 548*24201887SPedro Giffuni #define SQL_DESC_FIXED_PREC_SCALE SQL_COLUMN_MONEY 549*24201887SPedro Giffuni #define SQL_DESC_LABEL SQL_COLUMN_LABEL 550*24201887SPedro Giffuni #define SQL_DESC_LITERAL_PREFIX 27 551*24201887SPedro Giffuni #define SQL_DESC_LITERAL_SUFFIX 28 552*24201887SPedro Giffuni #define SQL_DESC_LOCAL_TYPE_NAME 29 553*24201887SPedro Giffuni #define SQL_DESC_MAXIMUM_SCALE 30 554*24201887SPedro Giffuni #define SQL_DESC_MINIMUM_SCALE 31 555*24201887SPedro Giffuni #define SQL_DESC_NUM_PREC_RADIX 32 556*24201887SPedro Giffuni #define SQL_DESC_PARAMETER_TYPE 33 557*24201887SPedro Giffuni #define SQL_DESC_ROWS_PROCESSED_PTR 34 558*24201887SPedro Giffuni #if (ODBCVER >= 0x0350) 559*24201887SPedro Giffuni #define SQL_DESC_ROWVER 35 560*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0350 */ 561*24201887SPedro Giffuni #define SQL_DESC_SCHEMA_NAME SQL_COLUMN_OWNER_NAME 562*24201887SPedro Giffuni #define SQL_DESC_SEARCHABLE SQL_COLUMN_SEARCHABLE 563*24201887SPedro Giffuni #define SQL_DESC_TYPE_NAME SQL_COLUMN_TYPE_NAME 564*24201887SPedro Giffuni #define SQL_DESC_TABLE_NAME SQL_COLUMN_TABLE_NAME 565*24201887SPedro Giffuni #define SQL_DESC_UNSIGNED SQL_COLUMN_UNSIGNED 566*24201887SPedro Giffuni #define SQL_DESC_UPDATABLE SQL_COLUMN_UPDATABLE 567*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 568cdf0e10cSrcweir 569cdf0e10cSrcweir 570*24201887SPedro Giffuni /* 571*24201887SPedro Giffuni * SQLGetDiagField - defines for diagnostics fields 572*24201887SPedro Giffuni */ 573*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 574*24201887SPedro Giffuni #define SQL_DIAG_CURSOR_ROW_COUNT (-1249) 575*24201887SPedro Giffuni #define SQL_DIAG_ROW_NUMBER (-1248) 576*24201887SPedro Giffuni #define SQL_DIAG_COLUMN_NUMBER (-1247) 577*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 578cdf0e10cSrcweir 579cdf0e10cSrcweir 580*24201887SPedro Giffuni /* 581*24201887SPedro Giffuni * SQLGetDiagField - SQL_DIAG_ROW_NUMBER and SQL_DIAG_COLUMN_NUMBER 582*24201887SPedro Giffuni */ 583*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 584*24201887SPedro Giffuni #define SQL_NO_ROW_NUMBER (-1) 585*24201887SPedro Giffuni #define SQL_NO_COLUMN_NUMBER (-1) 586*24201887SPedro Giffuni #define SQL_ROW_NUMBER_UNKNOWN (-2) 587*24201887SPedro Giffuni #define SQL_COLUMN_NUMBER_UNKNOWN (-2) 588*24201887SPedro Giffuni #endif 589cdf0e10cSrcweir 590cdf0e10cSrcweir 591cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 592*24201887SPedro Giffuni /* 593*24201887SPedro Giffuni * SQLGetEnvAttr - Attributes 594*24201887SPedro Giffuni */ 595*24201887SPedro Giffuni #define SQL_ATTR_ODBC_VERSION 200 596*24201887SPedro Giffuni #define SQL_ATTR_CONNECTION_POOLING 201 597*24201887SPedro Giffuni #define SQL_ATTR_CP_MATCH 202 598cdf0e10cSrcweir 599cdf0e10cSrcweir 600*24201887SPedro Giffuni /* 601*24201887SPedro Giffuni * SQLGetEnvAttr - SQL_ATTR_ODBC_VERSION 602*24201887SPedro Giffuni */ 603*24201887SPedro Giffuni #define SQL_OV_ODBC2 2UL 604*24201887SPedro Giffuni #define SQL_OV_ODBC3 3UL 605cdf0e10cSrcweir 606cdf0e10cSrcweir 607*24201887SPedro Giffuni /* 608*24201887SPedro Giffuni * SQLGetEnvAttr - SQL_ATTR_CONNECTION_POOLING 609*24201887SPedro Giffuni */ 610*24201887SPedro Giffuni #define SQL_CP_OFF 0UL 611*24201887SPedro Giffuni #define SQL_CP_ONE_PER_DRIVER 1UL 612*24201887SPedro Giffuni #define SQL_CP_ONE_PER_HENV 2UL 613*24201887SPedro Giffuni #define SQL_CP_DEFAULT SQL_CP_OFF 614*24201887SPedro Giffuni 615cdf0e10cSrcweir 616*24201887SPedro Giffuni /* 617*24201887SPedro Giffuni * SQLGetEnvAttr - SQL_ATTR_CP_MATCH 618*24201887SPedro Giffuni */ 619*24201887SPedro Giffuni #define SQL_CP_STRICT_MATCH 0UL 620*24201887SPedro Giffuni #define SQL_CP_RELAXED_MATCH 1UL 621*24201887SPedro Giffuni #define SQL_CP_MATCH_DEFAULT SQL_CP_STRICT_MATCH 622*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 623cdf0e10cSrcweir 624cdf0e10cSrcweir 625*24201887SPedro Giffuni /* 626*24201887SPedro Giffuni * SQLGetFunctions - extensions to the X/Open specification 627*24201887SPedro Giffuni */ 628cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 629*24201887SPedro Giffuni #define SQL_API_SQLALLOCHANDLESTD 73 630*24201887SPedro Giffuni #define SQL_API_SQLBULKOPERATIONS 24 631*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 632*24201887SPedro Giffuni #define SQL_API_SQLBINDPARAMETER 72 633*24201887SPedro Giffuni #define SQL_API_SQLBROWSECONNECT 55 634*24201887SPedro Giffuni #define SQL_API_SQLCOLATTRIBUTES 6 635*24201887SPedro Giffuni #define SQL_API_SQLCOLUMNPRIVILEGES 56 636*24201887SPedro Giffuni #define SQL_API_SQLDESCRIBEPARAM 58 637*24201887SPedro Giffuni #define SQL_API_SQLDRIVERCONNECT 41 638*24201887SPedro Giffuni #define SQL_API_SQLDRIVERS 71 639*24201887SPedro Giffuni #define SQL_API_SQLEXTENDEDFETCH 59 640*24201887SPedro Giffuni #define SQL_API_SQLFOREIGNKEYS 60 641*24201887SPedro Giffuni #define SQL_API_SQLMORERESULTS 61 642*24201887SPedro Giffuni #define SQL_API_SQLNATIVESQL 62 643*24201887SPedro Giffuni #define SQL_API_SQLNUMPARAMS 63 644*24201887SPedro Giffuni #define SQL_API_SQLPARAMOPTIONS 64 645*24201887SPedro Giffuni #define SQL_API_SQLPRIMARYKEYS 65 646*24201887SPedro Giffuni #define SQL_API_SQLPROCEDURECOLUMNS 66 647*24201887SPedro Giffuni #define SQL_API_SQLPROCEDURES 67 648*24201887SPedro Giffuni #define SQL_API_SQLSETPOS 68 649*24201887SPedro Giffuni #define SQL_API_SQLSETSCROLLOPTIONS 69 650*24201887SPedro Giffuni #define SQL_API_SQLTABLEPRIVILEGES 70 651cdf0e10cSrcweir 652cdf0e10cSrcweir 653*24201887SPedro Giffuni /* 654*24201887SPedro Giffuni * These are not useful anymore as the X/Open specification defines 655*24201887SPedro Giffuni * functions in the 10000 range 656*24201887SPedro Giffuni */ 657*24201887SPedro Giffuni #if (ODBCVER < 0x0300) 658*24201887SPedro Giffuni #define SQL_EXT_API_LAST SQL_API_SQLBINDPARAMETER 659*24201887SPedro Giffuni #define SQL_NUM_FUNCTIONS 23 660*24201887SPedro Giffuni #define SQL_EXT_API_START 40 661*24201887SPedro Giffuni #define SQL_NUM_EXTENSIONS (SQL_EXT_API_LAST-SQL_EXT_API_START+1) 662*24201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 663cdf0e10cSrcweir 664cdf0e10cSrcweir 665*24201887SPedro Giffuni /* 666*24201887SPedro Giffuni * SQLGetFunctions - ODBC version 2.x and earlier 667*24201887SPedro Giffuni */ 668*24201887SPedro Giffuni #define SQL_API_ALL_FUNCTIONS 0 669cdf0e10cSrcweir 670cdf0e10cSrcweir 671*24201887SPedro Giffuni /* 672*24201887SPedro Giffuni * Loading by ordinal is not supported for 3.0 and above drivers 673*24201887SPedro Giffuni */ 674*24201887SPedro Giffuni #define SQL_API_LOADBYORDINAL 199 675cdf0e10cSrcweir 676cdf0e10cSrcweir 677*24201887SPedro Giffuni /* 678*24201887SPedro Giffuni * SQLGetFunctions - SQL_API_ODBC3_ALL_FUNCTIONS 679*24201887SPedro Giffuni */ 680*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 681*24201887SPedro Giffuni #define SQL_API_ODBC3_ALL_FUNCTIONS 999 682*24201887SPedro Giffuni #define SQL_API_ODBC3_ALL_FUNCTIONS_SIZE 250 683*24201887SPedro Giffuni 684*24201887SPedro Giffuni #define SQL_FUNC_EXISTS(pfExists, uwAPI) \ 685*24201887SPedro Giffuni ((*(((UWORD*) (pfExists)) + ((uwAPI) >> 4)) & (1 << ((uwAPI) & 0x000F))) \ 686*24201887SPedro Giffuni ? SQL_TRUE : SQL_FALSE) 687*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 688*24201887SPedro Giffuni 689*24201887SPedro Giffuni 690*24201887SPedro Giffuni /* 691*24201887SPedro Giffuni * SQLGetInfo - ODBC 2.x extensions to the X/Open standard 692*24201887SPedro Giffuni */ 693*24201887SPedro Giffuni #define SQL_INFO_FIRST 0 694*24201887SPedro Giffuni #define SQL_ACTIVE_CONNECTIONS 0 /* MAX_DRIVER_CONNECTIONS */ 695*24201887SPedro Giffuni #define SQL_ACTIVE_STATEMENTS 1 /* MAX_CONCURRENT_ACTIVITIES */ 696*24201887SPedro Giffuni #define SQL_DRIVER_HDBC 3 697*24201887SPedro Giffuni #define SQL_DRIVER_HENV 4 698*24201887SPedro Giffuni #define SQL_DRIVER_HSTMT 5 699*24201887SPedro Giffuni #define SQL_DRIVER_NAME 6 700*24201887SPedro Giffuni #define SQL_DRIVER_VER 7 701*24201887SPedro Giffuni #define SQL_ODBC_API_CONFORMANCE 9 702*24201887SPedro Giffuni #define SQL_ODBC_VER 10 703*24201887SPedro Giffuni #define SQL_ROW_UPDATES 11 704*24201887SPedro Giffuni #define SQL_ODBC_SAG_CLI_CONFORMANCE 12 705*24201887SPedro Giffuni #define SQL_ODBC_SQL_CONFORMANCE 15 706*24201887SPedro Giffuni #define SQL_PROCEDURES 21 707*24201887SPedro Giffuni #define SQL_CONCAT_NULL_BEHAVIOR 22 708*24201887SPedro Giffuni #define SQL_CURSOR_ROLLBACK_BEHAVIOR 24 709*24201887SPedro Giffuni #define SQL_EXPRESSIONS_IN_ORDERBY 27 710*24201887SPedro Giffuni #define SQL_MAX_OWNER_NAME_LEN 32 /* MAX_SCHEMA_NAME_LEN */ 711*24201887SPedro Giffuni #define SQL_MAX_PROCEDURE_NAME_LEN 33 712*24201887SPedro Giffuni #define SQL_MAX_QUALIFIER_NAME_LEN 34 /* MAX_CATALOG_NAME_LEN */ 713*24201887SPedro Giffuni #define SQL_MULT_RESULT_SETS 36 714*24201887SPedro Giffuni #define SQL_MULTIPLE_ACTIVE_TXN 37 715*24201887SPedro Giffuni #define SQL_OUTER_JOINS 38 716*24201887SPedro Giffuni #define SQL_OWNER_TERM 39 717*24201887SPedro Giffuni #define SQL_PROCEDURE_TERM 40 718*24201887SPedro Giffuni #define SQL_QUALIFIER_NAME_SEPARATOR 41 719*24201887SPedro Giffuni #define SQL_QUALIFIER_TERM 42 720*24201887SPedro Giffuni #define SQL_SCROLL_OPTIONS 44 721*24201887SPedro Giffuni #define SQL_TABLE_TERM 45 722*24201887SPedro Giffuni #define SQL_CONVERT_FUNCTIONS 48 723*24201887SPedro Giffuni #define SQL_NUMERIC_FUNCTIONS 49 724*24201887SPedro Giffuni #define SQL_STRING_FUNCTIONS 50 725*24201887SPedro Giffuni #define SQL_SYSTEM_FUNCTIONS 51 726*24201887SPedro Giffuni #define SQL_TIMEDATE_FUNCTIONS 52 727*24201887SPedro Giffuni #define SQL_CONVERT_BIGINT 53 728*24201887SPedro Giffuni #define SQL_CONVERT_BINARY 54 729*24201887SPedro Giffuni #define SQL_CONVERT_BIT 55 730*24201887SPedro Giffuni #define SQL_CONVERT_CHAR 56 731*24201887SPedro Giffuni #define SQL_CONVERT_DATE 57 732*24201887SPedro Giffuni #define SQL_CONVERT_DECIMAL 58 733*24201887SPedro Giffuni #define SQL_CONVERT_DOUBLE 59 734*24201887SPedro Giffuni #define SQL_CONVERT_FLOAT 60 735*24201887SPedro Giffuni #define SQL_CONVERT_INTEGER 61 736*24201887SPedro Giffuni #define SQL_CONVERT_LONGVARCHAR 62 737*24201887SPedro Giffuni #define SQL_CONVERT_NUMERIC 63 738*24201887SPedro Giffuni #define SQL_CONVERT_REAL 64 739*24201887SPedro Giffuni #define SQL_CONVERT_SMALLINT 65 740*24201887SPedro Giffuni #define SQL_CONVERT_TIME 66 741*24201887SPedro Giffuni #define SQL_CONVERT_TIMESTAMP 67 742*24201887SPedro Giffuni #define SQL_CONVERT_TINYINT 68 743*24201887SPedro Giffuni #define SQL_CONVERT_VARBINARY 69 744*24201887SPedro Giffuni #define SQL_CONVERT_VARCHAR 70 745*24201887SPedro Giffuni #define SQL_CONVERT_LONGVARBINARY 71 746*24201887SPedro Giffuni #define SQL_ODBC_SQL_OPT_IEF 73 /* SQL_INTEGRITY */ 747*24201887SPedro Giffuni #define SQL_CORRELATION_NAME 74 748*24201887SPedro Giffuni #define SQL_NON_NULLABLE_COLUMNS 75 749*24201887SPedro Giffuni #define SQL_DRIVER_HLIB 76 750*24201887SPedro Giffuni #define SQL_DRIVER_ODBC_VER 77 751*24201887SPedro Giffuni #define SQL_LOCK_TYPES 78 752*24201887SPedro Giffuni #define SQL_POS_OPERATIONS 79 753*24201887SPedro Giffuni #define SQL_POSITIONED_STATEMENTS 80 754*24201887SPedro Giffuni #define SQL_BOOKMARK_PERSISTENCE 82 755*24201887SPedro Giffuni #define SQL_STATIC_SENSITIVITY 83 756*24201887SPedro Giffuni #define SQL_FILE_USAGE 84 757*24201887SPedro Giffuni #define SQL_COLUMN_ALIAS 87 758*24201887SPedro Giffuni #define SQL_GROUP_BY 88 759*24201887SPedro Giffuni #define SQL_KEYWORDS 89 760*24201887SPedro Giffuni #define SQL_OWNER_USAGE 91 761*24201887SPedro Giffuni #define SQL_QUALIFIER_USAGE 92 762*24201887SPedro Giffuni #define SQL_QUOTED_IDENTIFIER_CASE 93 763*24201887SPedro Giffuni #define SQL_SUBQUERIES 95 764*24201887SPedro Giffuni #define SQL_UNION 96 765*24201887SPedro Giffuni #define SQL_MAX_ROW_SIZE_INCLUDES_LONG 103 766*24201887SPedro Giffuni #define SQL_MAX_CHAR_LITERAL_LEN 108 767*24201887SPedro Giffuni #define SQL_TIMEDATE_ADD_INTERVALS 109 768*24201887SPedro Giffuni #define SQL_TIMEDATE_DIFF_INTERVALS 110 769*24201887SPedro Giffuni #define SQL_NEED_LONG_DATA_LEN 111 770*24201887SPedro Giffuni #define SQL_MAX_BINARY_LITERAL_LEN 112 771*24201887SPedro Giffuni #define SQL_LIKE_ESCAPE_CLAUSE 113 772*24201887SPedro Giffuni #define SQL_QUALIFIER_LOCATION 114 773*24201887SPedro Giffuni 774*24201887SPedro Giffuni #if (ODBCVER >= 0x0201 && ODBCVER < 0x0300) 775*24201887SPedro Giffuni #define SQL_OJ_CAPABILITIES 65003 /* Temp value until ODBC 3.0 */ 776*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0201 && ODBCVER < 0x0300 */ 777*24201887SPedro Giffuni 778*24201887SPedro Giffuni 779*24201887SPedro Giffuni /* 780*24201887SPedro Giffuni * These values are not useful anymore as X/Open defines values in the 781*24201887SPedro Giffuni * 10000 range 782*24201887SPedro Giffuni */ 783*24201887SPedro Giffuni #if (ODBCVER < 0x0300) 784*24201887SPedro Giffuni #define SQL_INFO_LAST SQL_QUALIFIER_LOCATION 785*24201887SPedro Giffuni #define SQL_INFO_DRIVER_START 1000 786*24201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 787*24201887SPedro Giffuni 788*24201887SPedro Giffuni 789*24201887SPedro Giffuni /* 790*24201887SPedro Giffuni * SQLGetInfo - ODBC 3.x extensions to the X/Open standard 791*24201887SPedro Giffuni */ 792*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 793*24201887SPedro Giffuni #define SQL_ACTIVE_ENVIRONMENTS 116 794*24201887SPedro Giffuni #define SQL_ALTER_DOMAIN 117 795*24201887SPedro Giffuni 796*24201887SPedro Giffuni #define SQL_SQL_CONFORMANCE 118 797*24201887SPedro Giffuni #define SQL_DATETIME_LITERALS 119 798*24201887SPedro Giffuni 799*24201887SPedro Giffuni #define SQL_ASYNC_MODE 10021 /* new X/Open spec */ 800*24201887SPedro Giffuni #define SQL_BATCH_ROW_COUNT 120 801*24201887SPedro Giffuni #define SQL_BATCH_SUPPORT 121 802*24201887SPedro Giffuni #define SQL_CATALOG_LOCATION SQL_QUALIFIER_LOCATION 803*24201887SPedro Giffuni #define SQL_CATALOG_NAME_SEPARATOR SQL_QUALIFIER_NAME_SEPARATOR 804*24201887SPedro Giffuni #define SQL_CATALOG_TERM SQL_QUALIFIER_TERM 805*24201887SPedro Giffuni #define SQL_CATALOG_USAGE SQL_QUALIFIER_USAGE 806*24201887SPedro Giffuni #define SQL_CONVERT_WCHAR 122 807*24201887SPedro Giffuni #define SQL_CONVERT_INTERVAL_DAY_TIME 123 808*24201887SPedro Giffuni #define SQL_CONVERT_INTERVAL_YEAR_MONTH 124 809*24201887SPedro Giffuni #define SQL_CONVERT_WLONGVARCHAR 125 810*24201887SPedro Giffuni #define SQL_CONVERT_WVARCHAR 126 811*24201887SPedro Giffuni #define SQL_CREATE_ASSERTION 127 812*24201887SPedro Giffuni #define SQL_CREATE_CHARACTER_SET 128 813*24201887SPedro Giffuni #define SQL_CREATE_COLLATION 129 814*24201887SPedro Giffuni #define SQL_CREATE_DOMAIN 130 815*24201887SPedro Giffuni #define SQL_CREATE_SCHEMA 131 816*24201887SPedro Giffuni #define SQL_CREATE_TABLE 132 817*24201887SPedro Giffuni #define SQL_CREATE_TRANSLATION 133 818*24201887SPedro Giffuni #define SQL_CREATE_VIEW 134 819*24201887SPedro Giffuni #define SQL_DRIVER_HDESC 135 820*24201887SPedro Giffuni #define SQL_DROP_ASSERTION 136 821*24201887SPedro Giffuni #define SQL_DROP_CHARACTER_SET 137 822*24201887SPedro Giffuni #define SQL_DROP_COLLATION 138 823*24201887SPedro Giffuni #define SQL_DROP_DOMAIN 139 824*24201887SPedro Giffuni #define SQL_DROP_SCHEMA 140 825*24201887SPedro Giffuni #define SQL_DROP_TABLE 141 826*24201887SPedro Giffuni #define SQL_DROP_TRANSLATION 142 827*24201887SPedro Giffuni #define SQL_DROP_VIEW 143 828*24201887SPedro Giffuni #define SQL_DYNAMIC_CURSOR_ATTRIBUTES1 144 829*24201887SPedro Giffuni #define SQL_DYNAMIC_CURSOR_ATTRIBUTES2 145 830*24201887SPedro Giffuni #define SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 146 831*24201887SPedro Giffuni #define SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 147 832*24201887SPedro Giffuni #define SQL_INDEX_KEYWORDS 148 833*24201887SPedro Giffuni #define SQL_INFO_SCHEMA_VIEWS 149 834*24201887SPedro Giffuni #define SQL_KEYSET_CURSOR_ATTRIBUTES1 150 835*24201887SPedro Giffuni #define SQL_KEYSET_CURSOR_ATTRIBUTES2 151 836*24201887SPedro Giffuni #define SQL_MAX_ASYNC_CONCURRENT_STATEMENTS 10022 /* new X/Open spec */ 837*24201887SPedro Giffuni #define SQL_ODBC_INTERFACE_CONFORMANCE 152 838*24201887SPedro Giffuni #define SQL_PARAM_ARRAY_ROW_COUNTS 153 839*24201887SPedro Giffuni #define SQL_PARAM_ARRAY_SELECTS 154 840*24201887SPedro Giffuni #define SQL_SCHEMA_TERM SQL_OWNER_TERM 841*24201887SPedro Giffuni #define SQL_SCHEMA_USAGE SQL_OWNER_USAGE 842*24201887SPedro Giffuni #define SQL_SQL92_DATETIME_FUNCTIONS 155 843*24201887SPedro Giffuni #define SQL_SQL92_FOREIGN_KEY_DELETE_RULE 156 844*24201887SPedro Giffuni #define SQL_SQL92_FOREIGN_KEY_UPDATE_RULE 157 845*24201887SPedro Giffuni #define SQL_SQL92_GRANT 158 846*24201887SPedro Giffuni #define SQL_SQL92_NUMERIC_VALUE_FUNCTIONS 159 847*24201887SPedro Giffuni #define SQL_SQL92_PREDICATES 160 848*24201887SPedro Giffuni #define SQL_SQL92_RELATIONAL_JOIN_OPERATORS 161 849*24201887SPedro Giffuni #define SQL_SQL92_REVOKE 162 850*24201887SPedro Giffuni #define SQL_SQL92_ROW_VALUE_CONSTRUCTOR 163 851*24201887SPedro Giffuni #define SQL_SQL92_STRING_FUNCTIONS 164 852*24201887SPedro Giffuni #define SQL_SQL92_VALUE_EXPRESSIONS 165 853*24201887SPedro Giffuni #define SQL_STANDARD_CLI_CONFORMANCE 166 854*24201887SPedro Giffuni #define SQL_STATIC_CURSOR_ATTRIBUTES1 167 855*24201887SPedro Giffuni #define SQL_STATIC_CURSOR_ATTRIBUTES2 168 856*24201887SPedro Giffuni 857*24201887SPedro Giffuni #define SQL_AGGREGATE_FUNCTIONS 169 858*24201887SPedro Giffuni #define SQL_DDL_INDEX 170 859*24201887SPedro Giffuni #define SQL_DM_VER 171 860*24201887SPedro Giffuni #define SQL_INSERT_STATEMENT 172 861*24201887SPedro Giffuni #define SQL_UNION_STATEMENT SQL_UNION 862*24201887SPedro Giffuni 863*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 864*24201887SPedro Giffuni 865*24201887SPedro Giffuni #define SQL_DTC_TRANSITION_COST 1750 866*24201887SPedro Giffuni 867*24201887SPedro Giffuni 868*24201887SPedro Giffuni /* 869*24201887SPedro Giffuni * SQLGetInfo - SQL_AGGREGATE_FUNCTIONS 870*24201887SPedro Giffuni */ 871*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 872*24201887SPedro Giffuni #define SQL_AF_AVG 0x00000001L 873*24201887SPedro Giffuni #define SQL_AF_COUNT 0x00000002L 874*24201887SPedro Giffuni #define SQL_AF_MAX 0x00000004L 875*24201887SPedro Giffuni #define SQL_AF_MIN 0x00000008L 876*24201887SPedro Giffuni #define SQL_AF_SUM 0x00000010L 877*24201887SPedro Giffuni #define SQL_AF_DISTINCT 0x00000020L 878*24201887SPedro Giffuni #define SQL_AF_ALL 0x00000040L 879*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 880*24201887SPedro Giffuni 881*24201887SPedro Giffuni /* 882*24201887SPedro Giffuni * SQLGetInfo - SQL_ALTER_DOMAIN 883*24201887SPedro Giffuni */ 884*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 885*24201887SPedro Giffuni #define SQL_AD_CONSTRAINT_NAME_DEFINITION 0x00000001L 886*24201887SPedro Giffuni #define SQL_AD_ADD_DOMAIN_CONSTRAINT 0x00000002L 887*24201887SPedro Giffuni #define SQL_AD_DROP_DOMAIN_CONSTRAINT 0x00000004L 888*24201887SPedro Giffuni #define SQL_AD_ADD_DOMAIN_DEFAULT 0x00000008L 889*24201887SPedro Giffuni #define SQL_AD_DROP_DOMAIN_DEFAULT 0x00000010L 890*24201887SPedro Giffuni #define SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED 0x00000020L 891*24201887SPedro Giffuni #define SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE 0x00000040L 892*24201887SPedro Giffuni #define SQL_AD_ADD_CONSTRAINT_DEFERRABLE 0x00000080L 893*24201887SPedro Giffuni #define SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE 0x00000100L 894*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 895*24201887SPedro Giffuni 896*24201887SPedro Giffuni 897*24201887SPedro Giffuni /* 898*24201887SPedro Giffuni * SQLGetInfo - SQL_ALTER_TABLE 899*24201887SPedro Giffuni */ 900*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 901*24201887SPedro Giffuni /* 902*24201887SPedro Giffuni * The following 5 bitmasks are defined in sql.h 903*24201887SPedro Giffuni * 904*24201887SPedro Giffuni * #define SQL_AT_ADD_COLUMN 0x00000001L 905*24201887SPedro Giffuni * #define SQL_AT_DROP_COLUMN 0x00000002L 906*24201887SPedro Giffuni * #define SQL_AT_ADD_CONSTRAINT 0x00000008L 907*24201887SPedro Giffuni */ 908*24201887SPedro Giffuni #define SQL_AT_ADD_COLUMN_SINGLE 0x00000020L 909*24201887SPedro Giffuni #define SQL_AT_ADD_COLUMN_DEFAULT 0x00000040L 910*24201887SPedro Giffuni #define SQL_AT_ADD_COLUMN_COLLATION 0x00000080L 911*24201887SPedro Giffuni #define SQL_AT_SET_COLUMN_DEFAULT 0x00000100L 912*24201887SPedro Giffuni #define SQL_AT_DROP_COLUMN_DEFAULT 0x00000200L 913*24201887SPedro Giffuni #define SQL_AT_DROP_COLUMN_CASCADE 0x00000400L 914*24201887SPedro Giffuni #define SQL_AT_DROP_COLUMN_RESTRICT 0x00000800L 915*24201887SPedro Giffuni #define SQL_AT_ADD_TABLE_CONSTRAINT 0x00001000L 916*24201887SPedro Giffuni #define SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE 0x00002000L 917*24201887SPedro Giffuni #define SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT 0x00004000L 918*24201887SPedro Giffuni #define SQL_AT_CONSTRAINT_NAME_DEFINITION 0x00008000L 919*24201887SPedro Giffuni #define SQL_AT_CONSTRAINT_INITIALLY_DEFERRED 0x00010000L 920*24201887SPedro Giffuni #define SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE 0x00020000L 921*24201887SPedro Giffuni #define SQL_AT_CONSTRAINT_DEFERRABLE 0x00040000L 922*24201887SPedro Giffuni #define SQL_AT_CONSTRAINT_NON_DEFERRABLE 0x00080000L 923*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 924*24201887SPedro Giffuni 925*24201887SPedro Giffuni 926*24201887SPedro Giffuni /* 927*24201887SPedro Giffuni * SQLGetInfo - SQL_ASYNC_MODE 928*24201887SPedro Giffuni */ 929*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 930*24201887SPedro Giffuni #define SQL_AM_NONE 0 931*24201887SPedro Giffuni #define SQL_AM_CONNECTION 1 932*24201887SPedro Giffuni #define SQL_AM_STATEMENT 2 933*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 934*24201887SPedro Giffuni 935*24201887SPedro Giffuni 936*24201887SPedro Giffuni /* 937*24201887SPedro Giffuni * SQLGetInfo - SQL_BATCH_ROW_COUNT 938*24201887SPedro Giffuni */ 939*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 940*24201887SPedro Giffuni #define SQL_BRC_PROCEDURES 0x0000001 941*24201887SPedro Giffuni #define SQL_BRC_EXPLICIT 0x0000002 942*24201887SPedro Giffuni #define SQL_BRC_ROLLED_UP 0x0000004 943*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 944*24201887SPedro Giffuni 945*24201887SPedro Giffuni 946*24201887SPedro Giffuni /* 947*24201887SPedro Giffuni * SQLGetInfo - SQL_BATCH_SUPPORT 948*24201887SPedro Giffuni */ 949*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 950*24201887SPedro Giffuni #define SQL_BS_SELECT_EXPLICIT 0x00000001L 951*24201887SPedro Giffuni #define SQL_BS_ROW_COUNT_EXPLICIT 0x00000002L 952*24201887SPedro Giffuni #define SQL_BS_SELECT_PROC 0x00000004L 953*24201887SPedro Giffuni #define SQL_BS_ROW_COUNT_PROC 0x00000008L 954*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 955*24201887SPedro Giffuni 956*24201887SPedro Giffuni 957*24201887SPedro Giffuni /* 958*24201887SPedro Giffuni * SQLGetInfo - SQL_BOOKMARK_PERSISTENCE 959*24201887SPedro Giffuni */ 960*24201887SPedro Giffuni #define SQL_BP_CLOSE 0x00000001L 961*24201887SPedro Giffuni #define SQL_BP_DELETE 0x00000002L 962*24201887SPedro Giffuni #define SQL_BP_DROP 0x00000004L 963*24201887SPedro Giffuni #define SQL_BP_TRANSACTION 0x00000008L 964*24201887SPedro Giffuni #define SQL_BP_UPDATE 0x00000010L 965*24201887SPedro Giffuni #define SQL_BP_OTHER_HSTMT 0x00000020L 966*24201887SPedro Giffuni #define SQL_BP_SCROLL 0x00000040L 967*24201887SPedro Giffuni 968*24201887SPedro Giffuni 969*24201887SPedro Giffuni /* 970*24201887SPedro Giffuni * SQLGetInfo - SQL_CATALOG_LOCATION 971*24201887SPedro Giffuni */ 972*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 973*24201887SPedro Giffuni #define SQL_CL_START SQL_QL_START 974*24201887SPedro Giffuni #define SQL_CL_END SQL_QL_END 975*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 976*24201887SPedro Giffuni 977*24201887SPedro Giffuni 978*24201887SPedro Giffuni /* 979*24201887SPedro Giffuni * SQLGetInfo - SQL_CATALOG_USAGE 980*24201887SPedro Giffuni */ 981*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 982*24201887SPedro Giffuni #define SQL_CU_DML_STATEMENTS SQL_QU_DML_STATEMENTS 983*24201887SPedro Giffuni #define SQL_CU_PROCEDURE_INVOCATION SQL_QU_PROCEDURE_INVOCATION 984*24201887SPedro Giffuni #define SQL_CU_TABLE_DEFINITION SQL_QU_TABLE_DEFINITION 985*24201887SPedro Giffuni #define SQL_CU_INDEX_DEFINITION SQL_QU_INDEX_DEFINITION 986*24201887SPedro Giffuni #define SQL_CU_PRIVILEGE_DEFINITION SQL_QU_PRIVILEGE_DEFINITION 987*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 988*24201887SPedro Giffuni 989*24201887SPedro Giffuni 990*24201887SPedro Giffuni /* 991*24201887SPedro Giffuni * SQLGetInfo - SQL_CONCAT_NULL_BEHAVIOR 992*24201887SPedro Giffuni */ 993*24201887SPedro Giffuni #define SQL_CB_NULL 0x0000 994*24201887SPedro Giffuni #define SQL_CB_NON_NULL 0x0001 995*24201887SPedro Giffuni 996*24201887SPedro Giffuni 997*24201887SPedro Giffuni /* 998*24201887SPedro Giffuni * SQLGetInfo - SQL_CONVERT_* bitmask values 999*24201887SPedro Giffuni */ 1000*24201887SPedro Giffuni #define SQL_CVT_CHAR 0x00000001L 1001*24201887SPedro Giffuni #define SQL_CVT_NUMERIC 0x00000002L 1002*24201887SPedro Giffuni #define SQL_CVT_DECIMAL 0x00000004L 1003*24201887SPedro Giffuni #define SQL_CVT_INTEGER 0x00000008L 1004*24201887SPedro Giffuni #define SQL_CVT_SMALLINT 0x00000010L 1005*24201887SPedro Giffuni #define SQL_CVT_FLOAT 0x00000020L 1006*24201887SPedro Giffuni #define SQL_CVT_REAL 0x00000040L 1007*24201887SPedro Giffuni #define SQL_CVT_DOUBLE 0x00000080L 1008*24201887SPedro Giffuni #define SQL_CVT_VARCHAR 0x00000100L 1009*24201887SPedro Giffuni #define SQL_CVT_LONGVARCHAR 0x00000200L 1010*24201887SPedro Giffuni #define SQL_CVT_BINARY 0x00000400L 1011*24201887SPedro Giffuni #define SQL_CVT_VARBINARY 0x00000800L 1012*24201887SPedro Giffuni #define SQL_CVT_BIT 0x00001000L 1013*24201887SPedro Giffuni #define SQL_CVT_TINYINT 0x00002000L 1014*24201887SPedro Giffuni #define SQL_CVT_BIGINT 0x00004000L 1015*24201887SPedro Giffuni #define SQL_CVT_DATE 0x00008000L 1016*24201887SPedro Giffuni #define SQL_CVT_TIME 0x00010000L 1017*24201887SPedro Giffuni #define SQL_CVT_TIMESTAMP 0x00020000L 1018*24201887SPedro Giffuni #define SQL_CVT_LONGVARBINARY 0x00040000L 1019*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1020*24201887SPedro Giffuni #define SQL_CVT_INTERVAL_YEAR_MONTH 0x00080000L 1021*24201887SPedro Giffuni #define SQL_CVT_INTERVAL_DAY_TIME 0x00100000L 1022*24201887SPedro Giffuni #define SQL_CVT_WCHAR 0x00200000L 1023*24201887SPedro Giffuni #define SQL_CVT_WLONGVARCHAR 0x00400000L 1024*24201887SPedro Giffuni #define SQL_CVT_WVARCHAR 0x00800000L 1025*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1026*24201887SPedro Giffuni 1027*24201887SPedro Giffuni 1028*24201887SPedro Giffuni /* 1029*24201887SPedro Giffuni * SQLGetInfo - SQL_CONVERT_FUNCTIONS 1030*24201887SPedro Giffuni */ 1031*24201887SPedro Giffuni #define SQL_FN_CVT_CONVERT 0x00000001L 1032*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1033*24201887SPedro Giffuni #define SQL_FN_CVT_CAST 0x00000002L 1034*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1035*24201887SPedro Giffuni 1036*24201887SPedro Giffuni 1037*24201887SPedro Giffuni /* 1038*24201887SPedro Giffuni * SQLGetInfo - SQL_CORRELATION_NAME 1039*24201887SPedro Giffuni */ 1040*24201887SPedro Giffuni #define SQL_CN_NONE 0x0000 1041*24201887SPedro Giffuni #define SQL_CN_DIFFERENT 0x0001 1042*24201887SPedro Giffuni #define SQL_CN_ANY 0x0002 1043*24201887SPedro Giffuni 1044*24201887SPedro Giffuni 1045*24201887SPedro Giffuni /* 1046*24201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_ASSERTION 1047*24201887SPedro Giffuni */ 1048*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1049*24201887SPedro Giffuni #define SQL_CA_CREATE_ASSERTION 0x00000001L 1050*24201887SPedro Giffuni #define SQL_CA_CONSTRAINT_INITIALLY_DEFERRED 0x00000010L 1051*24201887SPedro Giffuni #define SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE 0x00000020L 1052*24201887SPedro Giffuni #define SQL_CA_CONSTRAINT_DEFERRABLE 0x00000040L 1053*24201887SPedro Giffuni #define SQL_CA_CONSTRAINT_NON_DEFERRABLE 0x00000080L 1054*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1055*24201887SPedro Giffuni 1056*24201887SPedro Giffuni 1057*24201887SPedro Giffuni /* 1058*24201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_CHARACTER_SET 1059*24201887SPedro Giffuni */ 1060*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1061*24201887SPedro Giffuni #define SQL_CCS_CREATE_CHARACTER_SET 0x00000001L 1062*24201887SPedro Giffuni #define SQL_CCS_COLLATE_CLAUSE 0x00000002L 1063*24201887SPedro Giffuni #define SQL_CCS_LIMITED_COLLATION 0x00000004L 1064*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1065*24201887SPedro Giffuni 1066*24201887SPedro Giffuni 1067*24201887SPedro Giffuni /* 1068*24201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_COLLATION 1069*24201887SPedro Giffuni */ 1070*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1071*24201887SPedro Giffuni #define SQL_CCOL_CREATE_COLLATION 0x00000001L 1072*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1073*24201887SPedro Giffuni 1074*24201887SPedro Giffuni 1075*24201887SPedro Giffuni /* 1076*24201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_DOMAIN 1077*24201887SPedro Giffuni */ 1078*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1079*24201887SPedro Giffuni #define SQL_CDO_CREATE_DOMAIN 0x00000001L 1080*24201887SPedro Giffuni #define SQL_CDO_DEFAULT 0x00000002L 1081*24201887SPedro Giffuni #define SQL_CDO_CONSTRAINT 0x00000004L 1082*24201887SPedro Giffuni #define SQL_CDO_COLLATION 0x00000008L 1083*24201887SPedro Giffuni #define SQL_CDO_CONSTRAINT_NAME_DEFINITION 0x00000010L 1084*24201887SPedro Giffuni #define SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED 0x00000020L 1085*24201887SPedro Giffuni #define SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE 0x00000040L 1086*24201887SPedro Giffuni #define SQL_CDO_CONSTRAINT_DEFERRABLE 0x00000080L 1087*24201887SPedro Giffuni #define SQL_CDO_CONSTRAINT_NON_DEFERRABLE 0x00000100L 1088*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1089*24201887SPedro Giffuni 1090*24201887SPedro Giffuni 1091*24201887SPedro Giffuni /* 1092*24201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_SCHEMA 1093*24201887SPedro Giffuni */ 1094*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1095*24201887SPedro Giffuni #define SQL_CS_CREATE_SCHEMA 0x00000001L 1096*24201887SPedro Giffuni #define SQL_CS_AUTHORIZATION 0x00000002L 1097*24201887SPedro Giffuni #define SQL_CS_DEFAULT_CHARACTER_SET 0x00000004L 1098*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1099*24201887SPedro Giffuni 1100*24201887SPedro Giffuni 1101*24201887SPedro Giffuni /* 1102*24201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_TABLE 1103*24201887SPedro Giffuni */ 1104*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1105*24201887SPedro Giffuni #define SQL_CT_CREATE_TABLE 0x00000001L 1106*24201887SPedro Giffuni #define SQL_CT_COMMIT_PRESERVE 0x00000002L 1107*24201887SPedro Giffuni #define SQL_CT_COMMIT_DELETE 0x00000004L 1108*24201887SPedro Giffuni #define SQL_CT_GLOBAL_TEMPORARY 0x00000008L 1109*24201887SPedro Giffuni #define SQL_CT_LOCAL_TEMPORARY 0x00000010L 1110*24201887SPedro Giffuni #define SQL_CT_CONSTRAINT_INITIALLY_DEFERRED 0x00000020L 1111*24201887SPedro Giffuni #define SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE 0x00000040L 1112*24201887SPedro Giffuni #define SQL_CT_CONSTRAINT_DEFERRABLE 0x00000080L 1113*24201887SPedro Giffuni #define SQL_CT_CONSTRAINT_NON_DEFERRABLE 0x00000100L 1114*24201887SPedro Giffuni #define SQL_CT_COLUMN_CONSTRAINT 0x00000200L 1115*24201887SPedro Giffuni #define SQL_CT_COLUMN_DEFAULT 0x00000400L 1116*24201887SPedro Giffuni #define SQL_CT_COLUMN_COLLATION 0x00000800L 1117*24201887SPedro Giffuni #define SQL_CT_TABLE_CONSTRAINT 0x00001000L 1118*24201887SPedro Giffuni #define SQL_CT_CONSTRAINT_NAME_DEFINITION 0x00002000L 1119*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1120*24201887SPedro Giffuni 1121*24201887SPedro Giffuni 1122*24201887SPedro Giffuni /* 1123*24201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_TRANSLATION 1124*24201887SPedro Giffuni */ 1125*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1126*24201887SPedro Giffuni #define SQL_CTR_CREATE_TRANSLATION 0x00000001L 1127*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1128*24201887SPedro Giffuni 1129*24201887SPedro Giffuni 1130*24201887SPedro Giffuni /* 1131*24201887SPedro Giffuni * SQLGetInfo - SQL_CREATE_VIEW 1132*24201887SPedro Giffuni */ 1133*24201887SPedro Giffuni #define SQL_CV_CREATE_VIEW 0x00000001L 1134*24201887SPedro Giffuni #define SQL_CV_CHECK_OPTION 0x00000002L 1135*24201887SPedro Giffuni #define SQL_CV_CASCADED 0x00000004L 1136*24201887SPedro Giffuni #define SQL_CV_LOCAL 0x00000008L 1137*24201887SPedro Giffuni 1138*24201887SPedro Giffuni 1139*24201887SPedro Giffuni /* 1140*24201887SPedro Giffuni * SQLGetInfo - SQL_DATETIME_LITERALS 1141*24201887SPedro Giffuni */ 1142*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1143*24201887SPedro Giffuni #define SQL_DL_SQL92_DATE 0x00000001L 1144*24201887SPedro Giffuni #define SQL_DL_SQL92_TIME 0x00000002L 1145*24201887SPedro Giffuni #define SQL_DL_SQL92_TIMESTAMP 0x00000004L 1146*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_YEAR 0x00000008L 1147*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_MONTH 0x00000010L 1148*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_DAY 0x00000020L 1149*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_HOUR 0x00000040L 1150*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_MINUTE 0x00000080L 1151*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_SECOND 0x00000100L 1152*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH 0x00000200L 1153*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR 0x00000400L 1154*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE 0x00000800L 1155*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND 0x00001000L 1156*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE 0x00002000L 1157*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND 0x00004000L 1158*24201887SPedro Giffuni #define SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND 0x00008000L 1159*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1160*24201887SPedro Giffuni 1161*24201887SPedro Giffuni 1162*24201887SPedro Giffuni /* 1163*24201887SPedro Giffuni * SQLGetInfo - SQL_DDL_INDEX 1164*24201887SPedro Giffuni */ 1165*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1166*24201887SPedro Giffuni #define SQL_DI_CREATE_INDEX 0x00000001L 1167*24201887SPedro Giffuni #define SQL_DI_DROP_INDEX 0x00000002L 1168*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1169*24201887SPedro Giffuni 1170*24201887SPedro Giffuni 1171*24201887SPedro Giffuni /* 1172*24201887SPedro Giffuni * SQLGetInfo - SQL_DROP_ASSERTION 1173*24201887SPedro Giffuni */ 1174*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1175*24201887SPedro Giffuni #define SQL_DA_DROP_ASSERTION 0x00000001L 1176*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1177*24201887SPedro Giffuni 1178*24201887SPedro Giffuni 1179*24201887SPedro Giffuni /* 1180*24201887SPedro Giffuni * SQLGetInfo - SQL_DROP_CHARACTER_SET 1181*24201887SPedro Giffuni */ 1182*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1183*24201887SPedro Giffuni #define SQL_DCS_DROP_CHARACTER_SET 0x00000001L 1184*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1185*24201887SPedro Giffuni 1186*24201887SPedro Giffuni 1187*24201887SPedro Giffuni /* 1188*24201887SPedro Giffuni * SQLGetInfo - SQL_DROP_COLLATION 1189*24201887SPedro Giffuni */ 1190*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1191*24201887SPedro Giffuni #define SQL_DC_DROP_COLLATION 0x00000001L 1192*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1193*24201887SPedro Giffuni 1194*24201887SPedro Giffuni 1195*24201887SPedro Giffuni /* 1196*24201887SPedro Giffuni * SQLGetInfo - SQL_DROP_DOMAIN 1197*24201887SPedro Giffuni */ 1198*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1199*24201887SPedro Giffuni #define SQL_DD_DROP_DOMAIN 0x00000001L 1200*24201887SPedro Giffuni #define SQL_DD_RESTRICT 0x00000002L 1201*24201887SPedro Giffuni #define SQL_DD_CASCADE 0x00000004L 1202*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1203*24201887SPedro Giffuni 1204*24201887SPedro Giffuni 1205*24201887SPedro Giffuni /* 1206*24201887SPedro Giffuni * SQLGetInfo - SQL_DROP_SCHEMA 1207*24201887SPedro Giffuni */ 1208*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1209*24201887SPedro Giffuni #define SQL_DS_DROP_SCHEMA 0x00000001L 1210*24201887SPedro Giffuni #define SQL_DS_RESTRICT 0x00000002L 1211*24201887SPedro Giffuni #define SQL_DS_CASCADE 0x00000004L 1212*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1213*24201887SPedro Giffuni 1214*24201887SPedro Giffuni 1215*24201887SPedro Giffuni /* 1216*24201887SPedro Giffuni * SQLGetInfo - SQL_DROP_TABLE 1217*24201887SPedro Giffuni */ 1218*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1219*24201887SPedro Giffuni #define SQL_DT_DROP_TABLE 0x00000001L 1220*24201887SPedro Giffuni #define SQL_DT_RESTRICT 0x00000002L 1221*24201887SPedro Giffuni #define SQL_DT_CASCADE 0x00000004L 1222*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1223*24201887SPedro Giffuni 1224*24201887SPedro Giffuni 1225*24201887SPedro Giffuni /* 1226*24201887SPedro Giffuni * SQLGetInfo - SQL_DROP_TRANSLATION 1227*24201887SPedro Giffuni */ 1228*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1229*24201887SPedro Giffuni #define SQL_DTR_DROP_TRANSLATION 0x00000001L 1230*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1231*24201887SPedro Giffuni 1232*24201887SPedro Giffuni 1233*24201887SPedro Giffuni /* 1234*24201887SPedro Giffuni * SQLGetInfo - SQL_DROP_VIEW 1235*24201887SPedro Giffuni */ 1236*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1237*24201887SPedro Giffuni #define SQL_DV_DROP_VIEW 0x00000001L 1238*24201887SPedro Giffuni #define SQL_DV_RESTRICT 0x00000002L 1239*24201887SPedro Giffuni #define SQL_DV_CASCADE 0x00000004L 1240*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1241*24201887SPedro Giffuni 1242*24201887SPedro Giffuni 1243*24201887SPedro Giffuni /* 1244*24201887SPedro Giffuni * SQLGetInfo - SQL_DTC_TRANSITION_COST 1245*24201887SPedro Giffuni */ 1246*24201887SPedro Giffuni #define SQL_DTC_ENLIST_EXPENSIVE 0x00000001L 1247*24201887SPedro Giffuni #define SQL_DTC_UNENLIST_EXPENSIVE 0x00000002L 1248*24201887SPedro Giffuni 1249*24201887SPedro Giffuni 1250*24201887SPedro Giffuni /* 1251*24201887SPedro Giffuni * SQLGetInfo - SQL_DYNAMIC_CURSOR_ATTRIBUTES1 1252*24201887SPedro Giffuni * SQLGetInfo - SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 1253*24201887SPedro Giffuni * SQLGetInfo - SQL_KEYSET_CURSOR_ATTRIBUTES1 1254*24201887SPedro Giffuni * SQLGetInfo - SQL_STATIC_CURSOR_ATTRIBUTES1 1255*24201887SPedro Giffuni */ 1256*24201887SPedro Giffuni /* 1257*24201887SPedro Giffuni * SQLFetchScroll - FetchOrientation 1258*24201887SPedro Giffuni */ 1259*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1260*24201887SPedro Giffuni #define SQL_CA1_NEXT 0x00000001L 1261*24201887SPedro Giffuni #define SQL_CA1_ABSOLUTE 0x00000002L 1262*24201887SPedro Giffuni #define SQL_CA1_RELATIVE 0x00000004L 1263*24201887SPedro Giffuni #define SQL_CA1_BOOKMARK 0x00000008L 1264*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1265*24201887SPedro Giffuni 1266*24201887SPedro Giffuni 1267*24201887SPedro Giffuni /* 1268*24201887SPedro Giffuni * SQLSetPos - LockType 1269*24201887SPedro Giffuni */ 1270*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1271*24201887SPedro Giffuni #define SQL_CA1_LOCK_NO_CHANGE 0x00000040L 1272*24201887SPedro Giffuni #define SQL_CA1_LOCK_EXCLUSIVE 0x00000080L 1273*24201887SPedro Giffuni #define SQL_CA1_LOCK_UNLOCK 0x00000100L 1274*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1275*24201887SPedro Giffuni 1276*24201887SPedro Giffuni 1277*24201887SPedro Giffuni /* 1278*24201887SPedro Giffuni * SQLSetPos Operations 1279*24201887SPedro Giffuni */ 1280*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1281*24201887SPedro Giffuni #define SQL_CA1_POS_POSITION 0x00000200L 1282*24201887SPedro Giffuni #define SQL_CA1_POS_UPDATE 0x00000400L 1283*24201887SPedro Giffuni #define SQL_CA1_POS_DELETE 0x00000800L 1284*24201887SPedro Giffuni #define SQL_CA1_POS_REFRESH 0x00001000L 1285*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1286*24201887SPedro Giffuni 1287*24201887SPedro Giffuni 1288*24201887SPedro Giffuni /* 1289*24201887SPedro Giffuni * positioned updates and deletes 1290*24201887SPedro Giffuni */ 1291*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1292*24201887SPedro Giffuni #define SQL_CA1_POSITIONED_UPDATE 0x00002000L 1293*24201887SPedro Giffuni #define SQL_CA1_POSITIONED_DELETE 0x00004000L 1294*24201887SPedro Giffuni #define SQL_CA1_SELECT_FOR_UPDATE 0x00008000L 1295*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1296*24201887SPedro Giffuni 1297*24201887SPedro Giffuni 1298*24201887SPedro Giffuni /* 1299*24201887SPedro Giffuni * SQLBulkOperations operations 1300*24201887SPedro Giffuni */ 1301*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1302*24201887SPedro Giffuni #define SQL_CA1_BULK_ADD 0x00010000L 1303*24201887SPedro Giffuni #define SQL_CA1_BULK_UPDATE_BY_BOOKMARK 0x00020000L 1304*24201887SPedro Giffuni #define SQL_CA1_BULK_DELETE_BY_BOOKMARK 0x00040000L 1305*24201887SPedro Giffuni #define SQL_CA1_BULK_FETCH_BY_BOOKMARK 0x00080000L 1306*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1307*24201887SPedro Giffuni 1308*24201887SPedro Giffuni 1309*24201887SPedro Giffuni /* 1310*24201887SPedro Giffuni * SQLGetInfo - SQL_DYNAMIC_CURSOR_ATTRIBUTES2 1311*24201887SPedro Giffuni * SQLGetInfo - SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 1312*24201887SPedro Giffuni * SQLGetInfo - SQL_KEYSET_CURSOR_ATTRIBUTES2 1313*24201887SPedro Giffuni * SQLGetInfo - SQL_STATIC_CURSOR_ATTRIBUTES2 1314*24201887SPedro Giffuni */ 1315*24201887SPedro Giffuni /* 1316*24201887SPedro Giffuni * SQL_ATTR_SCROLL_CONCURRENCY 1317*24201887SPedro Giffuni */ 1318*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1319*24201887SPedro Giffuni #define SQL_CA2_READ_ONLY_CONCURRENCY 0x00000001L 1320*24201887SPedro Giffuni #define SQL_CA2_LOCK_CONCURRENCY 0x00000002L 1321*24201887SPedro Giffuni #define SQL_CA2_OPT_ROWVER_CONCURRENCY 0x00000004L 1322*24201887SPedro Giffuni #define SQL_CA2_OPT_VALUES_CONCURRENCY 0x00000008L 1323*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1324*24201887SPedro Giffuni 1325*24201887SPedro Giffuni 1326*24201887SPedro Giffuni /* 1327*24201887SPedro Giffuni * sensitivity of the cursor to its own inserts, deletes, and updates 1328*24201887SPedro Giffuni */ 1329*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1330*24201887SPedro Giffuni #define SQL_CA2_SENSITIVITY_ADDITIONS 0x00000010L 1331*24201887SPedro Giffuni #define SQL_CA2_SENSITIVITY_DELETIONS 0x00000020L 1332*24201887SPedro Giffuni #define SQL_CA2_SENSITIVITY_UPDATES 0x00000040L 1333*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1334*24201887SPedro Giffuni 1335*24201887SPedro Giffuni 1336*24201887SPedro Giffuni /* 1337*24201887SPedro Giffuni * SQL_ATTR_MAX_ROWS 1338*24201887SPedro Giffuni */ 1339*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1340*24201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_SELECT 0x00000080L 1341*24201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_INSERT 0x00000100L 1342*24201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_DELETE 0x00000200L 1343*24201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_UPDATE 0x00000400L 1344*24201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_CATALOG 0x00000800L 1345*24201887SPedro Giffuni #define SQL_CA2_MAX_ROWS_AFFECTS_ALL (SQL_CA2_MAX_ROWS_SELECT | \ 1346*24201887SPedro Giffuni SQL_CA2_MAX_ROWS_INSERT | \ 1347*24201887SPedro Giffuni SQL_CA2_MAX_ROWS_DELETE | \ 1348*24201887SPedro Giffuni SQL_CA2_MAX_ROWS_UPDATE | \ 1349*24201887SPedro Giffuni SQL_CA2_MAX_ROWS_CATALOG) 1350*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1351*24201887SPedro Giffuni 1352*24201887SPedro Giffuni 1353*24201887SPedro Giffuni /* 1354*24201887SPedro Giffuni * SQL_DIAG_CURSOR_ROW_COUNT 1355*24201887SPedro Giffuni */ 1356*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1357*24201887SPedro Giffuni #define SQL_CA2_CRC_EXACT 0x00001000L 1358*24201887SPedro Giffuni #define SQL_CA2_CRC_APPROXIMATE 0x00002000L 1359*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1360*24201887SPedro Giffuni 1361*24201887SPedro Giffuni 1362*24201887SPedro Giffuni /* 1363*24201887SPedro Giffuni * the kinds of positioned statements that can be simulated 1364*24201887SPedro Giffuni */ 1365*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1366*24201887SPedro Giffuni #define SQL_CA2_SIMULATE_NON_UNIQUE 0x00004000L 1367*24201887SPedro Giffuni #define SQL_CA2_SIMULATE_TRY_UNIQUE 0x00008000L 1368*24201887SPedro Giffuni #define SQL_CA2_SIMULATE_UNIQUE 0x00010000L 1369*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1370*24201887SPedro Giffuni 1371*24201887SPedro Giffuni 1372*24201887SPedro Giffuni /* 1373*24201887SPedro Giffuni * SQLGetInfo - SQL_FETCH_DIRECTION 1374*24201887SPedro Giffuni */ 1375*24201887SPedro Giffuni #if (ODBCVER < 0x0300) 1376*24201887SPedro Giffuni #define SQL_FD_FETCH_RESUME 0x00000040L 1377*24201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 1378*24201887SPedro Giffuni #define SQL_FD_FETCH_BOOKMARK 0x00000080L 1379*24201887SPedro Giffuni 1380*24201887SPedro Giffuni 1381*24201887SPedro Giffuni /* 1382*24201887SPedro Giffuni * SQLGetInfo - SQL_FILE_USAGE 1383*24201887SPedro Giffuni */ 1384*24201887SPedro Giffuni #define SQL_FILE_NOT_SUPPORTED 0x0000 1385*24201887SPedro Giffuni #define SQL_FILE_TABLE 0x0001 1386*24201887SPedro Giffuni #define SQL_FILE_QUALIFIER 0x0002 1387*24201887SPedro Giffuni #define SQL_FILE_CATALOG SQL_FILE_QUALIFIER 1388*24201887SPedro Giffuni 1389*24201887SPedro Giffuni 1390*24201887SPedro Giffuni /* 1391*24201887SPedro Giffuni * SQLGetInfo - SQL_GETDATA_EXTENSIONS 1392*24201887SPedro Giffuni */ 1393*24201887SPedro Giffuni #define SQL_GD_BLOCK 0x00000004L 1394*24201887SPedro Giffuni #define SQL_GD_BOUND 0x00000008L 1395*24201887SPedro Giffuni 1396*24201887SPedro Giffuni 1397*24201887SPedro Giffuni /* 1398*24201887SPedro Giffuni * SQLGetInfo - SQL_GROUP_BY 1399*24201887SPedro Giffuni */ 1400*24201887SPedro Giffuni #define SQL_GB_NOT_SUPPORTED 0x0000 1401*24201887SPedro Giffuni #define SQL_GB_GROUP_BY_EQUALS_SELECT 0x0001 1402*24201887SPedro Giffuni #define SQL_GB_GROUP_BY_CONTAINS_SELECT 0x0002 1403*24201887SPedro Giffuni #define SQL_GB_NO_RELATION 0x0003 1404*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1405*24201887SPedro Giffuni #define SQL_GB_COLLATE 0x0004 1406*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1407*24201887SPedro Giffuni 1408*24201887SPedro Giffuni 1409*24201887SPedro Giffuni /* 1410*24201887SPedro Giffuni * SQLGetInfo - SQL_INDEX_KEYWORDS 1411*24201887SPedro Giffuni */ 1412*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1413*24201887SPedro Giffuni #define SQL_IK_NONE 0x00000000L 1414*24201887SPedro Giffuni #define SQL_IK_ASC 0x00000001L 1415*24201887SPedro Giffuni #define SQL_IK_DESC 0x00000002L 1416*24201887SPedro Giffuni #define SQL_IK_ALL (SQL_IK_ASC | SQL_IK_DESC) 1417*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1418*24201887SPedro Giffuni 1419*24201887SPedro Giffuni 1420*24201887SPedro Giffuni /* 1421*24201887SPedro Giffuni * SQLGetInfo - SQL_INFO_SCHEMA_VIEWS 1422*24201887SPedro Giffuni */ 1423*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1424*24201887SPedro Giffuni #define SQL_ISV_ASSERTIONS 0x00000001L 1425*24201887SPedro Giffuni #define SQL_ISV_CHARACTER_SETS 0x00000002L 1426*24201887SPedro Giffuni #define SQL_ISV_CHECK_CONSTRAINTS 0x00000004L 1427*24201887SPedro Giffuni #define SQL_ISV_COLLATIONS 0x00000008L 1428*24201887SPedro Giffuni #define SQL_ISV_COLUMN_DOMAIN_USAGE 0x00000010L 1429*24201887SPedro Giffuni #define SQL_ISV_COLUMN_PRIVILEGES 0x00000020L 1430*24201887SPedro Giffuni #define SQL_ISV_COLUMNS 0x00000040L 1431*24201887SPedro Giffuni #define SQL_ISV_CONSTRAINT_COLUMN_USAGE 0x00000080L 1432*24201887SPedro Giffuni #define SQL_ISV_CONSTRAINT_TABLE_USAGE 0x00000100L 1433*24201887SPedro Giffuni #define SQL_ISV_DOMAIN_CONSTRAINTS 0x00000200L 1434*24201887SPedro Giffuni #define SQL_ISV_DOMAINS 0x00000400L 1435*24201887SPedro Giffuni #define SQL_ISV_KEY_COLUMN_USAGE 0x00000800L 1436*24201887SPedro Giffuni #define SQL_ISV_REFERENTIAL_CONSTRAINTS 0x00001000L 1437*24201887SPedro Giffuni #define SQL_ISV_SCHEMATA 0x00002000L 1438*24201887SPedro Giffuni #define SQL_ISV_SQL_LANGUAGES 0x00004000L 1439*24201887SPedro Giffuni #define SQL_ISV_TABLE_CONSTRAINTS 0x00008000L 1440*24201887SPedro Giffuni #define SQL_ISV_TABLE_PRIVILEGES 0x00010000L 1441*24201887SPedro Giffuni #define SQL_ISV_TABLES 0x00020000L 1442*24201887SPedro Giffuni #define SQL_ISV_TRANSLATIONS 0x00040000L 1443*24201887SPedro Giffuni #define SQL_ISV_USAGE_PRIVILEGES 0x00080000L 1444*24201887SPedro Giffuni #define SQL_ISV_VIEW_COLUMN_USAGE 0x00100000L 1445*24201887SPedro Giffuni #define SQL_ISV_VIEW_TABLE_USAGE 0x00200000L 1446*24201887SPedro Giffuni #define SQL_ISV_VIEWS 0x00400000L 1447*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1448*24201887SPedro Giffuni 1449*24201887SPedro Giffuni 1450*24201887SPedro Giffuni /* 1451*24201887SPedro Giffuni * SQLGetInfo - SQL_INSERT_STATEMENT 1452*24201887SPedro Giffuni */ 1453*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1454*24201887SPedro Giffuni #define SQL_IS_INSERT_LITERALS 0x00000001L 1455*24201887SPedro Giffuni #define SQL_IS_INSERT_SEARCHED 0x00000002L 1456*24201887SPedro Giffuni #define SQL_IS_SELECT_INTO 0x00000004L 1457*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1458*24201887SPedro Giffuni 1459*24201887SPedro Giffuni 1460*24201887SPedro Giffuni /* 1461*24201887SPedro Giffuni * SQLGetInfo - SQL_LOCK_TYPES 1462*24201887SPedro Giffuni */ 1463*24201887SPedro Giffuni #define SQL_LCK_NO_CHANGE 0x00000001L 1464*24201887SPedro Giffuni #define SQL_LCK_EXCLUSIVE 0x00000002L 1465*24201887SPedro Giffuni #define SQL_LCK_UNLOCK 0x00000004L 1466*24201887SPedro Giffuni 1467*24201887SPedro Giffuni 1468*24201887SPedro Giffuni /* 1469*24201887SPedro Giffuni * SQLGetInfo - SQL_POS_OPERATIONS 1470*24201887SPedro Giffuni */ 1471*24201887SPedro Giffuni #define SQL_POS_POSITION 0x00000001L 1472*24201887SPedro Giffuni #define SQL_POS_REFRESH 0x00000002L 1473*24201887SPedro Giffuni #define SQL_POS_UPDATE 0x00000004L 1474*24201887SPedro Giffuni #define SQL_POS_DELETE 0x00000008L 1475*24201887SPedro Giffuni #define SQL_POS_ADD 0x00000010L 1476*24201887SPedro Giffuni 1477*24201887SPedro Giffuni 1478*24201887SPedro Giffuni /* 1479*24201887SPedro Giffuni * SQLGetInfo - SQL_NON_NULLABLE_COLUMNS 1480*24201887SPedro Giffuni */ 1481*24201887SPedro Giffuni #define SQL_NNC_NULL 0x0000 1482*24201887SPedro Giffuni #define SQL_NNC_NON_NULL 0x0001 1483*24201887SPedro Giffuni 1484*24201887SPedro Giffuni 1485*24201887SPedro Giffuni /* 1486*24201887SPedro Giffuni * SQLGetInfo - SQL_NULL_COLLATION 1487*24201887SPedro Giffuni */ 1488*24201887SPedro Giffuni #define SQL_NC_START 0x0002 1489*24201887SPedro Giffuni #define SQL_NC_END 0x0004 1490*24201887SPedro Giffuni 1491*24201887SPedro Giffuni 1492*24201887SPedro Giffuni /* 1493*24201887SPedro Giffuni * SQLGetInfo - SQL_NUMERIC_FUNCTIONS 1494*24201887SPedro Giffuni */ 1495*24201887SPedro Giffuni #define SQL_FN_NUM_ABS 0x00000001L 1496*24201887SPedro Giffuni #define SQL_FN_NUM_ACOS 0x00000002L 1497*24201887SPedro Giffuni #define SQL_FN_NUM_ASIN 0x00000004L 1498*24201887SPedro Giffuni #define SQL_FN_NUM_ATAN 0x00000008L 1499*24201887SPedro Giffuni #define SQL_FN_NUM_ATAN2 0x00000010L 1500*24201887SPedro Giffuni #define SQL_FN_NUM_CEILING 0x00000020L 1501*24201887SPedro Giffuni #define SQL_FN_NUM_COS 0x00000040L 1502*24201887SPedro Giffuni #define SQL_FN_NUM_COT 0x00000080L 1503*24201887SPedro Giffuni #define SQL_FN_NUM_EXP 0x00000100L 1504*24201887SPedro Giffuni #define SQL_FN_NUM_FLOOR 0x00000200L 1505*24201887SPedro Giffuni #define SQL_FN_NUM_LOG 0x00000400L 1506*24201887SPedro Giffuni #define SQL_FN_NUM_MOD 0x00000800L 1507*24201887SPedro Giffuni #define SQL_FN_NUM_SIGN 0x00001000L 1508*24201887SPedro Giffuni #define SQL_FN_NUM_SIN 0x00002000L 1509*24201887SPedro Giffuni #define SQL_FN_NUM_SQRT 0x00004000L 1510*24201887SPedro Giffuni #define SQL_FN_NUM_TAN 0x00008000L 1511*24201887SPedro Giffuni #define SQL_FN_NUM_PI 0x00010000L 1512*24201887SPedro Giffuni #define SQL_FN_NUM_RAND 0x00020000L 1513*24201887SPedro Giffuni #define SQL_FN_NUM_DEGREES 0x00040000L 1514*24201887SPedro Giffuni #define SQL_FN_NUM_LOG10 0x00080000L 1515*24201887SPedro Giffuni #define SQL_FN_NUM_POWER 0x00100000L 1516*24201887SPedro Giffuni #define SQL_FN_NUM_RADIANS 0x00200000L 1517*24201887SPedro Giffuni #define SQL_FN_NUM_ROUND 0x00400000L 1518*24201887SPedro Giffuni #define SQL_FN_NUM_TRUNCATE 0x00800000L 1519*24201887SPedro Giffuni 1520*24201887SPedro Giffuni 1521*24201887SPedro Giffuni /* 1522*24201887SPedro Giffuni * SQLGetInfo - SQL_ODBC_API_CONFORMANCE 1523*24201887SPedro Giffuni */ 1524*24201887SPedro Giffuni #define SQL_OAC_NONE 0x0000 1525*24201887SPedro Giffuni #define SQL_OAC_LEVEL1 0x0001 1526*24201887SPedro Giffuni #define SQL_OAC_LEVEL2 0x0002 1527*24201887SPedro Giffuni 1528*24201887SPedro Giffuni 1529*24201887SPedro Giffuni /* 1530*24201887SPedro Giffuni * SQLGetInfo - SQL_ODBC_INTERFACE_CONFORMANCE 1531*24201887SPedro Giffuni */ 1532*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1533*24201887SPedro Giffuni #define SQL_OIC_CORE 1UL 1534*24201887SPedro Giffuni #define SQL_OIC_LEVEL1 2UL 1535*24201887SPedro Giffuni #define SQL_OIC_LEVEL2 3UL 1536*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1537*24201887SPedro Giffuni 1538*24201887SPedro Giffuni 1539*24201887SPedro Giffuni /* 1540*24201887SPedro Giffuni * SQLGetInfo - SQL_ODBC_SAG_CLI_CONFORMANCE 1541*24201887SPedro Giffuni */ 1542*24201887SPedro Giffuni #define SQL_OSCC_NOT_COMPLIANT 0x0000 1543*24201887SPedro Giffuni #define SQL_OSCC_COMPLIANT 0x0001 1544*24201887SPedro Giffuni 1545*24201887SPedro Giffuni 1546*24201887SPedro Giffuni /* 1547*24201887SPedro Giffuni * SQLGetInfo - SQL_ODBC_SQL_CONFORMANCE 1548*24201887SPedro Giffuni */ 1549*24201887SPedro Giffuni #define SQL_OSC_MINIMUM 0x0000 1550*24201887SPedro Giffuni #define SQL_OSC_CORE 0x0001 1551*24201887SPedro Giffuni #define SQL_OSC_EXTENDED 0x0002 1552*24201887SPedro Giffuni 1553*24201887SPedro Giffuni 1554*24201887SPedro Giffuni /* 1555*24201887SPedro Giffuni * SQLGetInfo - SQL_OWNER_USAGE 1556*24201887SPedro Giffuni */ 1557*24201887SPedro Giffuni #define SQL_OU_DML_STATEMENTS 0x00000001L 1558*24201887SPedro Giffuni #define SQL_OU_PROCEDURE_INVOCATION 0x00000002L 1559*24201887SPedro Giffuni #define SQL_OU_TABLE_DEFINITION 0x00000004L 1560*24201887SPedro Giffuni #define SQL_OU_INDEX_DEFINITION 0x00000008L 1561*24201887SPedro Giffuni #define SQL_OU_PRIVILEGE_DEFINITION 0x00000010L 1562*24201887SPedro Giffuni 1563*24201887SPedro Giffuni 1564*24201887SPedro Giffuni /* 1565*24201887SPedro Giffuni * SQLGetInfo - SQL_PARAM_ARRAY_ROW_COUNTS 1566*24201887SPedro Giffuni */ 1567*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1568*24201887SPedro Giffuni #define SQL_PARC_BATCH 1 1569*24201887SPedro Giffuni #define SQL_PARC_NO_BATCH 2 1570*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1571*24201887SPedro Giffuni 1572*24201887SPedro Giffuni 1573*24201887SPedro Giffuni /* 1574*24201887SPedro Giffuni * SQLGetInfo - SQL_PARAM_ARRAY_SELECTS 1575*24201887SPedro Giffuni */ 1576*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1577*24201887SPedro Giffuni #define SQL_PAS_BATCH 1 1578*24201887SPedro Giffuni #define SQL_PAS_NO_BATCH 2 1579*24201887SPedro Giffuni #define SQL_PAS_NO_SELECT 3 1580*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1581*24201887SPedro Giffuni 1582*24201887SPedro Giffuni 1583*24201887SPedro Giffuni /* 1584*24201887SPedro Giffuni * SQLGetInfo - SQL_POSITIONED_STATEMENTS 1585*24201887SPedro Giffuni */ 1586*24201887SPedro Giffuni #define SQL_PS_POSITIONED_DELETE 0x00000001L 1587*24201887SPedro Giffuni #define SQL_PS_POSITIONED_UPDATE 0x00000002L 1588*24201887SPedro Giffuni #define SQL_PS_SELECT_FOR_UPDATE 0x00000004L 1589*24201887SPedro Giffuni 1590*24201887SPedro Giffuni 1591*24201887SPedro Giffuni /* 1592*24201887SPedro Giffuni * SQLGetInfo - SQL_QUALIFIER_LOCATION 1593*24201887SPedro Giffuni */ 1594*24201887SPedro Giffuni #define SQL_QL_START 0x0001 1595*24201887SPedro Giffuni #define SQL_QL_END 0x0002 1596*24201887SPedro Giffuni 1597*24201887SPedro Giffuni 1598*24201887SPedro Giffuni /* 1599*24201887SPedro Giffuni * SQLGetInfo - SQL_QUALIFIER_USAGE 1600*24201887SPedro Giffuni */ 1601*24201887SPedro Giffuni #define SQL_QU_DML_STATEMENTS 0x00000001L 1602*24201887SPedro Giffuni #define SQL_QU_PROCEDURE_INVOCATION 0x00000002L 1603*24201887SPedro Giffuni #define SQL_QU_TABLE_DEFINITION 0x00000004L 1604*24201887SPedro Giffuni #define SQL_QU_INDEX_DEFINITION 0x00000008L 1605*24201887SPedro Giffuni #define SQL_QU_PRIVILEGE_DEFINITION 0x00000010L 1606*24201887SPedro Giffuni 1607*24201887SPedro Giffuni 1608*24201887SPedro Giffuni /* 1609*24201887SPedro Giffuni * SQLGetInfo - SQL_SCHEMA_USAGE 1610*24201887SPedro Giffuni */ 1611*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1612*24201887SPedro Giffuni #define SQL_SU_DML_STATEMENTS SQL_OU_DML_STATEMENTS 1613*24201887SPedro Giffuni #define SQL_SU_PROCEDURE_INVOCATION SQL_OU_PROCEDURE_INVOCATION 1614*24201887SPedro Giffuni #define SQL_SU_TABLE_DEFINITION SQL_OU_TABLE_DEFINITION 1615*24201887SPedro Giffuni #define SQL_SU_INDEX_DEFINITION SQL_OU_INDEX_DEFINITION 1616*24201887SPedro Giffuni #define SQL_SU_PRIVILEGE_DEFINITION SQL_OU_PRIVILEGE_DEFINITION 1617*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1618*24201887SPedro Giffuni 1619*24201887SPedro Giffuni 1620*24201887SPedro Giffuni /* 1621*24201887SPedro Giffuni * SQLGetInfo - SQL_SCROLL_OPTIONS 1622*24201887SPedro Giffuni */ 1623*24201887SPedro Giffuni #define SQL_SO_FORWARD_ONLY 0x00000001L 1624*24201887SPedro Giffuni #define SQL_SO_KEYSET_DRIVEN 0x00000002L 1625*24201887SPedro Giffuni #define SQL_SO_DYNAMIC 0x00000004L 1626*24201887SPedro Giffuni #define SQL_SO_MIXED 0x00000008L 1627*24201887SPedro Giffuni #define SQL_SO_STATIC 0x00000010L 1628*24201887SPedro Giffuni 1629*24201887SPedro Giffuni 1630*24201887SPedro Giffuni /* 1631*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL_CONFORMANCE 1632*24201887SPedro Giffuni */ 1633*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1634*24201887SPedro Giffuni #define SQL_SC_SQL92_ENTRY 0x00000001L 1635*24201887SPedro Giffuni #define SQL_SC_FIPS127_2_TRANSITIONAL 0x00000002L 1636*24201887SPedro Giffuni #define SQL_SC_SQL92_INTERMEDIATE 0x00000004L 1637*24201887SPedro Giffuni #define SQL_SC_SQL92_FULL 0x00000008L 1638*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1639*24201887SPedro Giffuni 1640*24201887SPedro Giffuni 1641*24201887SPedro Giffuni /* 1642*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_DATETIME_FUNCTIONS 1643*24201887SPedro Giffuni */ 1644*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1645*24201887SPedro Giffuni #define SQL_SDF_CURRENT_DATE 0x00000001L 1646*24201887SPedro Giffuni #define SQL_SDF_CURRENT_TIME 0x00000002L 1647*24201887SPedro Giffuni #define SQL_SDF_CURRENT_TIMESTAMP 0x00000004L 1648*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1649*24201887SPedro Giffuni 1650*24201887SPedro Giffuni 1651*24201887SPedro Giffuni /* 1652*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_FOREIGN_KEY_DELETE_RULE 1653*24201887SPedro Giffuni */ 1654*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1655*24201887SPedro Giffuni #define SQL_SFKD_CASCADE 0x00000001L 1656*24201887SPedro Giffuni #define SQL_SFKD_NO_ACTION 0x00000002L 1657*24201887SPedro Giffuni #define SQL_SFKD_SET_DEFAULT 0x00000004L 1658*24201887SPedro Giffuni #define SQL_SFKD_SET_NULL 0x00000008L 1659*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1660*24201887SPedro Giffuni 1661*24201887SPedro Giffuni 1662*24201887SPedro Giffuni /* 1663*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_FOREIGN_KEY_UPDATE_RULE 1664*24201887SPedro Giffuni */ 1665*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1666*24201887SPedro Giffuni #define SQL_SFKU_CASCADE 0x00000001L 1667*24201887SPedro Giffuni #define SQL_SFKU_NO_ACTION 0x00000002L 1668*24201887SPedro Giffuni #define SQL_SFKU_SET_DEFAULT 0x00000004L 1669*24201887SPedro Giffuni #define SQL_SFKU_SET_NULL 0x00000008L 1670*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1671*24201887SPedro Giffuni 1672*24201887SPedro Giffuni 1673*24201887SPedro Giffuni /* 1674*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_GRANT 1675*24201887SPedro Giffuni */ 1676*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1677*24201887SPedro Giffuni #define SQL_SG_USAGE_ON_DOMAIN 0x00000001L 1678*24201887SPedro Giffuni #define SQL_SG_USAGE_ON_CHARACTER_SET 0x00000002L 1679*24201887SPedro Giffuni #define SQL_SG_USAGE_ON_COLLATION 0x00000004L 1680*24201887SPedro Giffuni #define SQL_SG_USAGE_ON_TRANSLATION 0x00000008L 1681*24201887SPedro Giffuni #define SQL_SG_WITH_GRANT_OPTION 0x00000010L 1682*24201887SPedro Giffuni #define SQL_SG_DELETE_TABLE 0x00000020L 1683*24201887SPedro Giffuni #define SQL_SG_INSERT_TABLE 0x00000040L 1684*24201887SPedro Giffuni #define SQL_SG_INSERT_COLUMN 0x00000080L 1685*24201887SPedro Giffuni #define SQL_SG_REFERENCES_TABLE 0x00000100L 1686*24201887SPedro Giffuni #define SQL_SG_REFERENCES_COLUMN 0x00000200L 1687*24201887SPedro Giffuni #define SQL_SG_SELECT_TABLE 0x00000400L 1688*24201887SPedro Giffuni #define SQL_SG_UPDATE_TABLE 0x00000800L 1689*24201887SPedro Giffuni #define SQL_SG_UPDATE_COLUMN 0x00001000L 1690*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1691*24201887SPedro Giffuni 1692*24201887SPedro Giffuni 1693*24201887SPedro Giffuni /* 1694*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_NUMERIC_VALUE_FUNCTIONS 1695*24201887SPedro Giffuni */ 1696*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1697*24201887SPedro Giffuni #define SQL_SNVF_BIT_LENGTH 0x00000001L 1698*24201887SPedro Giffuni #define SQL_SNVF_CHAR_LENGTH 0x00000002L 1699*24201887SPedro Giffuni #define SQL_SNVF_CHARACTER_LENGTH 0x00000004L 1700*24201887SPedro Giffuni #define SQL_SNVF_EXTRACT 0x00000008L 1701*24201887SPedro Giffuni #define SQL_SNVF_OCTET_LENGTH 0x00000010L 1702*24201887SPedro Giffuni #define SQL_SNVF_POSITION 0x00000020L 1703*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1704*24201887SPedro Giffuni 1705*24201887SPedro Giffuni 1706*24201887SPedro Giffuni /* 1707*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_PREDICATES 1708*24201887SPedro Giffuni */ 1709*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1710*24201887SPedro Giffuni #define SQL_SP_EXISTS 0x00000001L 1711*24201887SPedro Giffuni #define SQL_SP_ISNOTNULL 0x00000002L 1712*24201887SPedro Giffuni #define SQL_SP_ISNULL 0x00000004L 1713*24201887SPedro Giffuni #define SQL_SP_MATCH_FULL 0x00000008L 1714*24201887SPedro Giffuni #define SQL_SP_MATCH_PARTIAL 0x00000010L 1715*24201887SPedro Giffuni #define SQL_SP_MATCH_UNIQUE_FULL 0x00000020L 1716*24201887SPedro Giffuni #define SQL_SP_MATCH_UNIQUE_PARTIAL 0x00000040L 1717*24201887SPedro Giffuni #define SQL_SP_OVERLAPS 0x00000080L 1718*24201887SPedro Giffuni #define SQL_SP_UNIQUE 0x00000100L 1719*24201887SPedro Giffuni #define SQL_SP_LIKE 0x00000200L 1720*24201887SPedro Giffuni #define SQL_SP_IN 0x00000400L 1721*24201887SPedro Giffuni #define SQL_SP_BETWEEN 0x00000800L 1722*24201887SPedro Giffuni #define SQL_SP_COMPARISON 0x00001000L 1723*24201887SPedro Giffuni #define SQL_SP_QUANTIFIED_COMPARISON 0x00002000L 1724*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1725*24201887SPedro Giffuni 1726*24201887SPedro Giffuni 1727*24201887SPedro Giffuni /* 1728*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_RELATIONAL_JOIN_OPERATORS 1729*24201887SPedro Giffuni */ 1730*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1731*24201887SPedro Giffuni #define SQL_SRJO_CORRESPONDING_CLAUSE 0x00000001L 1732*24201887SPedro Giffuni #define SQL_SRJO_CROSS_JOIN 0x00000002L 1733*24201887SPedro Giffuni #define SQL_SRJO_EXCEPT_JOIN 0x00000004L 1734*24201887SPedro Giffuni #define SQL_SRJO_FULL_OUTER_JOIN 0x00000008L 1735*24201887SPedro Giffuni #define SQL_SRJO_INNER_JOIN 0x00000010L 1736*24201887SPedro Giffuni #define SQL_SRJO_INTERSECT_JOIN 0x00000020L 1737*24201887SPedro Giffuni #define SQL_SRJO_LEFT_OUTER_JOIN 0x00000040L 1738*24201887SPedro Giffuni #define SQL_SRJO_NATURAL_JOIN 0x00000080L 1739*24201887SPedro Giffuni #define SQL_SRJO_RIGHT_OUTER_JOIN 0x00000100L 1740*24201887SPedro Giffuni #define SQL_SRJO_UNION_JOIN 0x00000200L 1741*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1742*24201887SPedro Giffuni 1743*24201887SPedro Giffuni 1744*24201887SPedro Giffuni /* 1745*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_REVOKE 1746*24201887SPedro Giffuni */ 1747*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1748*24201887SPedro Giffuni #define SQL_SR_USAGE_ON_DOMAIN 0x00000001L 1749*24201887SPedro Giffuni #define SQL_SR_USAGE_ON_CHARACTER_SET 0x00000002L 1750*24201887SPedro Giffuni #define SQL_SR_USAGE_ON_COLLATION 0x00000004L 1751*24201887SPedro Giffuni #define SQL_SR_USAGE_ON_TRANSLATION 0x00000008L 1752*24201887SPedro Giffuni #define SQL_SR_GRANT_OPTION_FOR 0x00000010L 1753*24201887SPedro Giffuni #define SQL_SR_CASCADE 0x00000020L 1754*24201887SPedro Giffuni #define SQL_SR_RESTRICT 0x00000040L 1755*24201887SPedro Giffuni #define SQL_SR_DELETE_TABLE 0x00000080L 1756*24201887SPedro Giffuni #define SQL_SR_INSERT_TABLE 0x00000100L 1757*24201887SPedro Giffuni #define SQL_SR_INSERT_COLUMN 0x00000200L 1758*24201887SPedro Giffuni #define SQL_SR_REFERENCES_TABLE 0x00000400L 1759*24201887SPedro Giffuni #define SQL_SR_REFERENCES_COLUMN 0x00000800L 1760*24201887SPedro Giffuni #define SQL_SR_SELECT_TABLE 0x00001000L 1761*24201887SPedro Giffuni #define SQL_SR_UPDATE_TABLE 0x00002000L 1762*24201887SPedro Giffuni #define SQL_SR_UPDATE_COLUMN 0x00004000L 1763*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1764*24201887SPedro Giffuni 1765*24201887SPedro Giffuni 1766*24201887SPedro Giffuni /* 1767*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_ROW_VALUE_CONSTRUCTOR 1768*24201887SPedro Giffuni */ 1769*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1770*24201887SPedro Giffuni #define SQL_SRVC_VALUE_EXPRESSION 0x00000001L 1771*24201887SPedro Giffuni #define SQL_SRVC_NULL 0x00000002L 1772*24201887SPedro Giffuni #define SQL_SRVC_DEFAULT 0x00000004L 1773*24201887SPedro Giffuni #define SQL_SRVC_ROW_SUBQUERY 0x00000008L 1774*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1775*24201887SPedro Giffuni 1776*24201887SPedro Giffuni 1777*24201887SPedro Giffuni /* 1778*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_STRING_FUNCTIONS 1779*24201887SPedro Giffuni */ 1780*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1781*24201887SPedro Giffuni #define SQL_SSF_CONVERT 0x00000001L 1782*24201887SPedro Giffuni #define SQL_SSF_LOWER 0x00000002L 1783*24201887SPedro Giffuni #define SQL_SSF_UPPER 0x00000004L 1784*24201887SPedro Giffuni #define SQL_SSF_SUBSTRING 0x00000008L 1785*24201887SPedro Giffuni #define SQL_SSF_TRANSLATE 0x00000010L 1786*24201887SPedro Giffuni #define SQL_SSF_TRIM_BOTH 0x00000020L 1787*24201887SPedro Giffuni #define SQL_SSF_TRIM_LEADING 0x00000040L 1788*24201887SPedro Giffuni #define SQL_SSF_TRIM_TRAILING 0x00000080L 1789*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1790*24201887SPedro Giffuni 1791*24201887SPedro Giffuni 1792*24201887SPedro Giffuni /* 1793*24201887SPedro Giffuni * SQLGetInfo - SQL_SQL92_VALUE_EXPRESSIONS 1794*24201887SPedro Giffuni */ 1795*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1796*24201887SPedro Giffuni #define SQL_SVE_CASE 0x00000001L 1797*24201887SPedro Giffuni #define SQL_SVE_CAST 0x00000002L 1798*24201887SPedro Giffuni #define SQL_SVE_COALESCE 0x00000004L 1799*24201887SPedro Giffuni #define SQL_SVE_NULLIF 0x00000008L 1800*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1801*24201887SPedro Giffuni 1802*24201887SPedro Giffuni 1803*24201887SPedro Giffuni /* 1804*24201887SPedro Giffuni * SQLGetInfo - SQL_STANDARD_CLI_CONFORMANCE 1805*24201887SPedro Giffuni */ 1806*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1807*24201887SPedro Giffuni #define SQL_SCC_XOPEN_CLI_VERSION1 0x00000001L 1808*24201887SPedro Giffuni #define SQL_SCC_ISO92_CLI 0x00000002L 1809*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1810*24201887SPedro Giffuni 1811*24201887SPedro Giffuni 1812*24201887SPedro Giffuni /* 1813*24201887SPedro Giffuni * SQLGetInfo - SQL_STATIC_SENSITIVITY 1814*24201887SPedro Giffuni */ 1815*24201887SPedro Giffuni #define SQL_SS_ADDITIONS 0x00000001L 1816*24201887SPedro Giffuni #define SQL_SS_DELETIONS 0x00000002L 1817*24201887SPedro Giffuni #define SQL_SS_UPDATES 0x00000004L 1818*24201887SPedro Giffuni 1819*24201887SPedro Giffuni 1820*24201887SPedro Giffuni /* 1821*24201887SPedro Giffuni * SQLGetInfo - SQL_SUBQUERIES 1822*24201887SPedro Giffuni */ 1823*24201887SPedro Giffuni #define SQL_SQ_COMPARISON 0x00000001L 1824*24201887SPedro Giffuni #define SQL_SQ_EXISTS 0x00000002L 1825*24201887SPedro Giffuni #define SQL_SQ_IN 0x00000004L 1826*24201887SPedro Giffuni #define SQL_SQ_QUANTIFIED 0x00000008L 1827*24201887SPedro Giffuni #define SQL_SQ_CORRELATED_SUBQUERIES 0x00000010L 1828*24201887SPedro Giffuni 1829*24201887SPedro Giffuni 1830*24201887SPedro Giffuni /* 1831*24201887SPedro Giffuni * SQLGetInfo - SQL_SYSTEM_FUNCTIONS 1832*24201887SPedro Giffuni */ 1833*24201887SPedro Giffuni #define SQL_FN_SYS_USERNAME 0x00000001L 1834*24201887SPedro Giffuni #define SQL_FN_SYS_DBNAME 0x00000002L 1835*24201887SPedro Giffuni #define SQL_FN_SYS_IFNULL 0x00000004L 1836*24201887SPedro Giffuni 1837*24201887SPedro Giffuni 1838*24201887SPedro Giffuni /* 1839*24201887SPedro Giffuni * SQLGetInfo - SQL_STRING_FUNCTIONS 1840*24201887SPedro Giffuni */ 1841*24201887SPedro Giffuni #define SQL_FN_STR_CONCAT 0x00000001L 1842*24201887SPedro Giffuni #define SQL_FN_STR_INSERT 0x00000002L 1843*24201887SPedro Giffuni #define SQL_FN_STR_LEFT 0x00000004L 1844*24201887SPedro Giffuni #define SQL_FN_STR_LTRIM 0x00000008L 1845*24201887SPedro Giffuni #define SQL_FN_STR_LENGTH 0x00000010L 1846*24201887SPedro Giffuni #define SQL_FN_STR_LOCATE 0x00000020L 1847*24201887SPedro Giffuni #define SQL_FN_STR_LCASE 0x00000040L 1848*24201887SPedro Giffuni #define SQL_FN_STR_REPEAT 0x00000080L 1849*24201887SPedro Giffuni #define SQL_FN_STR_REPLACE 0x00000100L 1850*24201887SPedro Giffuni #define SQL_FN_STR_RIGHT 0x00000200L 1851*24201887SPedro Giffuni #define SQL_FN_STR_RTRIM 0x00000400L 1852*24201887SPedro Giffuni #define SQL_FN_STR_SUBSTRING 0x00000800L 1853*24201887SPedro Giffuni #define SQL_FN_STR_UCASE 0x00001000L 1854*24201887SPedro Giffuni #define SQL_FN_STR_ASCII 0x00002000L 1855*24201887SPedro Giffuni #define SQL_FN_STR_CHAR 0x00004000L 1856*24201887SPedro Giffuni #define SQL_FN_STR_DIFFERENCE 0x00008000L 1857*24201887SPedro Giffuni #define SQL_FN_STR_LOCATE_2 0x00010000L 1858*24201887SPedro Giffuni #define SQL_FN_STR_SOUNDEX 0x00020000L 1859*24201887SPedro Giffuni #define SQL_FN_STR_SPACE 0x00040000L 1860cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 1861*24201887SPedro Giffuni #define SQL_FN_STR_BIT_LENGTH 0x00080000L 1862*24201887SPedro Giffuni #define SQL_FN_STR_CHAR_LENGTH 0x00100000L 1863*24201887SPedro Giffuni #define SQL_FN_STR_CHARACTER_LENGTH 0x00200000L 1864*24201887SPedro Giffuni #define SQL_FN_STR_OCTET_LENGTH 0x00400000L 1865*24201887SPedro Giffuni #define SQL_FN_STR_POSITION 0x00800000L 1866*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1867cdf0e10cSrcweir 1868cdf0e10cSrcweir 1869*24201887SPedro Giffuni /* 1870*24201887SPedro Giffuni * SQLGetInfo - SQL_TIMEDATE_ADD_INTERVALS 1871*24201887SPedro Giffuni * SQLGetInfo - SQL_TIMEDATE_DIFF_INTERVALS 1872*24201887SPedro Giffuni */ 1873*24201887SPedro Giffuni #define SQL_FN_TSI_FRAC_SECOND 0x00000001L 1874*24201887SPedro Giffuni #define SQL_FN_TSI_SECOND 0x00000002L 1875*24201887SPedro Giffuni #define SQL_FN_TSI_MINUTE 0x00000004L 1876*24201887SPedro Giffuni #define SQL_FN_TSI_HOUR 0x00000008L 1877*24201887SPedro Giffuni #define SQL_FN_TSI_DAY 0x00000010L 1878*24201887SPedro Giffuni #define SQL_FN_TSI_WEEK 0x00000020L 1879*24201887SPedro Giffuni #define SQL_FN_TSI_MONTH 0x00000040L 1880*24201887SPedro Giffuni #define SQL_FN_TSI_QUARTER 0x00000080L 1881*24201887SPedro Giffuni #define SQL_FN_TSI_YEAR 0x00000100L 1882*24201887SPedro Giffuni 1883cdf0e10cSrcweir 1884*24201887SPedro Giffuni /* 1885*24201887SPedro Giffuni * SQLGetInfo - SQL_TIMEDATE_FUNCTIONS 1886*24201887SPedro Giffuni */ 1887*24201887SPedro Giffuni #define SQL_FN_TD_NOW 0x00000001L 1888*24201887SPedro Giffuni #define SQL_FN_TD_CURDATE 0x00000002L 1889*24201887SPedro Giffuni #define SQL_FN_TD_DAYOFMONTH 0x00000004L 1890*24201887SPedro Giffuni #define SQL_FN_TD_DAYOFWEEK 0x00000008L 1891*24201887SPedro Giffuni #define SQL_FN_TD_DAYOFYEAR 0x00000010L 1892*24201887SPedro Giffuni #define SQL_FN_TD_MONTH 0x00000020L 1893*24201887SPedro Giffuni #define SQL_FN_TD_QUARTER 0x00000040L 1894*24201887SPedro Giffuni #define SQL_FN_TD_WEEK 0x00000080L 1895*24201887SPedro Giffuni #define SQL_FN_TD_YEAR 0x00000100L 1896*24201887SPedro Giffuni #define SQL_FN_TD_CURTIME 0x00000200L 1897*24201887SPedro Giffuni #define SQL_FN_TD_HOUR 0x00000400L 1898*24201887SPedro Giffuni #define SQL_FN_TD_MINUTE 0x00000800L 1899*24201887SPedro Giffuni #define SQL_FN_TD_SECOND 0x00001000L 1900*24201887SPedro Giffuni #define SQL_FN_TD_TIMESTAMPADD 0x00002000L 1901*24201887SPedro Giffuni #define SQL_FN_TD_TIMESTAMPDIFF 0x00004000L 1902*24201887SPedro Giffuni #define SQL_FN_TD_DAYNAME 0x00008000L 1903*24201887SPedro Giffuni #define SQL_FN_TD_MONTHNAME 0x00010000L 1904cdf0e10cSrcweir #if (ODBCVER >= 0x0300) 1905*24201887SPedro Giffuni #define SQL_FN_TD_CURRENT_DATE 0x00020000L 1906*24201887SPedro Giffuni #define SQL_FN_TD_CURRENT_TIME 0x00040000L 1907*24201887SPedro Giffuni #define SQL_FN_TD_CURRENT_TIMESTAMP 0x00080000L 1908*24201887SPedro Giffuni #define SQL_FN_TD_EXTRACT 0x00100000L 1909*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1910*24201887SPedro Giffuni 1911*24201887SPedro Giffuni 1912*24201887SPedro Giffuni /* 1913*24201887SPedro Giffuni * SQLGetInfo - SQL_TXN_ISOLATION_OPTION 1914*24201887SPedro Giffuni */ 1915*24201887SPedro Giffuni #if (ODBCVER < 0x0300) 1916*24201887SPedro Giffuni #define SQL_TXN_VERSIONING 0x00000010L 1917*24201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 1918*24201887SPedro Giffuni 1919*24201887SPedro Giffuni 1920*24201887SPedro Giffuni /* 1921*24201887SPedro Giffuni * SQLGetInfo - SQL_UNION 1922*24201887SPedro Giffuni */ 1923*24201887SPedro Giffuni #define SQL_U_UNION 0x00000001L 1924*24201887SPedro Giffuni #define SQL_U_UNION_ALL 0x00000002L 1925*24201887SPedro Giffuni 1926*24201887SPedro Giffuni 1927*24201887SPedro Giffuni /* 1928*24201887SPedro Giffuni * SQLGetInfo - SQL_UNION_STATEMENT 1929*24201887SPedro Giffuni */ 1930*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1931*24201887SPedro Giffuni #define SQL_US_UNION SQL_U_UNION 1932*24201887SPedro Giffuni #define SQL_US_UNION_ALL SQL_U_UNION_ALL 1933*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1934*24201887SPedro Giffuni 1935*24201887SPedro Giffuni 1936*24201887SPedro Giffuni /* 1937*24201887SPedro Giffuni * SQLGetStmtAttr - ODBC 2.x attributes 1938*24201887SPedro Giffuni */ 1939*24201887SPedro Giffuni #define SQL_QUERY_TIMEOUT 0 1940*24201887SPedro Giffuni #define SQL_MAX_ROWS 1 1941*24201887SPedro Giffuni #define SQL_NOSCAN 2 1942*24201887SPedro Giffuni #define SQL_MAX_LENGTH 3 1943*24201887SPedro Giffuni #define SQL_ASYNC_ENABLE 4 1944*24201887SPedro Giffuni #define SQL_BIND_TYPE 5 1945*24201887SPedro Giffuni #define SQL_CURSOR_TYPE 6 1946*24201887SPedro Giffuni #define SQL_CONCURRENCY 7 1947*24201887SPedro Giffuni #define SQL_KEYSET_SIZE 8 1948*24201887SPedro Giffuni #define SQL_ROWSET_SIZE 9 1949*24201887SPedro Giffuni #define SQL_SIMULATE_CURSOR 10 1950*24201887SPedro Giffuni #define SQL_RETRIEVE_DATA 11 1951*24201887SPedro Giffuni #define SQL_USE_BOOKMARKS 12 1952*24201887SPedro Giffuni #define SQL_GET_BOOKMARK 13 1953*24201887SPedro Giffuni #define SQL_ROW_NUMBER 14 1954*24201887SPedro Giffuni 1955*24201887SPedro Giffuni 1956*24201887SPedro Giffuni /* 1957*24201887SPedro Giffuni * SQLGetStmtAttr - ODBC 3.x attributes 1958*24201887SPedro Giffuni */ 1959*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 1960*24201887SPedro Giffuni #define SQL_ATTR_ASYNC_ENABLE 4 1961*24201887SPedro Giffuni #define SQL_ATTR_CONCURRENCY SQL_CONCURRENCY 1962*24201887SPedro Giffuni #define SQL_ATTR_CURSOR_TYPE SQL_CURSOR_TYPE 1963*24201887SPedro Giffuni #define SQL_ATTR_ENABLE_AUTO_IPD 15 1964*24201887SPedro Giffuni #define SQL_ATTR_FETCH_BOOKMARK_PTR 16 1965*24201887SPedro Giffuni #define SQL_ATTR_KEYSET_SIZE SQL_KEYSET_SIZE 1966*24201887SPedro Giffuni #define SQL_ATTR_MAX_LENGTH SQL_MAX_LENGTH 1967*24201887SPedro Giffuni #define SQL_ATTR_MAX_ROWS SQL_MAX_ROWS 1968*24201887SPedro Giffuni #define SQL_ATTR_NOSCAN SQL_NOSCAN 1969*24201887SPedro Giffuni #define SQL_ATTR_PARAM_BIND_OFFSET_PTR 17 1970*24201887SPedro Giffuni #define SQL_ATTR_PARAM_BIND_TYPE 18 1971*24201887SPedro Giffuni #define SQL_ATTR_PARAM_OPERATION_PTR 19 1972*24201887SPedro Giffuni #define SQL_ATTR_PARAM_STATUS_PTR 20 1973*24201887SPedro Giffuni #define SQL_ATTR_PARAMS_PROCESSED_PTR 21 1974*24201887SPedro Giffuni #define SQL_ATTR_PARAMSET_SIZE 22 1975*24201887SPedro Giffuni #define SQL_ATTR_QUERY_TIMEOUT SQL_QUERY_TIMEOUT 1976*24201887SPedro Giffuni #define SQL_ATTR_RETRIEVE_DATA SQL_RETRIEVE_DATA 1977*24201887SPedro Giffuni #define SQL_ATTR_ROW_BIND_OFFSET_PTR 23 1978*24201887SPedro Giffuni #define SQL_ATTR_ROW_BIND_TYPE SQL_BIND_TYPE 1979*24201887SPedro Giffuni #define SQL_ATTR_ROW_NUMBER SQL_ROW_NUMBER /*GetStmtAttr*/ 1980*24201887SPedro Giffuni #define SQL_ATTR_ROW_OPERATION_PTR 24 1981*24201887SPedro Giffuni #define SQL_ATTR_ROW_STATUS_PTR 25 1982*24201887SPedro Giffuni #define SQL_ATTR_ROWS_FETCHED_PTR 26 1983*24201887SPedro Giffuni #define SQL_ATTR_ROW_ARRAY_SIZE 27 1984*24201887SPedro Giffuni #define SQL_ATTR_SIMULATE_CURSOR SQL_SIMULATE_CURSOR 1985*24201887SPedro Giffuni #define SQL_ATTR_USE_BOOKMARKS SQL_USE_BOOKMARKS 1986*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 1987*24201887SPedro Giffuni 1988*24201887SPedro Giffuni #if (ODBCVER < 0x0300) 1989*24201887SPedro Giffuni #define SQL_STMT_OPT_MAX SQL_ROW_NUMBER 1990*24201887SPedro Giffuni #define SQL_STMT_OPT_MIN SQL_QUERY_TIMEOUT 1991*24201887SPedro Giffuni #endif /* ODBCVER < 0x0300 */ 1992*24201887SPedro Giffuni 1993*24201887SPedro Giffuni 1994*24201887SPedro Giffuni /* 1995*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_ATTR_ASYNC_ENABLE 1996*24201887SPedro Giffuni */ 1997*24201887SPedro Giffuni #define SQL_ASYNC_ENABLE_OFF 0UL 1998*24201887SPedro Giffuni #define SQL_ASYNC_ENABLE_ON 1UL 1999*24201887SPedro Giffuni #define SQL_ASYNC_ENABLE_DEFAULT SQL_ASYNC_ENABLE_OFF 2000*24201887SPedro Giffuni 2001*24201887SPedro Giffuni 2002*24201887SPedro Giffuni /* 2003*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_ATTR_PARAM_BIND_TYPE 2004*24201887SPedro Giffuni */ 2005*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 2006*24201887SPedro Giffuni #define SQL_PARAM_BIND_BY_COLUMN 0UL 2007*24201887SPedro Giffuni #define SQL_PARAM_BIND_TYPE_DEFAULT SQL_PARAM_BIND_BY_COLUMN 2008*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 2009*24201887SPedro Giffuni 2010*24201887SPedro Giffuni 2011*24201887SPedro Giffuni /* 2012*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_BIND_TYPE 2013*24201887SPedro Giffuni */ 2014*24201887SPedro Giffuni #define SQL_BIND_BY_COLUMN 0UL 2015*24201887SPedro Giffuni #define SQL_BIND_TYPE_DEFAULT SQL_BIND_BY_COLUMN 2016*24201887SPedro Giffuni 2017*24201887SPedro Giffuni 2018*24201887SPedro Giffuni /* 2019*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_CONCURRENCY 2020*24201887SPedro Giffuni */ 2021*24201887SPedro Giffuni #define SQL_CONCUR_READ_ONLY 1 2022*24201887SPedro Giffuni #define SQL_CONCUR_LOCK 2 2023*24201887SPedro Giffuni #define SQL_CONCUR_ROWVER 3 2024*24201887SPedro Giffuni #define SQL_CONCUR_VALUES 4 2025*24201887SPedro Giffuni #define SQL_CONCUR_DEFAULT SQL_CONCUR_READ_ONLY 2026*24201887SPedro Giffuni 2027*24201887SPedro Giffuni 2028*24201887SPedro Giffuni /* 2029*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_CURSOR_TYPE 2030*24201887SPedro Giffuni */ 2031*24201887SPedro Giffuni #define SQL_CURSOR_FORWARD_ONLY 0UL 2032*24201887SPedro Giffuni #define SQL_CURSOR_KEYSET_DRIVEN 1UL 2033*24201887SPedro Giffuni #define SQL_CURSOR_DYNAMIC 2UL 2034*24201887SPedro Giffuni #define SQL_CURSOR_STATIC 3UL 2035*24201887SPedro Giffuni #define SQL_CURSOR_TYPE_DEFAULT SQL_CURSOR_FORWARD_ONLY 2036*24201887SPedro Giffuni 2037*24201887SPedro Giffuni 2038*24201887SPedro Giffuni /* 2039*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_KEYSET_SIZE 2040*24201887SPedro Giffuni */ 2041*24201887SPedro Giffuni #define SQL_KEYSET_SIZE_DEFAULT 0UL 2042*24201887SPedro Giffuni 2043*24201887SPedro Giffuni 2044*24201887SPedro Giffuni /* 2045*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_MAX_LENGTH 2046*24201887SPedro Giffuni */ 2047*24201887SPedro Giffuni #define SQL_MAX_LENGTH_DEFAULT 0UL 2048*24201887SPedro Giffuni 2049*24201887SPedro Giffuni 2050*24201887SPedro Giffuni /* 2051*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_MAX_ROWS 2052*24201887SPedro Giffuni */ 2053*24201887SPedro Giffuni #define SQL_MAX_ROWS_DEFAULT 0UL 2054*24201887SPedro Giffuni 2055*24201887SPedro Giffuni 2056*24201887SPedro Giffuni /* 2057*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_NOSCAN 2058*24201887SPedro Giffuni */ 2059*24201887SPedro Giffuni #define SQL_NOSCAN_OFF 0UL /* 1.0 FALSE */ 2060*24201887SPedro Giffuni #define SQL_NOSCAN_ON 1UL /* 1.0 TRUE */ 2061*24201887SPedro Giffuni #define SQL_NOSCAN_DEFAULT SQL_NOSCAN_OFF 2062*24201887SPedro Giffuni 2063*24201887SPedro Giffuni 2064*24201887SPedro Giffuni /* 2065*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_QUERY_TIMEOUT 2066*24201887SPedro Giffuni */ 2067*24201887SPedro Giffuni #define SQL_QUERY_TIMEOUT_DEFAULT 0UL 2068*24201887SPedro Giffuni 2069*24201887SPedro Giffuni 2070*24201887SPedro Giffuni /* 2071*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_RETRIEVE_DATA 2072*24201887SPedro Giffuni */ 2073*24201887SPedro Giffuni #define SQL_RD_OFF 0UL 2074*24201887SPedro Giffuni #define SQL_RD_ON 1UL 2075*24201887SPedro Giffuni #define SQL_RD_DEFAULT SQL_RD_ON 2076*24201887SPedro Giffuni 2077*24201887SPedro Giffuni 2078*24201887SPedro Giffuni /* 2079*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_ROWSET_SIZE 2080*24201887SPedro Giffuni */ 2081*24201887SPedro Giffuni #define SQL_ROWSET_SIZE_DEFAULT 1UL 2082*24201887SPedro Giffuni 2083*24201887SPedro Giffuni 2084*24201887SPedro Giffuni /* 2085*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_SIMULATE_CURSOR 2086*24201887SPedro Giffuni */ 2087*24201887SPedro Giffuni #define SQL_SC_NON_UNIQUE 0UL 2088*24201887SPedro Giffuni #define SQL_SC_TRY_UNIQUE 1UL 2089*24201887SPedro Giffuni #define SQL_SC_UNIQUE 2UL 2090*24201887SPedro Giffuni 2091*24201887SPedro Giffuni 2092*24201887SPedro Giffuni /* 2093*24201887SPedro Giffuni * SQLGetStmtAttr - SQL_USE_BOOKMARKS 2094*24201887SPedro Giffuni */ 2095*24201887SPedro Giffuni #define SQL_UB_OFF 0UL 2096*24201887SPedro Giffuni #define SQL_UB_ON 1UL 2097*24201887SPedro Giffuni #define SQL_UB_DEFAULT SQL_UB_OFF 2098*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 2099*24201887SPedro Giffuni #define SQL_UB_FIXED SQL_UB_ON 2100*24201887SPedro Giffuni #define SQL_UB_VARIABLE 2UL 2101*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 2102*24201887SPedro Giffuni 2103*24201887SPedro Giffuni 2104*24201887SPedro Giffuni /* 2105*24201887SPedro Giffuni * SQLGetTypeInfo - SEARCHABLE 2106*24201887SPedro Giffuni */ 2107*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 2108*24201887SPedro Giffuni #define SQL_COL_PRED_CHAR SQL_LIKE_ONLY 2109*24201887SPedro Giffuni #define SQL_COL_PRED_BASIC SQL_ALL_EXCEPT_LIKE 2110*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 2111*24201887SPedro Giffuni 2112*24201887SPedro Giffuni 2113*24201887SPedro Giffuni /* 2114*24201887SPedro Giffuni * SQLSetPos 2115*24201887SPedro Giffuni */ 2116*24201887SPedro Giffuni #define SQL_ENTIRE_ROWSET 0 2117cdf0e10cSrcweir 2118cdf0e10cSrcweir 2119*24201887SPedro Giffuni /* 2120*24201887SPedro Giffuni * SQLSetPos - Operation 2121*24201887SPedro Giffuni */ 2122*24201887SPedro Giffuni #define SQL_POSITION 0 2123*24201887SPedro Giffuni #define SQL_REFRESH 1 2124*24201887SPedro Giffuni #define SQL_UPDATE 2 2125*24201887SPedro Giffuni #define SQL_DELETE 3 2126*24201887SPedro Giffuni 2127*24201887SPedro Giffuni 2128*24201887SPedro Giffuni /* 2129*24201887SPedro Giffuni * SQLBulkOperations - Operation 2130*24201887SPedro Giffuni */ 2131*24201887SPedro Giffuni #define SQL_ADD 4 2132*24201887SPedro Giffuni #define SQL_SETPOS_MAX_OPTION_VALUE SQL_ADD 2133*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 2134*24201887SPedro Giffuni #define SQL_UPDATE_BY_BOOKMARK 5 2135*24201887SPedro Giffuni #define SQL_DELETE_BY_BOOKMARK 6 2136*24201887SPedro Giffuni #define SQL_FETCH_BY_BOOKMARK 7 2137*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 2138*24201887SPedro Giffuni 2139*24201887SPedro Giffuni 2140*24201887SPedro Giffuni /* 2141*24201887SPedro Giffuni * SQLSetPos - LockType 2142*24201887SPedro Giffuni */ 2143*24201887SPedro Giffuni #define SQL_LOCK_NO_CHANGE 0 2144*24201887SPedro Giffuni #define SQL_LOCK_EXCLUSIVE 1 2145*24201887SPedro Giffuni #define SQL_LOCK_UNLOCK 2 2146*24201887SPedro Giffuni #define SQL_SETPOS_MAX_LOCK_VALUE SQL_LOCK_UNLOCK 2147*24201887SPedro Giffuni 2148*24201887SPedro Giffuni 2149*24201887SPedro Giffuni /* 2150*24201887SPedro Giffuni * SQLSetPos macros 2151*24201887SPedro Giffuni */ 2152*24201887SPedro Giffuni #define SQL_POSITION_TO(hstmt,irow) \ 2153*24201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_POSITION,SQL_LOCK_NO_CHANGE) 2154*24201887SPedro Giffuni #define SQL_LOCK_RECORD(hstmt,irow,fLock) \ 2155*24201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_POSITION,fLock) 2156*24201887SPedro Giffuni #define SQL_REFRESH_RECORD(hstmt,irow,fLock) \ 2157*24201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_REFRESH,fLock) 2158*24201887SPedro Giffuni #define SQL_UPDATE_RECORD(hstmt,irow) \ 2159*24201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_UPDATE,SQL_LOCK_NO_CHANGE) 2160*24201887SPedro Giffuni #define SQL_DELETE_RECORD(hstmt,irow) \ 2161*24201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_DELETE,SQL_LOCK_NO_CHANGE) 2162*24201887SPedro Giffuni #define SQL_ADD_RECORD(hstmt,irow) \ 2163*24201887SPedro Giffuni SQLSetPos(hstmt,irow,SQL_ADD,SQL_LOCK_NO_CHANGE) 2164cdf0e10cSrcweir 2165cdf0e10cSrcweir 2166*24201887SPedro Giffuni /* 2167*24201887SPedro Giffuni * SQLSpecialColumns - Column types and scopes 2168*24201887SPedro Giffuni */ 2169*24201887SPedro Giffuni #define SQL_BEST_ROWID 1 2170*24201887SPedro Giffuni #define SQL_ROWVER 2 2171cdf0e10cSrcweir 2172*24201887SPedro Giffuni 2173*24201887SPedro Giffuni /* 2174*24201887SPedro Giffuni * All the ODBC keywords 2175*24201887SPedro Giffuni */ 2176*24201887SPedro Giffuni #define SQL_ODBC_KEYWORDS \ 2177*24201887SPedro 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 2210*24201887SPedro Giffuni /* 2211*24201887SPedro Giffuni * ---------------------------------------------------------------------- 2212*24201887SPedro Giffuni * Level 2 Functions 2213*24201887SPedro Giffuni * ---------------------------------------------------------------------- 2214*24201887SPedro Giffuni */ 2215cdf0e10cSrcweir 2216*24201887SPedro Giffuni /* 2217*24201887SPedro Giffuni * SQLExtendedFetch - fFetchType 2218*24201887SPedro Giffuni */ 2219*24201887SPedro Giffuni #define SQL_FETCH_BOOKMARK 8 2220*24201887SPedro Giffuni 2221*24201887SPedro Giffuni 2222*24201887SPedro Giffuni /* 2223*24201887SPedro Giffuni * SQLExtendedFetch - rgfRowStatus 2224*24201887SPedro Giffuni */ 2225*24201887SPedro Giffuni #define SQL_ROW_SUCCESS 0 2226*24201887SPedro Giffuni #define SQL_ROW_DELETED 1 2227*24201887SPedro Giffuni #define SQL_ROW_UPDATED 2 2228*24201887SPedro Giffuni #define SQL_ROW_NOROW 3 2229*24201887SPedro Giffuni #define SQL_ROW_ADDED 4 2230*24201887SPedro Giffuni #define SQL_ROW_ERROR 5 2231*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 2232*24201887SPedro Giffuni #define SQL_ROW_SUCCESS_WITH_INFO 6 2233*24201887SPedro Giffuni #define SQL_ROW_PROCEED 0 2234*24201887SPedro Giffuni #define SQL_ROW_IGNORE 1 2235cdf0e10cSrcweir #endif 2236cdf0e10cSrcweir 2237cdf0e10cSrcweir 2238*24201887SPedro Giffuni /* 2239*24201887SPedro Giffuni * SQL_DESC_ARRAY_STATUS_PTR 2240*24201887SPedro Giffuni */ 2241*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 2242*24201887SPedro Giffuni #define SQL_PARAM_SUCCESS 0 2243*24201887SPedro Giffuni #define SQL_PARAM_SUCCESS_WITH_INFO 6 2244*24201887SPedro Giffuni #define SQL_PARAM_ERROR 5 2245*24201887SPedro Giffuni #define SQL_PARAM_UNUSED 7 2246*24201887SPedro Giffuni #define SQL_PARAM_DIAG_UNAVAILABLE 1 2247*24201887SPedro Giffuni 2248*24201887SPedro Giffuni #define SQL_PARAM_PROCEED 0 2249*24201887SPedro Giffuni #define SQL_PARAM_IGNORE 1 2250*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 2251*24201887SPedro Giffuni 2252cdf0e10cSrcweir 2253*24201887SPedro Giffuni /* 2254*24201887SPedro Giffuni * SQLForeignKeys - UPDATE_RULE/DELETE_RULE 2255*24201887SPedro Giffuni */ 2256*24201887SPedro Giffuni #define SQL_CASCADE 0 2257*24201887SPedro Giffuni #define SQL_RESTRICT 1 2258*24201887SPedro Giffuni #define SQL_SET_NULL 2 2259cdf0e10cSrcweir 2260*24201887SPedro Giffuni #if (ODBCVER >= 0x0250) 2261*24201887SPedro Giffuni #define SQL_NO_ACTION 3 2262*24201887SPedro Giffuni #define SQL_SET_DEFAULT 4 2263*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0250 */ 2264*24201887SPedro Giffuni 2265*24201887SPedro Giffuni 2266*24201887SPedro Giffuni /* 2267*24201887SPedro Giffuni * SQLForeignKeys - DEFERABILITY 2268*24201887SPedro Giffuni */ 2269*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 2270*24201887SPedro Giffuni #define SQL_INITIALLY_DEFERRED 5 2271*24201887SPedro Giffuni #define SQL_INITIALLY_IMMEDIATE 6 2272*24201887SPedro Giffuni #define SQL_NOT_DEFERRABLE 7 2273*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 2274cdf0e10cSrcweir 2275cdf0e10cSrcweir 2276cdf0e10cSrcweir /* 2277*24201887SPedro Giffuni * SQLBindParameter - fParamType 2278*24201887SPedro Giffuni * SQLProcedureColumns - COLUMN_TYPE 2279cdf0e10cSrcweir */ 2280*24201887SPedro Giffuni #define SQL_PARAM_TYPE_UNKNOWN 0 2281*24201887SPedro Giffuni #define SQL_PARAM_INPUT 1 2282*24201887SPedro Giffuni #define SQL_PARAM_INPUT_OUTPUT 2 2283*24201887SPedro Giffuni #define SQL_RESULT_COL 3 2284*24201887SPedro Giffuni #define SQL_PARAM_OUTPUT 4 2285*24201887SPedro Giffuni #define SQL_RETURN_VALUE 5 2286cdf0e10cSrcweir 2287*24201887SPedro Giffuni 2288*24201887SPedro Giffuni /* 2289*24201887SPedro Giffuni * SQLProcedures - PROCEDURE_TYPE 2290*24201887SPedro Giffuni */ 2291*24201887SPedro Giffuni #define SQL_PT_UNKNOWN 0 2292*24201887SPedro Giffuni #define SQL_PT_PROCEDURE 1 2293*24201887SPedro Giffuni #define SQL_PT_FUNCTION 2 2294*24201887SPedro Giffuni 2295*24201887SPedro Giffuni 2296*24201887SPedro Giffuni /* 2297*24201887SPedro Giffuni * SQLSetParam to SQLBindParameter conversion 2298*24201887SPedro Giffuni */ 2299*24201887SPedro Giffuni #define SQL_PARAM_TYPE_DEFAULT SQL_PARAM_INPUT_OUTPUT 2300*24201887SPedro Giffuni #define SQL_SETPARAM_VALUE_MAX (-1L) 2301*24201887SPedro Giffuni 2302*24201887SPedro Giffuni 2303*24201887SPedro Giffuni /* 2304*24201887SPedro Giffuni * SQLStatistics - fAccuracy 2305*24201887SPedro Giffuni */ 2306*24201887SPedro Giffuni #define SQL_QUICK 0 2307*24201887SPedro Giffuni #define SQL_ENSURE 1 2308*24201887SPedro Giffuni 2309*24201887SPedro Giffuni 2310*24201887SPedro Giffuni /* 2311*24201887SPedro Giffuni * SQLStatistics - TYPE 2312*24201887SPedro Giffuni */ 2313*24201887SPedro Giffuni #define SQL_TABLE_STAT 0 2314*24201887SPedro Giffuni 2315*24201887SPedro Giffuni 2316*24201887SPedro Giffuni /* 2317*24201887SPedro Giffuni * SQLTables 2318*24201887SPedro Giffuni */ 2319*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 2320*24201887SPedro Giffuni #define SQL_ALL_CATALOGS "%" 2321*24201887SPedro Giffuni #define SQL_ALL_SCHEMAS "%" 2322*24201887SPedro Giffuni #define SQL_ALL_TABLE_TYPES "%" 2323*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 2324*24201887SPedro Giffuni 2325*24201887SPedro Giffuni /* 2326*24201887SPedro Giffuni * SQLSpecialColumns - PSEUDO_COLUMN 2327*24201887SPedro Giffuni */ 2328*24201887SPedro Giffuni #define SQL_PC_NOT_PSEUDO 1 2329*24201887SPedro Giffuni 2330*24201887SPedro Giffuni 2331*24201887SPedro Giffuni /* 2332*24201887SPedro Giffuni * Deprecated defines from prior versions of ODBC 2333*24201887SPedro Giffuni */ 2334*24201887SPedro Giffuni #define SQL_DATABASE_NAME 16 2335*24201887SPedro Giffuni #define SQL_FD_FETCH_PREV SQL_FD_FETCH_PRIOR 2336*24201887SPedro Giffuni #define SQL_FETCH_PREV SQL_FETCH_PRIOR 2337*24201887SPedro Giffuni #define SQL_CONCUR_TIMESTAMP SQL_CONCUR_ROWVER 2338*24201887SPedro Giffuni #define SQL_SCCO_OPT_TIMESTAMP SQL_SCCO_OPT_ROWVER 2339*24201887SPedro Giffuni #define SQL_CC_DELETE SQL_CB_DELETE 2340*24201887SPedro Giffuni #define SQL_CR_DELETE SQL_CB_DELETE 2341*24201887SPedro Giffuni #define SQL_CC_CLOSE SQL_CB_CLOSE 2342*24201887SPedro Giffuni #define SQL_CR_CLOSE SQL_CB_CLOSE 2343*24201887SPedro Giffuni #define SQL_CC_PRESERVE SQL_CB_PRESERVE 2344*24201887SPedro Giffuni #define SQL_CR_PRESERVE SQL_CB_PRESERVE 2345*24201887SPedro Giffuni #if (ODBCVER < 0x0200) 2346*24201887SPedro Giffuni #define SQL_FETCH_RESUME 7 2347cdf0e10cSrcweir #endif 2348*24201887SPedro Giffuni #define SQL_SCROLL_FORWARD_ONLY 0L 2349*24201887SPedro Giffuni #define SQL_SCROLL_KEYSET_DRIVEN (-1L) 2350*24201887SPedro Giffuni #define SQL_SCROLL_DYNAMIC (-2L) 2351*24201887SPedro Giffuni #define SQL_SCROLL_STATIC (-3L) 2352*24201887SPedro Giffuni 2353*24201887SPedro Giffuni 2354*24201887SPedro Giffuni /* 2355*24201887SPedro Giffuni * Level 1 function prototypes 2356*24201887SPedro Giffuni */ 2357*24201887SPedro Giffuni SQLRETURN SQL_API SQLDriverConnect ( 2358*24201887SPedro Giffuni SQLHDBC hdbc, 2359*24201887SPedro Giffuni SQLHWND hwnd, 2360*24201887SPedro Giffuni SQLCHAR * szConnStrIn, 2361*24201887SPedro Giffuni SQLSMALLINT cbConnStrIn, 2362*24201887SPedro Giffuni SQLCHAR * szConnStrOut, 2363*24201887SPedro Giffuni SQLSMALLINT cbConnStrOutMax, 2364*24201887SPedro Giffuni SQLSMALLINT * pcbConnStrOut, 2365*24201887SPedro Giffuni SQLUSMALLINT fDriverCompletion); 2366*24201887SPedro Giffuni 2367*24201887SPedro Giffuni /* 2368*24201887SPedro Giffuni * Level 2 function prototypes 2369*24201887SPedro Giffuni */ 2370*24201887SPedro Giffuni 2371*24201887SPedro Giffuni SQLRETURN SQL_API SQLBrowseConnect ( 2372*24201887SPedro Giffuni SQLHDBC hdbc, 2373*24201887SPedro Giffuni SQLCHAR * szConnStrIn, 2374*24201887SPedro Giffuni SQLSMALLINT cbConnStrIn, 2375*24201887SPedro Giffuni SQLCHAR * szConnStrOut, 2376*24201887SPedro Giffuni SQLSMALLINT cbConnStrOutMax, 2377*24201887SPedro Giffuni SQLSMALLINT * pcbConnStrOut); 2378*24201887SPedro Giffuni 2379*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 2380*24201887SPedro Giffuni SQLRETURN SQL_API SQLBulkOperations ( 2381*24201887SPedro Giffuni SQLHSTMT StatementHandle, 2382*24201887SPedro Giffuni SQLSMALLINT Operation); 2383*24201887SPedro Giffuni #endif /* ODBCVER >= 0x0300 */ 2384*24201887SPedro Giffuni 2385*24201887SPedro Giffuni SQLRETURN SQL_API SQLColAttributes ( 2386*24201887SPedro Giffuni SQLHSTMT hstmt, 2387*24201887SPedro Giffuni SQLUSMALLINT icol, 2388*24201887SPedro Giffuni SQLUSMALLINT fDescType, 2389*24201887SPedro Giffuni SQLPOINTER rgbDesc, 2390*24201887SPedro Giffuni SQLSMALLINT cbDescMax, 2391*24201887SPedro Giffuni SQLSMALLINT * pcbDesc, 2392*24201887SPedro Giffuni SQLLEN * pfDesc); 2393*24201887SPedro Giffuni 2394*24201887SPedro Giffuni SQLRETURN SQL_API SQLColumnPrivileges ( 2395*24201887SPedro Giffuni SQLHSTMT hstmt, 2396*24201887SPedro Giffuni SQLCHAR * szCatalogName, 2397*24201887SPedro Giffuni SQLSMALLINT cbCatalogName, 2398*24201887SPedro Giffuni SQLCHAR * szSchemaName, 2399*24201887SPedro Giffuni SQLSMALLINT cbSchemaName, 2400*24201887SPedro Giffuni SQLCHAR * szTableName, 2401*24201887SPedro Giffuni SQLSMALLINT cbTableName, 2402*24201887SPedro Giffuni SQLCHAR * szColumnName, 2403*24201887SPedro Giffuni SQLSMALLINT cbColumnName); 2404*24201887SPedro Giffuni 2405*24201887SPedro Giffuni SQLRETURN SQL_API SQLDescribeParam ( 2406*24201887SPedro Giffuni SQLHSTMT hstmt, 2407*24201887SPedro Giffuni SQLUSMALLINT ipar, 2408*24201887SPedro Giffuni SQLSMALLINT * pfSqlType, 2409*24201887SPedro Giffuni SQLULEN * pcbParamDef, 2410*24201887SPedro Giffuni SQLSMALLINT * pibScale, 2411*24201887SPedro Giffuni SQLSMALLINT * pfNullable); 2412*24201887SPedro Giffuni 2413*24201887SPedro Giffuni SQLRETURN SQL_API SQLExtendedFetch ( 2414*24201887SPedro Giffuni SQLHSTMT hstmt, 2415*24201887SPedro Giffuni SQLUSMALLINT fFetchType, 2416*24201887SPedro Giffuni SQLLEN irow, 2417*24201887SPedro Giffuni SQLULEN * pcrow, 2418*24201887SPedro Giffuni SQLUSMALLINT * rgfRowStatus); 2419*24201887SPedro Giffuni 2420*24201887SPedro Giffuni SQLRETURN SQL_API SQLForeignKeys ( 2421*24201887SPedro Giffuni SQLHSTMT hstmt, 2422*24201887SPedro Giffuni SQLCHAR * szPkCatalogName, 2423*24201887SPedro Giffuni SQLSMALLINT cbPkCatalogName, 2424*24201887SPedro Giffuni SQLCHAR * szPkSchemaName, 2425*24201887SPedro Giffuni SQLSMALLINT cbPkSchemaName, 2426*24201887SPedro Giffuni SQLCHAR * szPkTableName, 2427*24201887SPedro Giffuni SQLSMALLINT cbPkTableName, 2428*24201887SPedro Giffuni SQLCHAR * szFkCatalogName, 2429*24201887SPedro Giffuni SQLSMALLINT cbFkCatalogName, 2430*24201887SPedro Giffuni SQLCHAR * szFkSchemaName, 2431*24201887SPedro Giffuni SQLSMALLINT cbFkSchemaName, 2432*24201887SPedro Giffuni SQLCHAR * szFkTableName, 2433*24201887SPedro Giffuni SQLSMALLINT cbFkTableName); 2434*24201887SPedro Giffuni 2435*24201887SPedro Giffuni SQLRETURN SQL_API SQLMoreResults ( 2436*24201887SPedro Giffuni SQLHSTMT hstmt); 2437*24201887SPedro Giffuni 2438*24201887SPedro Giffuni SQLRETURN SQL_API SQLNativeSql ( 2439*24201887SPedro Giffuni SQLHDBC hdbc, 2440*24201887SPedro Giffuni SQLCHAR * szSqlStrIn, 2441*24201887SPedro Giffuni SQLINTEGER cbSqlStrIn, 2442*24201887SPedro Giffuni SQLCHAR * szSqlStr, 2443*24201887SPedro Giffuni SQLINTEGER cbSqlStrMax, 2444*24201887SPedro Giffuni SQLINTEGER * pcbSqlStr); 2445*24201887SPedro Giffuni 2446*24201887SPedro Giffuni SQLRETURN SQL_API SQLNumParams ( 2447*24201887SPedro Giffuni SQLHSTMT hstmt, 2448*24201887SPedro Giffuni SQLSMALLINT * pcpar); 2449*24201887SPedro Giffuni 2450*24201887SPedro Giffuni SQLRETURN SQL_API SQLParamOptions ( 2451*24201887SPedro Giffuni SQLHSTMT hstmt, 2452*24201887SPedro Giffuni SQLULEN crow, 2453*24201887SPedro Giffuni SQLULEN * pirow); 2454*24201887SPedro Giffuni 2455*24201887SPedro Giffuni SQLRETURN SQL_API SQLPrimaryKeys ( 2456*24201887SPedro Giffuni SQLHSTMT hstmt, 2457*24201887SPedro Giffuni SQLCHAR * szCatalogName, 2458*24201887SPedro Giffuni SQLSMALLINT cbCatalogName, 2459*24201887SPedro Giffuni SQLCHAR * szSchemaName, 2460*24201887SPedro Giffuni SQLSMALLINT cbSchemaName, 2461*24201887SPedro Giffuni SQLCHAR * szTableName, 2462*24201887SPedro Giffuni SQLSMALLINT cbTableName); 2463*24201887SPedro Giffuni 2464*24201887SPedro Giffuni SQLRETURN SQL_API SQLProcedureColumns ( 2465*24201887SPedro Giffuni SQLHSTMT hstmt, 2466*24201887SPedro Giffuni SQLCHAR * szCatalogName, 2467*24201887SPedro Giffuni SQLSMALLINT cbCatalogName, 2468*24201887SPedro Giffuni SQLCHAR * szSchemaName, 2469*24201887SPedro Giffuni SQLSMALLINT cbSchemaName, 2470*24201887SPedro Giffuni SQLCHAR * szProcName, 2471*24201887SPedro Giffuni SQLSMALLINT cbProcName, 2472*24201887SPedro Giffuni SQLCHAR * szColumnName, 2473*24201887SPedro Giffuni SQLSMALLINT cbColumnName); 2474*24201887SPedro Giffuni 2475*24201887SPedro Giffuni SQLRETURN SQL_API SQLProcedures ( 2476*24201887SPedro Giffuni SQLHSTMT hstmt, 2477*24201887SPedro Giffuni SQLCHAR * szCatalogName, 2478*24201887SPedro Giffuni SQLSMALLINT cbCatalogName, 2479*24201887SPedro Giffuni SQLCHAR * szSchemaName, 2480*24201887SPedro Giffuni SQLSMALLINT cbSchemaName, 2481*24201887SPedro Giffuni SQLCHAR * szProcName, 2482*24201887SPedro Giffuni SQLSMALLINT cbProcName); 2483*24201887SPedro Giffuni 2484*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetPos ( 2485*24201887SPedro Giffuni SQLHSTMT hstmt, 2486*24201887SPedro Giffuni SQLSETPOSIROW irow, 2487*24201887SPedro Giffuni SQLUSMALLINT fOption, 2488*24201887SPedro Giffuni SQLUSMALLINT fLock); 2489*24201887SPedro Giffuni 2490*24201887SPedro Giffuni SQLRETURN SQL_API SQLTablePrivileges ( 2491*24201887SPedro Giffuni SQLHSTMT hstmt, 2492*24201887SPedro Giffuni SQLCHAR * szCatalogName, 2493*24201887SPedro Giffuni SQLSMALLINT cbCatalogName, 2494*24201887SPedro Giffuni SQLCHAR * szSchemaName, 2495*24201887SPedro Giffuni SQLSMALLINT cbSchemaName, 2496*24201887SPedro Giffuni SQLCHAR * szTableName, 2497*24201887SPedro Giffuni SQLSMALLINT cbTableName); 2498*24201887SPedro Giffuni 2499*24201887SPedro Giffuni SQLRETURN SQL_API SQLDrivers ( 2500*24201887SPedro Giffuni SQLHENV henv, 2501*24201887SPedro Giffuni SQLUSMALLINT fDirection, 2502*24201887SPedro Giffuni SQLCHAR * szDriverDesc, 2503*24201887SPedro Giffuni SQLSMALLINT cbDriverDescMax, 2504*24201887SPedro Giffuni SQLSMALLINT * pcbDriverDesc, 2505*24201887SPedro Giffuni SQLCHAR * szDriverAttributes, 2506*24201887SPedro Giffuni SQLSMALLINT cbDrvrAttrMax, 2507*24201887SPedro Giffuni SQLSMALLINT * pcbDrvrAttr); 2508*24201887SPedro Giffuni 2509*24201887SPedro Giffuni SQLRETURN SQL_API SQLBindParameter ( 2510*24201887SPedro Giffuni SQLHSTMT hstmt, 2511*24201887SPedro Giffuni SQLUSMALLINT ipar, 2512*24201887SPedro Giffuni SQLSMALLINT fParamType, 2513*24201887SPedro Giffuni SQLSMALLINT fCType, 2514*24201887SPedro Giffuni SQLSMALLINT fSqlType, 2515*24201887SPedro Giffuni SQLULEN cbColDef, 2516*24201887SPedro Giffuni SQLSMALLINT ibScale, 2517*24201887SPedro Giffuni SQLPOINTER rgbValue, 2518*24201887SPedro Giffuni SQLLEN cbValueMax, 2519*24201887SPedro Giffuni SQLLEN * pcbValue); 2520*24201887SPedro Giffuni 2521*24201887SPedro Giffuni /* 2522*24201887SPedro Giffuni * Depreciated - use SQLSetStmtOptions 2523*24201887SPedro Giffuni */ 2524*24201887SPedro Giffuni SQLRETURN SQL_API SQLSetScrollOptions ( /* Use SQLSetStmtOptions */ 2525*24201887SPedro Giffuni SQLHSTMT hstmt, 2526*24201887SPedro Giffuni SQLUSMALLINT fConcurrency, 2527*24201887SPedro Giffuni SQLLEN crowKeyset, 2528*24201887SPedro Giffuni SQLUSMALLINT crowRowset); 2529*24201887SPedro Giffuni 2530*24201887SPedro Giffuni 2531*24201887SPedro Giffuni /* 2532*24201887SPedro Giffuni * SQLAllocHandleStd - make SQLAllocHandle compatible with X/Open standard 2533*24201887SPedro Giffuni * 2534*24201887SPedro Giffuni * NOTE: An application should not call SQLAllocHandleStd directly 2535*24201887SPedro Giffuni */ 2536*24201887SPedro Giffuni #ifdef ODBC_STD 2537*24201887SPedro Giffuni #define SQLAllocHandle SQLAllocHandleStd 2538*24201887SPedro Giffuni #define SQLAllocEnv(phenv) \ 2539*24201887SPedro Giffuni SQLAllocHandleStd(SQL_HANDLE_ENV, SQL_NULL_HANDLE, phenv) 2540cdf0e10cSrcweir 2541*24201887SPedro Giffuni #if (ODBCVER >= 0x0300) 2542*24201887SPedro Giffuni SQLRETURN SQL_API SQLAllocHandleStd ( 2543*24201887SPedro Giffuni SQLSMALLINT fHandleType, 2544*24201887SPedro Giffuni SQLHANDLE hInput, 2545*24201887SPedro Giffuni SQLHANDLE * phOutput); 2546cdf0e10cSrcweir #endif 2547cdf0e10cSrcweir 2548*24201887SPedro Giffuni 2549*24201887SPedro Giffuni /* Internal type subcodes */ 2550*24201887SPedro Giffuni #define SQL_YEAR SQL_CODE_YEAR 2551*24201887SPedro Giffuni #define SQL_MONTH SQL_CODE_MONTH 2552*24201887SPedro Giffuni #define SQL_DAY SQL_CODE_DAY 2553*24201887SPedro Giffuni #define SQL_HOUR SQL_CODE_HOUR 2554*24201887SPedro Giffuni #define SQL_MINUTE SQL_CODE_MINUTE 2555*24201887SPedro Giffuni #define SQL_SECOND SQL_CODE_SECOND 2556*24201887SPedro Giffuni #define SQL_YEAR_TO_MONTH SQL_CODE_YEAR_TO_MONTH 2557*24201887SPedro Giffuni #define SQL_DAY_TO_HOUR SQL_CODE_DAY_TO_HOUR 2558*24201887SPedro Giffuni #define SQL_DAY_TO_MINUTE SQL_CODE_DAY_TO_MINUTE 2559*24201887SPedro Giffuni #define SQL_DAY_TO_SECOND SQL_CODE_DAY_TO_SECOND 2560*24201887SPedro Giffuni #define SQL_HOUR_TO_MINUTE SQL_CODE_HOUR_TO_MINUTE 2561*24201887SPedro Giffuni #define SQL_HOUR_TO_SECOND SQL_CODE_HOUR_TO_SECOND 2562*24201887SPedro Giffuni #define SQL_MINUTE_TO_SECOND SQL_CODE_MINUTE_TO_SECOND 2563*24201887SPedro Giffuni #endif /* ODBC_STD */ 2564*24201887SPedro Giffuni 2565*24201887SPedro Giffuni 2566*24201887SPedro Giffuni #ifdef __cplusplus 2567*24201887SPedro Giffuni } 2568cdf0e10cSrcweir #endif 2569*24201887SPedro Giffuni 2570*24201887SPedro Giffuni #include <odbc/sqlucode.h> 2571*24201887SPedro Giffuni 2572*24201887SPedro Giffuni #endif /* _SQLEXT_H */ 2573