1/************************************************** 2 * sql.h
| 1/* 2 * sql.h
|
3 *
| 3 *
|
4 * These should be consistent with the MS version.
| 4 * $Id: sql.h,v 1.9 2006/01/20 15:58:34 source Exp $
|
5 *
| 5 *
|
6 **************************************************/ 7#ifndef __SQL_H 8#define __SQL_H
| 6 * ODBC defines 7 * 8 * The iODBC driver manager. 9 * 10 * Copyright (C) 1995 by Ke Jin <kejin@empress.com> 11 * Copyright (C) 1996-2006 by OpenLink Software <iodbc@openlinksw.com> 12 * All Rights Reserved. 13 * 14 * This software is released under the terms of either of the following 15 * licenses: 16 * 17 * - GNU Library General Public License (see LICENSE.LGPL) 18 * - The BSD License (see LICENSE.BSD). 19 * 20 * Note that the only valid version of the LGPL license as far as this 21 * project is concerned is the original GNU Library General Public License 22 * Version 2, dated June 1991. 23 * 24 * While not mandated by the BSD license, any patches you make to the 25 * iODBC source code may be contributed back into the iODBC project 26 * at your discretion. Contributions will benefit the Open Source and 27 * Data Access community as a whole. Submissions may be made at: 28 * 29 * http://www.iodbc.org 30 * 31 * 32 * GNU Library Generic Public License Version 2 33 * ============================================ 34 * This library is free software; you can redistribute it and/or 35 * modify it under the terms of the GNU Library General Public 36 * License as published by the Free Software Foundation; only 37 * Version 2 of the License dated June 1991. 38 * 39 * This library is distributed in the hope that it will be useful, 40 * but WITHOUT ANY WARRANTY; without even the implied warranty of 41 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 42 * Library General Public License for more details. 43 * 44 * You should have received a copy of the GNU Library General Public 45 * License along with this library; if not, write to the Free 46 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 47 * 48 * 49 * The BSD License 50 * =============== 51 * Redistribution and use in source and binary forms, with or without 52 * modification, are permitted provided that the following conditions 53 * are met: 54 * 55 * 1. Redistributions of source code must retain the above copyright 56 * notice, this list of conditions and the following disclaimer. 57 * 2. Redistributions in binary form must reproduce the above copyright 58 * notice, this list of conditions and the following disclaimer in 59 * the documentation and/or other materials provided with the 60 * distribution. 61 * 3. Neither the name of OpenLink Software Inc. nor the names of its 62 * contributors may be used to endorse or promote products derived 63 * from this software without specific prior written permission. 64 * 65 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 66 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 67 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 68 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL OPENLINK OR 69 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 70 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 71 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 72 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 73 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 74 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 75 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 76 */
|
9
| 77
|
| 78#ifndef _SQL_H 79#define _SQL_H
|
10
| 80
|
11/**************************** 12 * default to 3.51 declare something else before here and you get a whole new ball of wax 13 ***************************/
| 81/* 82 * Set default specification to ODBC 3.51 83 */
|
14#ifndef ODBCVER
| 84#ifndef ODBCVER
|
15#define ODBCVER 0x0351
| 85#define ODBCVER 0x0351
|
16#endif 17
| 86#endif 87
|
18#ifndef __SQLTYPES_H 19#include "odbc/sqltypes.h"
| 88/* 89 * Include Windows style defines and typedefs on Unix 90 */ 91#ifndef _IODBCUNIX_H 92#include <odbc/iodbcunix.h>
|
20#endif 21
| 93#endif 94
|
| 95#ifndef _SQLTYPES_H 96#include <odbc/sqltypes.h> 97#endif 98
|
22#ifdef __cplusplus 23extern "C" { 24#endif 25
| 99#ifdef __cplusplus 100extern "C" { 101#endif 102
|
26/**************************** 27 * some ret values 28 ***************************/ 29#define SQL_NULL_DATA (-1) 30#define SQL_DATA_AT_EXEC (-2) 31#define SQL_SUCCESS 0 32#define SQL_SUCCESS_WITH_INFO 1 33#if (ODBCVER >= 0x0300) 34#define SQL_NO_DATA 100 35#endif 36#define SQL_ERROR (-1) 37#define SQL_INVALID_HANDLE (-2) 38#define SQL_STILL_EXECUTING 2 39#define SQL_NEED_DATA 99 40#define SQL_SUCCEEDED(rc) (((rc)&(~1))==0)
| 103/* 104 * Useful Constants 105 */ 106#define SQL_MAX_MESSAGE_LENGTH 512
|
41
| 107
|
42/**************************** 43 * use these to indicate string termination to some function 44 ***************************/ 45#define SQL_NTS (-3) 46#define SQL_NTSL (-3L)
| |
47
| 108
|
48/* maximum message length */ 49#define SQL_MAX_MESSAGE_LENGTH 512 50 51/* date/time length constants */
| 109/* 110 * Handle types 111 */
|
52#if (ODBCVER >= 0x0300)
| 112#if (ODBCVER >= 0x0300)
|
53#define SQL_DATE_LEN 10 54#define SQL_TIME_LEN 8 /* add P+1 if precision is nonzero */ 55#define SQL_TIMESTAMP_LEN 19 /* add P+1 if precision is nonzero */ 56#endif
| 113#define SQL_HANDLE_ENV 1 114#define SQL_HANDLE_DBC 2 115#define SQL_HANDLE_STMT 3 116#define SQL_HANDLE_DESC 4 117#endif /* ODBCVER >= 0x0300 */
|
57
| 118
|
58/* handle type identifiers */ 59#if (ODBCVER >= 0x0300) 60#define SQL_HANDLE_ENV 1 61#define SQL_HANDLE_DBC 2 62#define SQL_HANDLE_STMT 3 63#define SQL_HANDLE_DESC 4 64#endif
| |
65
| 119
|
66/* environment attribute */
| 120/* 121 * Function return codes 122 */ 123#define SQL_SUCCESS 0 124#define SQL_SUCCESS_WITH_INFO 1 125#define SQL_STILL_EXECUTING 2 126#define SQL_ERROR (-1) 127#define SQL_INVALID_HANDLE (-2) 128#define SQL_NEED_DATA 99
|
67#if (ODBCVER >= 0x0300)
| 129#if (ODBCVER >= 0x0300)
|
68#define SQL_ATTR_OUTPUT_NTS 10001 69#endif
| 130#define SQL_NO_DATA 100 131#endif /* ODBCVER >= 0x0300 */
|
70
| 132
|
71/* connection attributes */ 72#if (ODBCVER >= 0x0300) 73#define SQL_ATTR_AUTO_IPD 10001 74#define SQL_ATTR_METADATA_ID 10014 75#endif /* ODBCVER >= 0x0300 */
| |
76
| 133
|
77/* statement attributes */ 78#if (ODBCVER >= 0x0300) 79#define SQL_ATTR_APP_ROW_DESC 10010 80#define SQL_ATTR_APP_PARAM_DESC 10011 81#define SQL_ATTR_IMP_ROW_DESC 10012 82#define SQL_ATTR_IMP_PARAM_DESC 10013 83#define SQL_ATTR_CURSOR_SCROLLABLE (-1) 84#define SQL_ATTR_CURSOR_SENSITIVITY (-2) 85#endif
| 134/* 135 * Test for SQL_SUCCESS or SQL_SUCCESS_WITH_INFO 136 */ 137#define SQL_SUCCEEDED(rc) (((rc) & (~1)) == 0)
|
86
| 138
|
87/* SQL_ATTR_CURSOR_SCROLLABLE values */ 88#if (ODBCVER >= 0x0300) 89#define SQL_NONSCROLLABLE 0 90#define SQL_SCROLLABLE 1 91#endif /* ODBCVER >= 0x0300 */
| |
92
| 139
|
93/* identifiers of fields in the SQL descriptor */ 94#if (ODBCVER >= 0x0300) 95#define SQL_DESC_COUNT 1001 96#define SQL_DESC_TYPE 1002 97#define SQL_DESC_LENGTH 1003 98#define SQL_DESC_OCTET_LENGTH_PTR 1004 99#define SQL_DESC_PRECISION 1005 100#define SQL_DESC_SCALE 1006 101#define SQL_DESC_DATETIME_INTERVAL_CODE 1007 102#define SQL_DESC_NULLABLE 1008 103#define SQL_DESC_INDICATOR_PTR 1009 104#define SQL_DESC_DATA_PTR 1010 105#define SQL_DESC_NAME 1011 106#define SQL_DESC_UNNAMED 1012 107#define SQL_DESC_OCTET_LENGTH 1013 108#define SQL_DESC_ALLOC_TYPE 1099 109#endif
| 140/* 141 * Special length values 142 */ 143#define SQL_NULL_DATA (-1) 144#define SQL_DATA_AT_EXEC (-2)
|
110
| 145
|
111/* identifiers of fields in the diagnostics area */ 112#if (ODBCVER >= 0x0300) 113#define SQL_DIAG_RETURNCODE 1 114#define SQL_DIAG_NUMBER 2 115#define SQL_DIAG_ROW_COUNT 3 116#define SQL_DIAG_SQLSTATE 4 117#define SQL_DIAG_NATIVE 5 118#define SQL_DIAG_MESSAGE_TEXT 6 119#define SQL_DIAG_DYNAMIC_FUNCTION 7 120#define SQL_DIAG_CLASS_ORIGIN 8 121#define SQL_DIAG_SUBCLASS_ORIGIN 9 122#define SQL_DIAG_CONNECTION_NAME 10 123#define SQL_DIAG_SERVER_NAME 11 124#define SQL_DIAG_DYNAMIC_FUNCTION_CODE 12 125#endif
| |
126
| 146
|
127/* dynamic function codes */ 128#if (ODBCVER >= 0x0300) 129#define SQL_DIAG_ALTER_DOMAIN 3 130#define SQL_DIAG_ALTER_TABLE 4 131#define SQL_DIAG_CALL 7 132#define SQL_DIAG_CREATE_ASSERTION 6 133#define SQL_DIAG_CREATE_CHARACTER_SET 8 134#define SQL_DIAG_CREATE_COLLATION 10 135#define SQL_DIAG_CREATE_DOMAIN 23 136#define SQL_DIAG_CREATE_INDEX (-1) 137#define SQL_DIAG_CREATE_SCHEMA 64 138#define SQL_DIAG_CREATE_TABLE 77 139#define SQL_DIAG_CREATE_TRANSLATION 79 140#define SQL_DIAG_CREATE_VIEW 84 141#define SQL_DIAG_DELETE_WHERE 19 142#define SQL_DIAG_DROP_ASSERTION 24 143#define SQL_DIAG_DROP_CHARACTER_SET 25 144#define SQL_DIAG_DROP_COLLATION 26 145#define SQL_DIAG_DROP_DOMAIN 27 146#define SQL_DIAG_DROP_INDEX (-2) 147#define SQL_DIAG_DROP_SCHEMA 31 148#define SQL_DIAG_DROP_TABLE 32 149#define SQL_DIAG_DROP_TRANSLATION 33 150#define SQL_DIAG_DROP_VIEW 36 151#define SQL_DIAG_DYNAMIC_DELETE_CURSOR 38 152#define SQL_DIAG_DYNAMIC_UPDATE_CURSOR 81 153#define SQL_DIAG_GRANT 48 154#define SQL_DIAG_INSERT 50 155#define SQL_DIAG_REVOKE 59 156#define SQL_DIAG_SELECT_CURSOR 85 157#define SQL_DIAG_UNKNOWN_STATEMENT 0 158#define SQL_DIAG_UPDATE_WHERE 82 159#endif /* ODBCVER >= 0x0300 */
| 147/* 148 * Flags for null-terminated strings 149 */ 150#define SQL_NTS (-3) 151#define SQL_NTSL (-3L)
|
160
| 152
|
161/* SQL data type codes */ 162#define SQL_UNKNOWN_TYPE 0 163#define SQL_CHAR 1 164#define SQL_NUMERIC 2 165#define SQL_DECIMAL 3 166#define SQL_INTEGER 4 167#define SQL_SMALLINT 5 168#define SQL_FLOAT 6 169#define SQL_REAL 7 170#define SQL_DOUBLE 8
| 153 154/* 155 * Standard SQL datatypes, using ANSI type numbering 156 */ 157#define SQL_UNKNOWN_TYPE 0 158#define SQL_CHAR 1 159#define SQL_NUMERIC 2 160#define SQL_DECIMAL 3 161#define SQL_INTEGER 4 162#define SQL_SMALLINT 5 163#define SQL_FLOAT 6 164#define SQL_REAL 7 165#define SQL_DOUBLE 8
|
171#if (ODBCVER >= 0x0300)
| 166#if (ODBCVER >= 0x0300)
|
172#define SQL_DATETIME 9 173#endif 174#define SQL_VARCHAR 12
| 167#define SQL_DATETIME 9 168#endif /* ODBCVER >= 0x0300 */ 169#define SQL_VARCHAR 12
|
175
| 170
|
176/* One-parameter shortcuts for date/time data types */
| 171 172/* 173 * SQLGetTypeInfo request for all data types 174 */ 175#define SQL_ALL_TYPES 0 176 177 178/* 179 * Statement attribute values for date/time data types 180 */
|
177#if (ODBCVER >= 0x0300)
| 181#if (ODBCVER >= 0x0300)
|
178#define SQL_TYPE_DATE 91 179#define SQL_TYPE_TIME 92 180#define SQL_TYPE_TIMESTAMP 93 181#endif
| 182#define SQL_TYPE_DATE 91 183#define SQL_TYPE_TIME 92 184#define SQL_TYPE_TIMESTAMP 93 185#endif /* ODBCVER >= 0x0300 */
|
182
| 186
|
183/* Statement attribute values for cursor sensitivity */
| 187 188/* 189 * Date/Time length constants 190 */
|
184#if (ODBCVER >= 0x0300)
| 191#if (ODBCVER >= 0x0300)
|
185#define SQL_UNSPECIFIED 0 186#define SQL_INSENSITIVE 1 187#define SQL_SENSITIVE 2 188#endif
| 192#define SQL_DATE_LEN 10 193#define SQL_TIME_LEN 8 /* add P+1 if prec >0 */ 194#define SQL_TIMESTAMP_LEN 19 /* add P+1 if prec >0 */ 195#endif /* ODBCVER >= 0x0300 */
|
189
| 196
|
190/* GetTypeInfo() request for all data types */ 191#define SQL_ALL_TYPES 0
| |
192
| 197
|
193/* Default conversion code for SQLBindCol(), SQLBindParam() and SQLGetData() */
| 198/* 199 * NULL status constants 200 */ 201#define SQL_NO_NULLS 0 202#define SQL_NULLABLE 1 203#define SQL_NULLABLE_UNKNOWN 2 204 205 206/* 207 * NULL Handles 208 */ 209#define SQL_NULL_HENV 0 210#define SQL_NULL_HDBC 0 211#define SQL_NULL_HSTMT 0
|
194#if (ODBCVER >= 0x0300)
| 212#if (ODBCVER >= 0x0300)
|
195#define SQL_DEFAULT 99 196#endif
| 213#define SQL_NULL_HDESC 0 214#endif /* ODBCVER >= 0x0300 */
|
197
| 215
|
198/* SQLGetData() code indicating that the application row descriptor 199 * specifies the data type
| 216 217/* 218 * NULL handle for parent argument to SQLAllocHandle when allocating 219 * a SQLHENV
|
200 */ 201#if (ODBCVER >= 0x0300)
| 220 */ 221#if (ODBCVER >= 0x0300)
|
202#define SQL_ARD_TYPE (-99) 203#endif
| 222#define SQL_NULL_HANDLE 0L 223#endif /* ODBCVER >= 0x0300 */
|
204
| 224
|
205/* SQL date/time type subcodes */
| 225 226/* 227 * CLI option values 228 */
|
206#if (ODBCVER >= 0x0300)
| 229#if (ODBCVER >= 0x0300)
|
207#define SQL_CODE_DATE 1 208#define SQL_CODE_TIME 2 209#define SQL_CODE_TIMESTAMP 3 210#endif
| 230#define SQL_FALSE 0 231#define SQL_TRUE 1 232#endif /* ODBCVER >= 0x0300 */
|
211
| 233
|
212/* CLI option values */
| 234 235/* 236 * Default conversion code for SQLBindCol(), SQLBindParam() and SQLGetData() 237 */
|
213#if (ODBCVER >= 0x0300)
| 238#if (ODBCVER >= 0x0300)
|
214#define SQL_FALSE 0 215#define SQL_TRUE 1 216#endif
| 239#define SQL_DEFAULT 99 240#endif /* ODBCVER >= 0x0300 */
|
217
| 241
|
218/* values of NULLABLE field in descriptor */ 219#define SQL_NO_NULLS 0 220#define SQL_NULLABLE 1
| |
221
| 242
|
222/* Value returned by SQLGetTypeInfo() to denote that it is 223 * not known whether or not a data type supports null values.
| 243/* 244 * SQLDataSources/SQLFetchScroll - FetchOrientation
|
224 */
| 245 */
|
225#define SQL_NULLABLE_UNKNOWN 2
| 246#define SQL_FETCH_NEXT 1 247#define SQL_FETCH_FIRST 2
|
226
| 248
|
227/* Values returned by SQLGetTypeInfo() to show WHERE clause 228 * supported
| 249 250/* 251 * SQLFetchScroll - FetchOrientation
|
229 */
| 252 */
|
230#if (ODBCVER >= 0x0300) 231#define SQL_PRED_NONE 0 232#define SQL_PRED_CHAR 1 233#define SQL_PRED_BASIC 2 234#endif
| 253#define SQL_FETCH_LAST 3 254#define SQL_FETCH_PRIOR 4 255#define SQL_FETCH_ABSOLUTE 5 256#define SQL_FETCH_RELATIVE 6
|
235
| 257
|
236/* values of UNNAMED field in descriptor */
| 258 259/* 260 * SQLFreeStmt 261 */ 262#define SQL_CLOSE 0 263#define SQL_DROP 1 264#define SQL_UNBIND 2 265#define SQL_RESET_PARAMS 3 266 267 268/* 269 * SQLGetConnectAttr - connection attributes 270 */
|
237#if (ODBCVER >= 0x0300)
| 271#if (ODBCVER >= 0x0300)
|
238#define SQL_NAMED 0 239#define SQL_UNNAMED 1 240#endif
| 272#define SQL_ATTR_AUTO_IPD 10001 273#define SQL_ATTR_METADATA_ID 10014 274#endif /* ODBCVER >= 0x0300 */
|
241
| 275
|
242/* values of ALLOC_TYPE field in descriptor */
| 276 277/* 278 * SQLGetData() code indicating that the application row descriptor 279 * specifies the data type 280 */
|
243#if (ODBCVER >= 0x0300)
| 281#if (ODBCVER >= 0x0300)
|
244#define SQL_DESC_ALLOC_AUTO 1 245#define SQL_DESC_ALLOC_USER 2 246#endif
| 282#define SQL_ARD_TYPE (-99) 283#endif /* ODBCVER >= 0x0300 */
|
247
| 284
|
248/* FreeStmt() options */ 249#define SQL_CLOSE 0 250#define SQL_DROP 1 251#define SQL_UNBIND 2 252#define SQL_RESET_PARAMS 3
| |
253
| 285
|
254/* Codes used for FetchOrientation in SQLFetchScroll(), 255 and in SQLDataSources() 256*/ 257#define SQL_FETCH_NEXT 1 258#define SQL_FETCH_FIRST 2
| 286/* 287 * SQLGetDescField - identifiers of fields in the SQL descriptor 288 */ 289#if (ODBCVER >= 0x0300) 290#define SQL_DESC_COUNT 1001 291#define SQL_DESC_TYPE 1002 292#define SQL_DESC_LENGTH 1003 293#define SQL_DESC_OCTET_LENGTH_PTR 1004 294#define SQL_DESC_PRECISION 1005 295#define SQL_DESC_SCALE 1006 296#define SQL_DESC_DATETIME_INTERVAL_CODE 1007 297#define SQL_DESC_NULLABLE 1008 298#define SQL_DESC_INDICATOR_PTR 1009 299#define SQL_DESC_DATA_PTR 1010 300#define SQL_DESC_NAME 1011 301#define SQL_DESC_UNNAMED 1012 302#define SQL_DESC_OCTET_LENGTH 1013 303#define SQL_DESC_ALLOC_TYPE 1099 304#endif /* ODBCVER >= 0x0300 */
|
259
| 305
|
260/* Other codes used for FetchOrientation in SQLFetchScroll() */ 261#define SQL_FETCH_LAST 3 262#define SQL_FETCH_PRIOR 4 263#define SQL_FETCH_ABSOLUTE 5 264#define SQL_FETCH_RELATIVE 6
| |
265
| 306
|
266/* SQLEndTran() options */ 267#define SQL_COMMIT 0 268#define SQL_ROLLBACK 1
| 307/* 308 * SQLGetDescField - SQL_DESC_ALLOC_TYPE 309 */ 310#if (ODBCVER >= 0x0300) 311#define SQL_DESC_ALLOC_AUTO 1 312#define SQL_DESC_ALLOC_USER 2 313#endif /* ODBCVER >= 0x0300 */
|
269
| 314
|
270/* null handles returned by SQLAllocHandle() */ 271#define SQL_NULL_HENV 0 272#define SQL_NULL_HDBC 0 273#define SQL_NULL_HSTMT 0
| 315 316/* 317 * SQLGetDescField - SQL_DESC_DATETIME_INTERVAL_CODE 318 */
|
274#if (ODBCVER >= 0x0300)
| 319#if (ODBCVER >= 0x0300)
|
275#define SQL_NULL_HDESC 0 276#define SQL_NULL_DESC 0 277#endif
| 320#define SQL_CODE_DATE 1 321#define SQL_CODE_TIME 2 322#define SQL_CODE_TIMESTAMP 3 323#endif /* ODBCVER >= 0x0300 */
|
278
| 324
|
279/* null handle used in place of parent handle when allocating HENV */
| 325 326/* 327 * SQLGetDescField - SQL_DESC_UNNAMED 328 */
|
280#if (ODBCVER >= 0x0300)
| 329#if (ODBCVER >= 0x0300)
|
281#define SQL_NULL_HANDLE 0L 282#endif
| 330#define SQL_NAMED 0 331#define SQL_UNNAMED 1 332#endif /* ODBCVER >= 0x0300 */
|
283
| 333
|
284/* Values that may appear in the result set of SQLSpecialColumns() */ 285#define SQL_SCOPE_CURROW 0 286#define SQL_SCOPE_TRANSACTION 1 287#define SQL_SCOPE_SESSION 2
| |
288
| 334
|
289#define SQL_PC_UNKNOWN 0
| 335/* 336 * SQLGetDiagField - identifiers of fields in the diagnostics area 337 */
|
290#if (ODBCVER >= 0x0300)
| 338#if (ODBCVER >= 0x0300)
|
291#define SQL_PC_NON_PSEUDO 1 292#endif 293#define SQL_PC_PSEUDO 2
| 339#define SQL_DIAG_RETURNCODE 1 340#define SQL_DIAG_NUMBER 2 341#define SQL_DIAG_ROW_COUNT 3 342#define SQL_DIAG_SQLSTATE 4 343#define SQL_DIAG_NATIVE 5 344#define SQL_DIAG_MESSAGE_TEXT 6 345#define SQL_DIAG_DYNAMIC_FUNCTION 7 346#define SQL_DIAG_CLASS_ORIGIN 8 347#define SQL_DIAG_SUBCLASS_ORIGIN 9 348#define SQL_DIAG_CONNECTION_NAME 10 349#define SQL_DIAG_SERVER_NAME 11 350#define SQL_DIAG_DYNAMIC_FUNCTION_CODE 12 351#endif /* ODBCVER >= 0x0300 */
|
294
| 352
|
295/* Reserved value for the IdentifierType argument of SQLSpecialColumns() */
| 353 354/* 355 * SQLGetDiagField - SQL_DIAG_DYNAMIC_FUNCTION_CODE 356 */
|
296#if (ODBCVER >= 0x0300)
| 357#if (ODBCVER >= 0x0300)
|
297#define SQL_ROW_IDENTIFIER 1 298#endif
| 358#define SQL_DIAG_ALTER_DOMAIN 3 359#define SQL_DIAG_ALTER_TABLE 4 360#define SQL_DIAG_CALL 7 361#define SQL_DIAG_CREATE_ASSERTION 6 362#define SQL_DIAG_CREATE_CHARACTER_SET 8 363#define SQL_DIAG_CREATE_COLLATION 10 364#define SQL_DIAG_CREATE_DOMAIN 23 365#define SQL_DIAG_CREATE_INDEX (-1) 366#define SQL_DIAG_CREATE_SCHEMA 64 367#define SQL_DIAG_CREATE_TABLE 77 368#define SQL_DIAG_CREATE_TRANSLATION 79 369#define SQL_DIAG_CREATE_VIEW 84 370#define SQL_DIAG_DELETE_WHERE 19 371#define SQL_DIAG_DROP_ASSERTION 24 372#define SQL_DIAG_DROP_CHARACTER_SET 25 373#define SQL_DIAG_DROP_COLLATION 26 374#define SQL_DIAG_DROP_DOMAIN 27 375#define SQL_DIAG_DROP_INDEX (-2) 376#define SQL_DIAG_DROP_SCHEMA 31 377#define SQL_DIAG_DROP_TABLE 32 378#define SQL_DIAG_DROP_TRANSLATION 33 379#define SQL_DIAG_DROP_VIEW 36 380#define SQL_DIAG_DYNAMIC_DELETE_CURSOR 38 381#define SQL_DIAG_DYNAMIC_UPDATE_CURSOR 81 382#define SQL_DIAG_GRANT 48 383#define SQL_DIAG_INSERT 50 384#define SQL_DIAG_REVOKE 59 385#define SQL_DIAG_SELECT_CURSOR 85 386#define SQL_DIAG_UNKNOWN_STATEMENT 0 387#define SQL_DIAG_UPDATE_WHERE 82 388#endif /* ODBCVER >= 0x0300 */
|
299
| 389
|
300/* Reserved values for UNIQUE argument of SQLStatistics() */ 301#define SQL_INDEX_UNIQUE 0 302#define SQL_INDEX_ALL 1
| |
303
| 390
|
304/* Values that may appear in the result set of SQLStatistics() */ 305#define SQL_INDEX_CLUSTERED 1 306#define SQL_INDEX_HASHED 2 307#define SQL_INDEX_OTHER 3
| 391/* 392 * SQLGetEnvAttr - environment attribute 393 */ 394#if (ODBCVER >= 0x0300) 395#define SQL_ATTR_OUTPUT_NTS 10001 396#endif /* ODBCVER >= 0x0300 */
|
308
| 397
|
309/* SQLGetFunctions() values to identify ODBC APIs */ 310#define SQL_API_SQLALLOCCONNECT 1 311#define SQL_API_SQLALLOCENV 2
| 398 399/* 400 * SQLGetFunctions 401 */ 402#define SQL_API_SQLALLOCCONNECT 1 403#define SQL_API_SQLALLOCENV 2
|
312#if (ODBCVER >= 0x0300)
| 404#if (ODBCVER >= 0x0300)
|
313#define SQL_API_SQLALLOCHANDLE 1001 314#endif 315#define SQL_API_SQLALLOCSTMT 3 316#define SQL_API_SQLBINDCOL 4
| 405#define SQL_API_SQLALLOCHANDLE 1001 406#endif /* ODBCVER >= 0x0300 */ 407#define SQL_API_SQLALLOCSTMT 3 408#define SQL_API_SQLBINDCOL 4
|
317#if (ODBCVER >= 0x0300)
| 409#if (ODBCVER >= 0x0300)
|
318#define SQL_API_SQLBINDPARAM 1002 319#endif 320#define SQL_API_SQLCANCEL 5
| 410#define SQL_API_SQLBINDPARAM 1002 411#endif /* ODBCVER >= 0x0300 */ 412#define SQL_API_SQLCANCEL 5
|
321#if (ODBCVER >= 0x0300)
| 413#if (ODBCVER >= 0x0300)
|
322#define SQL_API_SQLCLOSECURSOR 1003 323#define SQL_API_SQLCOLATTRIBUTE 6 324#endif 325#define SQL_API_SQLCOLUMNS 40 326#define SQL_API_SQLCONNECT 7
| 414#define SQL_API_SQLCLOSECURSOR 1003 415#define SQL_API_SQLCOLATTRIBUTE 6 416#endif /* ODBCVER >= 0x0300 */ 417#define SQL_API_SQLCOLUMNS 40 418#define SQL_API_SQLCONNECT 7
|
327#if (ODBCVER >= 0x0300)
| 419#if (ODBCVER >= 0x0300)
|
328#define SQL_API_SQLCOPYDESC 1004 329#endif 330#define SQL_API_SQLDATASOURCES 57 331#define SQL_API_SQLDESCRIBECOL 8 332#define SQL_API_SQLDISCONNECT 9
| 420#define SQL_API_SQLCOPYDESC 1004 421#endif /* ODBCVER >= 0x0300 */ 422#define SQL_API_SQLDATASOURCES 57 423#define SQL_API_SQLDESCRIBECOL 8 424#define SQL_API_SQLDISCONNECT 9
|
333#if (ODBCVER >= 0x0300)
| 425#if (ODBCVER >= 0x0300)
|
334#define SQL_API_SQLENDTRAN 1005 335#endif 336#define SQL_API_SQLERROR 10 337#define SQL_API_SQLEXECDIRECT 11 338#define SQL_API_SQLEXECUTE 12 339#define SQL_API_SQLFETCH 13
| 426#define SQL_API_SQLENDTRAN 1005 427#endif /* ODBCVER >= 0x0300 */ 428#define SQL_API_SQLERROR 10 429#define SQL_API_SQLEXECDIRECT 11 430#define SQL_API_SQLEXECUTE 12 431#define SQL_API_SQLFETCH 13
|
340#if (ODBCVER >= 0x0300)
| 432#if (ODBCVER >= 0x0300)
|
341#define SQL_API_SQLFETCHSCROLL 1021 342#endif 343#define SQL_API_SQLFREECONNECT 14 344#define SQL_API_SQLFREEENV 15
| 433#define SQL_API_SQLFETCHSCROLL 1021 434#endif /* ODBCVER >= 0x0300 */ 435#define SQL_API_SQLFREECONNECT 14 436#define SQL_API_SQLFREEENV 15
|
345#if (ODBCVER >= 0x0300)
| 437#if (ODBCVER >= 0x0300)
|
346#define SQL_API_SQLFREEHANDLE 1006 347#endif 348#define SQL_API_SQLFREESTMT 16
| 438#define SQL_API_SQLFREEHANDLE 1006 439#endif /* ODBCVER >= 0x0300 */ 440#define SQL_API_SQLFREESTMT 16
|
349#if (ODBCVER >= 0x0300)
| 441#if (ODBCVER >= 0x0300)
|
350#define SQL_API_SQLGETCONNECTATTR 1007 351#endif 352#define SQL_API_SQLGETCONNECTOPTION 42 353#define SQL_API_SQLGETCURSORNAME 17 354#define SQL_API_SQLGETDATA 43
| 442#define SQL_API_SQLGETCONNECTATTR 1007 443#endif /* ODBCVER >= 0x0300 */ 444#define SQL_API_SQLGETCONNECTOPTION 42 445#define SQL_API_SQLGETCURSORNAME 17 446#define SQL_API_SQLGETDATA 43
|
355#if (ODBCVER >= 0x0300)
| 447#if (ODBCVER >= 0x0300)
|
356#define SQL_API_SQLGETDESCFIELD 1008 357#define SQL_API_SQLGETDESCREC 1009 358#define SQL_API_SQLGETDIAGFIELD 1010 359#define SQL_API_SQLGETDIAGREC 1011 360#define SQL_API_SQLGETENVATTR 1012 361#endif 362#define SQL_API_SQLGETFUNCTIONS 44 363#define SQL_API_SQLGETINFO 45
| 448#define SQL_API_SQLGETDESCFIELD 1008 449#define SQL_API_SQLGETDESCREC 1009 450#define SQL_API_SQLGETDIAGFIELD 1010 451#define SQL_API_SQLGETDIAGREC 1011 452#define SQL_API_SQLGETENVATTR 1012 453#endif /* ODBCVER >= 0x0300 */ 454#define SQL_API_SQLGETFUNCTIONS 44 455#define SQL_API_SQLGETINFO 45
|
364#if (ODBCVER >= 0x0300)
| 456#if (ODBCVER >= 0x0300)
|
365#define SQL_API_SQLGETSTMTATTR 1014 366#endif 367#define SQL_API_SQLGETSTMTOPTION 46 368#define SQL_API_SQLGETTYPEINFO 47 369#define SQL_API_SQLNUMRESULTCOLS 18 370#define SQL_API_SQLPARAMDATA 48 371#define SQL_API_SQLPREPARE 19 372#define SQL_API_SQLPUTDATA 49 373#define SQL_API_SQLROWCOUNT 20
| 457#define SQL_API_SQLGETSTMTATTR 1014 458#endif /* ODBCVER >= 0x0300 */ 459#define SQL_API_SQLGETSTMTOPTION 46 460#define SQL_API_SQLGETTYPEINFO 47 461#define SQL_API_SQLNUMRESULTCOLS 18 462#define SQL_API_SQLPARAMDATA 48 463#define SQL_API_SQLPREPARE 19 464#define SQL_API_SQLPUTDATA 49 465#define SQL_API_SQLROWCOUNT 20
|
374#if (ODBCVER >= 0x0300)
| 466#if (ODBCVER >= 0x0300)
|
375#define SQL_API_SQLSETCONNECTATTR 1016 376#endif 377#define SQL_API_SQLSETCONNECTOPTION 50 378#define SQL_API_SQLSETCURSORNAME 21
| 467#define SQL_API_SQLSETCONNECTATTR 1016 468#endif /* ODBCVER >= 0x0300 */ 469#define SQL_API_SQLSETCONNECTOPTION 50 470#define SQL_API_SQLSETCURSORNAME 21
|
379#if (ODBCVER >= 0x0300)
| 471#if (ODBCVER >= 0x0300)
|
380#define SQL_API_SQLSETDESCFIELD 1017 381#define SQL_API_SQLSETDESCREC 1018 382#define SQL_API_SQLSETENVATTR 1019 383#endif 384#define SQL_API_SQLSETPARAM 22
| 472#define SQL_API_SQLSETDESCFIELD 1017 473#define SQL_API_SQLSETDESCREC 1018 474#define SQL_API_SQLSETENVATTR 1019 475#endif /* ODBCVER >= 0x0300 */ 476#define SQL_API_SQLSETPARAM 22
|
385#if (ODBCVER >= 0x0300)
| 477#if (ODBCVER >= 0x0300)
|
386#define SQL_API_SQLSETSTMTATTR 1020 387#endif 388#define SQL_API_SQLSETSTMTOPTION 51 389#define SQL_API_SQLSPECIALCOLUMNS 52 390#define SQL_API_SQLSTATISTICS 53 391#define SQL_API_SQLTABLES 54 392#define SQL_API_SQLTRANSACT 23
| 478#define SQL_API_SQLSETSTMTATTR 1020 479#endif /* ODBCVER >= 0x0300 */ 480#define SQL_API_SQLSETSTMTOPTION 51 481#define SQL_API_SQLSPECIALCOLUMNS 52 482#define SQL_API_SQLSTATISTICS 53 483#define SQL_API_SQLTABLES 54 484#define SQL_API_SQLTRANSACT 23
|
393
| 485
|
394/* Information requested by SQLGetInfo() */
| 486 487/* 488 * SQLGetInfo 489 */
|
395#if (ODBCVER >= 0x0300)
| 490#if (ODBCVER >= 0x0300)
|
396#define SQL_MAX_DRIVER_CONNECTIONS 0
| 491#define SQL_MAX_DRIVER_CONNECTIONS 0
|
397#define SQL_MAXIMUM_DRIVER_CONNECTIONS SQL_MAX_DRIVER_CONNECTIONS
| 492#define SQL_MAXIMUM_DRIVER_CONNECTIONS SQL_MAX_DRIVER_CONNECTIONS
|
398#define SQL_MAX_CONCURRENT_ACTIVITIES 1
| 493#define SQL_MAX_CONCURRENT_ACTIVITIES 1
|
399#define SQL_MAXIMUM_CONCURRENT_ACTIVITIES SQL_MAX_CONCURRENT_ACTIVITIES
| 494#define SQL_MAXIMUM_CONCURRENT_ACTIVITIES SQL_MAX_CONCURRENT_ACTIVITIES
|
400#endif 401#define SQL_DATA_SOURCE_NAME 2 402#define SQL_FETCH_DIRECTION 8 403#define SQL_SERVER_NAME 13 404#define SQL_SEARCH_PATTERN_ESCAPE 14 405#define SQL_DBMS_NAME 17 406#define SQL_DBMS_VER 18 407#define SQL_ACCESSIBLE_TABLES 19 408#define SQL_ACCESSIBLE_PROCEDURES 20 409#define SQL_CURSOR_COMMIT_BEHAVIOR 23 410#define SQL_DATA_SOURCE_READ_ONLY 25 411#define SQL_DEFAULT_TXN_ISOLATION 26 412#define SQL_IDENTIFIER_CASE 28 413#define SQL_IDENTIFIER_QUOTE_CHAR 29 414#define SQL_MAX_COLUMN_NAME_LEN 30
| 495#endif /* ODBCVER >= 0x0300 */ 496#define SQL_DATA_SOURCE_NAME 2 497#define SQL_FETCH_DIRECTION 8 498#define SQL_SERVER_NAME 13 499#define SQL_SEARCH_PATTERN_ESCAPE 14 500#define SQL_DBMS_NAME 17 501#define SQL_DBMS_VER 18 502#define SQL_ACCESSIBLE_TABLES 19 503#define SQL_ACCESSIBLE_PROCEDURES 20 504#define SQL_CURSOR_COMMIT_BEHAVIOR 23 505#define SQL_DATA_SOURCE_READ_ONLY 25 506#define SQL_DEFAULT_TXN_ISOLATION 26 507#define SQL_IDENTIFIER_CASE 28 508#define SQL_IDENTIFIER_QUOTE_CHAR 29 509#define SQL_MAX_COLUMN_NAME_LEN 30
|
415#define SQL_MAXIMUM_COLUMN_NAME_LENGTH SQL_MAX_COLUMN_NAME_LEN
| 510#define SQL_MAXIMUM_COLUMN_NAME_LENGTH SQL_MAX_COLUMN_NAME_LEN
|
416#define SQL_MAX_CURSOR_NAME_LEN 31
| 511#define SQL_MAX_CURSOR_NAME_LEN 31
|
417#define SQL_MAXIMUM_CURSOR_NAME_LENGTH SQL_MAX_CURSOR_NAME_LEN
| 512#define SQL_MAXIMUM_CURSOR_NAME_LENGTH SQL_MAX_CURSOR_NAME_LEN
|
418#define SQL_MAX_SCHEMA_NAME_LEN 32
| 513#define SQL_MAX_SCHEMA_NAME_LEN 32
|
419#define SQL_MAXIMUM_SCHEMA_NAME_LENGTH SQL_MAX_SCHEMA_NAME_LEN
| 514#define SQL_MAXIMUM_SCHEMA_NAME_LENGTH SQL_MAX_SCHEMA_NAME_LEN
|
420#define SQL_MAX_CATALOG_NAME_LEN 34
| 515#define SQL_MAX_CATALOG_NAME_LEN 34
|
421#define SQL_MAXIMUM_CATALOG_NAME_LENGTH SQL_MAX_CATALOG_NAME_LEN
| 516#define SQL_MAXIMUM_CATALOG_NAME_LENGTH SQL_MAX_CATALOG_NAME_LEN
|
422#define SQL_MAX_TABLE_NAME_LEN 35 423#define SQL_SCROLL_CONCURRENCY 43 424#define SQL_TXN_CAPABLE 46 425#define SQL_TRANSACTION_CAPABLE SQL_TXN_CAPABLE 426#define SQL_USER_NAME 47 427#define SQL_TXN_ISOLATION_OPTION 72
| 517#define SQL_MAX_TABLE_NAME_LEN 35 518#define SQL_SCROLL_CONCURRENCY 43 519#define SQL_TXN_CAPABLE 46 520#define SQL_TRANSACTION_CAPABLE SQL_TXN_CAPABLE 521#define SQL_USER_NAME 47 522#define SQL_TXN_ISOLATION_OPTION 72
|
428#define SQL_TRANSACTION_ISOLATION_OPTION SQL_TXN_ISOLATION_OPTION
| 523#define SQL_TRANSACTION_ISOLATION_OPTION SQL_TXN_ISOLATION_OPTION
|
429#define SQL_INTEGRITY 73 430#define SQL_GETDATA_EXTENSIONS 81 431#define SQL_NULL_COLLATION 85 432#define SQL_ALTER_TABLE 86 433#define SQL_ORDER_BY_COLUMNS_IN_SELECT 90 434#define SQL_SPECIAL_CHARACTERS 94 435#define SQL_MAX_COLUMNS_IN_GROUP_BY 97
| 524#define SQL_INTEGRITY 73 525#define SQL_GETDATA_EXTENSIONS 81 526#define SQL_NULL_COLLATION 85 527#define SQL_ALTER_TABLE 86 528#define SQL_ORDER_BY_COLUMNS_IN_SELECT 90 529#define SQL_SPECIAL_CHARACTERS 94 530#define SQL_MAX_COLUMNS_IN_GROUP_BY 97
|
436#define SQL_MAXIMUM_COLUMNS_IN_GROUP_BY SQL_MAX_COLUMNS_IN_GROUP_BY
| 531#define SQL_MAXIMUM_COLUMNS_IN_GROUP_BY SQL_MAX_COLUMNS_IN_GROUP_BY
|
437#define SQL_MAX_COLUMNS_IN_INDEX 98
| 532#define SQL_MAX_COLUMNS_IN_INDEX 98
|
438#define SQL_MAXIMUM_COLUMNS_IN_INDEX SQL_MAX_COLUMNS_IN_INDEX
| 533#define SQL_MAXIMUM_COLUMNS_IN_INDEX SQL_MAX_COLUMNS_IN_INDEX
|
439#define SQL_MAX_COLUMNS_IN_ORDER_BY 99
| 534#define SQL_MAX_COLUMNS_IN_ORDER_BY 99
|
440#define SQL_MAXIMUM_COLUMNS_IN_ORDER_BY SQL_MAX_COLUMNS_IN_ORDER_BY
| 535#define SQL_MAXIMUM_COLUMNS_IN_ORDER_BY SQL_MAX_COLUMNS_IN_ORDER_BY
|
441#define SQL_MAX_COLUMNS_IN_SELECT 100 442#define SQL_MAXIMUM_COLUMNS_IN_SELECT SQL_MAX_COLUMNS_IN_SELECT 443#define SQL_MAX_COLUMNS_IN_TABLE 101 444#define SQL_MAX_INDEX_SIZE 102 445#define SQL_MAXIMUM_INDEX_SIZE SQL_MAX_INDEX_SIZE 446#define SQL_MAX_ROW_SIZE 104 447#define SQL_MAXIMUM_ROW_SIZE SQL_MAX_ROW_SIZE 448#define SQL_MAX_STATEMENT_LEN 105 449#define SQL_MAXIMUM_STATEMENT_LENGTH SQL_MAX_STATEMENT_LEN 450#define SQL_MAX_TABLES_IN_SELECT 106 451#define SQL_MAXIMUM_TABLES_IN_SELECT SQL_MAX_TABLES_IN_SELECT 452#define SQL_MAX_USER_NAME_LEN 107 453#define SQL_MAXIMUM_USER_NAME_LENGTH SQL_MAX_USER_NAME_LEN
| 536#define SQL_MAX_COLUMNS_IN_SELECT 100 537#define SQL_MAXIMUM_COLUMNS_IN_SELECT SQL_MAX_COLUMNS_IN_SELECT 538#define SQL_MAX_COLUMNS_IN_TABLE 101 539#define SQL_MAX_INDEX_SIZE 102 540#define SQL_MAXIMUM_INDEX_SIZE SQL_MAX_INDEX_SIZE 541#define SQL_MAX_ROW_SIZE 104 542#define SQL_MAXIMUM_ROW_SIZE SQL_MAX_ROW_SIZE 543#define SQL_MAX_STATEMENT_LEN 105 544#define SQL_MAXIMUM_STATEMENT_LENGTH SQL_MAX_STATEMENT_LEN 545#define SQL_MAX_TABLES_IN_SELECT 106 546#define SQL_MAXIMUM_TABLES_IN_SELECT SQL_MAX_TABLES_IN_SELECT 547#define SQL_MAX_USER_NAME_LEN 107 548#define SQL_MAXIMUM_USER_NAME_LENGTH SQL_MAX_USER_NAME_LEN
|
454#if (ODBCVER >= 0x0300)
| 549#if (ODBCVER >= 0x0300)
|
455#define SQL_OJ_CAPABILITIES 115 456#define SQL_OUTER_JOIN_CAPABILITIES SQL_OJ_CAPABILITIES 457#endif /* ODBCVER >= 0x0300 */
| 550#define SQL_OJ_CAPABILITIES 115 551#define SQL_OUTER_JOIN_CAPABILITIES SQL_OJ_CAPABILITIES 552#endif /* ODBCVER >= 0x0300 */
|
458 459#if (ODBCVER >= 0x0300)
| 553 554#if (ODBCVER >= 0x0300)
|
460#define SQL_XOPEN_CLI_YEAR 10000 461#define SQL_CURSOR_SENSITIVITY 10001 462#define SQL_DESCRIBE_PARAMETER 10002 463#define SQL_CATALOG_NAME 10003 464#define SQL_COLLATION_SEQ 10004 465#define SQL_MAX_IDENTIFIER_LEN 10005 466#define SQL_MAXIMUM_IDENTIFIER_LENGTH SQL_MAX_IDENTIFIER_LEN 467#endif /* ODBCVER >= 0x0300 */
| 555#define SQL_XOPEN_CLI_YEAR 10000 556#define SQL_CURSOR_SENSITIVITY 10001 557#define SQL_DESCRIBE_PARAMETER 10002 558#define SQL_CATALOG_NAME 10003 559#define SQL_COLLATION_SEQ 10004 560#define SQL_MAX_IDENTIFIER_LEN 10005 561#define SQL_MAXIMUM_IDENTIFIER_LENGTH SQL_MAX_IDENTIFIER_LEN 562#endif /* ODBCVER >= 0x0300 */
|
468
| 563
|
469/* SQL_ALTER_TABLE bitmasks */
| 564 565/* 566 * SQLGetInfo - SQL_ALTER_TABLE 567 */
|
470#if (ODBCVER >= 0x0200)
| 568#if (ODBCVER >= 0x0200)
|
471#define SQL_AT_ADD_COLUMN 0x00000001L 472#define SQL_AT_DROP_COLUMN 0x00000002L 473#endif /* ODBCVER >= 0x0200 */
| 569#define SQL_AT_ADD_COLUMN 0x00000001L 570#define SQL_AT_DROP_COLUMN 0x00000002L 571#endif /* ODBCVER >= 0x0300 */
|
474 475#if (ODBCVER >= 0x0300)
| 572 573#if (ODBCVER >= 0x0300)
|
476#define SQL_AT_ADD_CONSTRAINT 0x00000008L
| 574#define SQL_AT_ADD_CONSTRAINT 0x00000008L 575/* 576 * The following bitmasks are ODBC extensions and defined in sqlext.h: 577 * 578 * #define SQL_AT_COLUMN_SINGLE 0x00000020L 579 * #define SQL_AT_ADD_COLUMN_DEFAULT 0x00000040L 580 * #define SQL_AT_ADD_COLUMN_COLLATION 0x00000080L 581 * #define SQL_AT_SET_COLUMN_DEFAULT 0x00000100L 582 * #define SQL_AT_DROP_COLUMN_DEFAULT 0x00000200L 583 * #define SQL_AT_DROP_COLUMN_CASCADE 0x00000400L 584 * #define SQL_AT_DROP_COLUMN_RESTRICT 0x00000800L 585 * #define SQL_AT_ADD_TABLE_CONSTRAINT 0x00001000L 586 * #define SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE 0x00002000L 587 * #define SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT 0x00004000L 588 * #define SQL_AT_CONSTRAINT_NAME_DEFINITION 0x00008000L 589 * #define SQL_AT_CONSTRAINT_INITIALLY_DEFERRED 0x00010000L 590 * #define SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE 0x00020000L 591 * #define SQL_AT_CONSTRAINT_DEFERRABLE 0x00040000L 592 * #define SQL_AT_CONSTRAINT_NON_DEFERRABLE 0x00080000L 593 */ 594#endif /* ODBCVER >= 0x0300 */
|
477
| 595
|
478/* The following bitmasks are ODBC extensions and defined in sqlext.h 479*#define SQL_AT_COLUMN_SINGLE 0x00000020L 480*#define SQL_AT_ADD_COLUMN_DEFAULT 0x00000040L 481*#define SQL_AT_ADD_COLUMN_COLLATION 0x00000080L 482*#define SQL_AT_SET_COLUMN_DEFAULT 0x00000100L 483*#define SQL_AT_DROP_COLUMN_DEFAULT 0x00000200L 484*#define SQL_AT_DROP_COLUMN_CASCADE 0x00000400L 485*#define SQL_AT_DROP_COLUMN_RESTRICT 0x00000800L 486*#define SQL_AT_ADD_TABLE_CONSTRAINT 0x00001000L 487*#define SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE 0x00002000L 488*#define SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT 0x00004000L 489*#define SQL_AT_CONSTRAINT_NAME_DEFINITION 0x00008000L 490*#define SQL_AT_CONSTRAINT_INITIALLY_DEFERRED 0x00010000L 491*#define SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE 0x00020000L 492*#define SQL_AT_CONSTRAINT_DEFERRABLE 0x00040000L 493*#define SQL_AT_CONSTRAINT_NON_DEFERRABLE 0x00080000L 494*/ 495#endif /* ODBCVER >= 0x0300 */
| |
496
| 596
|
497 498/* SQL_ASYNC_MODE values */
| 597/* 598 * SQLGetInfo - SQL_ASYNC_MODE 599 */
|
499#if (ODBCVER >= 0x0300)
| 600#if (ODBCVER >= 0x0300)
|
500#define SQL_AM_NONE 0 501#define SQL_AM_CONNECTION 1 502#define SQL_AM_STATEMENT 2 503#endif
| 601#define SQL_AM_NONE 0 602#define SQL_AM_CONNECTION 1 603#define SQL_AM_STATEMENT 2 604#endif /* ODBCVER >= 0x0300 */
|
504
| 605
|
505/* SQL_CURSOR_COMMIT_BEHAVIOR values */ 506#define SQL_CB_DELETE 0 507#define SQL_CB_CLOSE 1 508#define SQL_CB_PRESERVE 2
| |
509
| 606
|
510/* SQL_FETCH_DIRECTION bitmasks */ 511#define SQL_FD_FETCH_NEXT 0x00000001L 512#define SQL_FD_FETCH_FIRST 0x00000002L 513#define SQL_FD_FETCH_LAST 0x00000004L 514#define SQL_FD_FETCH_PRIOR 0x00000008L 515#define SQL_FD_FETCH_ABSOLUTE 0x00000010L 516#define SQL_FD_FETCH_RELATIVE 0x00000020L
| 607/* 608 * SQLGetInfo - SQL_CURSOR_COMMIT_BEHAVIOR 609 */ 610#define SQL_CB_DELETE 0 611#define SQL_CB_CLOSE 1 612#define SQL_CB_PRESERVE 2
|
517
| 613
|
518/* SQL_GETDATA_EXTENSIONS bitmasks */ 519#define SQL_GD_ANY_COLUMN 0x00000001L 520#define SQL_GD_ANY_ORDER 0x00000002L
| |
521
| 614
|
522/* SQL_IDENTIFIER_CASE values */ 523#define SQL_IC_UPPER 1 524#define SQL_IC_LOWER 2 525#define SQL_IC_SENSITIVE 3 526#define SQL_IC_MIXED 4
| 615/* 616 * SQLGetInfo - SQL_FETCH_DIRECTION 617 */ 618#define SQL_FD_FETCH_NEXT 0x00000001L 619#define SQL_FD_FETCH_FIRST 0x00000002L 620#define SQL_FD_FETCH_LAST 0x00000004L 621#define SQL_FD_FETCH_PRIOR 0x00000008L 622#define SQL_FD_FETCH_ABSOLUTE 0x00000010L 623#define SQL_FD_FETCH_RELATIVE 0x00000020L
|
527
| 624
|
528/* SQL_OJ_CAPABILITIES bitmasks */ 529/* NB: this means 'outer join', not what you may be thinking */
| |
530
| 625
|
| 626/* 627 * SQLGetInfo - SQL_GETDATA_EXTENSIONS 628 */ 629#define SQL_GD_ANY_COLUMN 0x00000001L 630#define SQL_GD_ANY_ORDER 0x00000002L
|
531
| 631
|
| 632 633/* 634 * SQLGetInfo - SQL_IDENTIFIER_CASE 635 */ 636#define SQL_IC_UPPER 1 637#define SQL_IC_LOWER 2 638#define SQL_IC_SENSITIVE 3 639#define SQL_IC_MIXED 4 640 641 642/* 643 * SQLGetInfo - SQL_NULL_COLLATION 644 */ 645#define SQL_NC_HIGH 0 646#define SQL_NC_LOW 1 647 648 649/* 650 * SQLGetInfo - SQL_OJ_CAPABILITIES 651 */
|
532#if (ODBCVER >= 0x0201)
| 652#if (ODBCVER >= 0x0201)
|
533#define SQL_OJ_LEFT 0x00000001L 534#define SQL_OJ_RIGHT 0x00000002L 535#define SQL_OJ_FULL 0x00000004L 536#define SQL_OJ_NESTED 0x00000008L 537#define SQL_OJ_NOT_ORDERED 0x00000010L 538#define SQL_OJ_INNER 0x00000020L 539#define SQL_OJ_ALL_COMPARISON_OPS 0x00000040L
| 653#define SQL_OJ_LEFT 0x00000001L 654#define SQL_OJ_RIGHT 0x00000002L 655#define SQL_OJ_FULL 0x00000004L 656#define SQL_OJ_NESTED 0x00000008L 657#define SQL_OJ_NOT_ORDERED 0x00000010L 658#define SQL_OJ_INNER 0x00000020L 659#define SQL_OJ_ALL_COMPARISON_OPS 0x00000040L
|
540#endif 541
| 660#endif 661
|
542/* SQL_SCROLL_CONCURRENCY bitmasks */ 543#define SQL_SCCO_READ_ONLY 0x00000001L 544#define SQL_SCCO_LOCK 0x00000002L 545#define SQL_SCCO_OPT_ROWVER 0x00000004L 546#define SQL_SCCO_OPT_VALUES 0x00000008L
| |
547
| 662
|
548/* SQL_TXN_CAPABLE values */ 549#define SQL_TC_NONE 0 550#define SQL_TC_DML 1 551#define SQL_TC_ALL 2 552#define SQL_TC_DDL_COMMIT 3 553#define SQL_TC_DDL_IGNORE 4
| 663/* 664 * SQLGetInfo - SQL_SCROLL_CONCURRENCY 665 */ 666#define SQL_SCCO_READ_ONLY 0x00000001L 667#define SQL_SCCO_LOCK 0x00000002L 668#define SQL_SCCO_OPT_ROWVER 0x00000004L 669#define SQL_SCCO_OPT_VALUES 0x00000008L
|
554
| 670
|
555/* SQL_TXN_ISOLATION_OPTION bitmasks */ 556#define SQL_TXN_READ_UNCOMMITTED 0x00000001L
| 671 672/* 673 * SQLGetInfo - SQL_TXN_CAPABLE 674 */ 675#define SQL_TC_NONE 0 676#define SQL_TC_DML 1 677#define SQL_TC_ALL 2 678#define SQL_TC_DDL_COMMIT 3 679#define SQL_TC_DDL_IGNORE 4 680 681 682/* 683 * SQLGetInfo - SQL_TXN_ISOLATION_OPTION 684 */ 685#define SQL_TXN_READ_UNCOMMITTED 0x00000001L
|
557#define SQL_TRANSACTION_READ_UNCOMMITTED SQL_TXN_READ_UNCOMMITTED
| 686#define SQL_TRANSACTION_READ_UNCOMMITTED SQL_TXN_READ_UNCOMMITTED
|
558#define SQL_TXN_READ_COMMITTED 0x00000002L
| 687#define SQL_TXN_READ_COMMITTED 0x00000002L
|
559#define SQL_TRANSACTION_READ_COMMITTED SQL_TXN_READ_COMMITTED
| 688#define SQL_TRANSACTION_READ_COMMITTED SQL_TXN_READ_COMMITTED
|
560#define SQL_TXN_REPEATABLE_READ 0x00000004L
| 689#define SQL_TXN_REPEATABLE_READ 0x00000004L
|
561#define SQL_TRANSACTION_REPEATABLE_READ SQL_TXN_REPEATABLE_READ
| 690#define SQL_TRANSACTION_REPEATABLE_READ SQL_TXN_REPEATABLE_READ
|
562#define SQL_TXN_SERIALIZABLE 0x00000008L
| 691#define SQL_TXN_SERIALIZABLE 0x00000008L
|
563#define SQL_TRANSACTION_SERIALIZABLE SQL_TXN_SERIALIZABLE 564
| 692#define SQL_TRANSACTION_SERIALIZABLE SQL_TXN_SERIALIZABLE 693
|
565/* SQL_NULL_COLLATION values */ 566#define SQL_NC_HIGH 0 567#define SQL_NC_LOW 1
| |
568
| 694
|
569 SQLRETURN SQL_API SQLAllocConnect(SQLHENV EnvironmentHandle, 570 SQLHDBC *ConnectionHandle);
| 695/* 696 * SQLGetStmtAttr - statement attributes 697 */ 698#if (ODBCVER >= 0x0300) 699#define SQL_ATTR_APP_ROW_DESC 10010 700#define SQL_ATTR_APP_PARAM_DESC 10011 701#define SQL_ATTR_IMP_ROW_DESC 10012 702#define SQL_ATTR_IMP_PARAM_DESC 10013 703#define SQL_ATTR_CURSOR_SCROLLABLE (-1) 704#define SQL_ATTR_CURSOR_SENSITIVITY (-2) 705#endif /* ODBCVER >= 0x0300 */
|
571
| 706
|
572 SQLRETURN SQL_API SQLAllocEnv(SQLHENV *EnvironmentHandle);
| |
573
| 707
|
| 708/* 709 * SQLGetStmtAttr - SQL_ATTR_CURSOR_SCROLLABLE 710 */
|
574#if (ODBCVER >= 0x0300)
| 711#if (ODBCVER >= 0x0300)
|
575 SQLRETURN SQL_API SQLAllocHandle(SQLSMALLINT HandleType, 576 SQLHANDLE InputHandle, SQLHANDLE *OutputHandle); 577#endif
| 712#define SQL_NONSCROLLABLE 0 713#define SQL_SCROLLABLE 1 714#endif /* ODBCVER >= 0x0300 */
|
578
| 715
|
579 SQLRETURN SQL_API SQLAllocStmt(SQLHDBC ConnectionHandle, 580 SQLHSTMT *StatementHandle);
| |
581
| 716
|
582 SQLRETURN SQL_API SQLBindCol(SQLHSTMT StatementHandle, 583 SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, 584 SQLPOINTER TargetValue, SQLLEN BufferLength, 585 SQLLEN *StrLen_or_Ind);
| 717/* 718 * SQLGetStmtAttr - SQL_ATTR_CURSOR_SENSITIVITY 719 */ 720#if (ODBCVER >= 0x0300) 721#define SQL_UNSPECIFIED 0 722#define SQL_INSENSITIVE 1 723#define SQL_SENSITIVE 2 724#endif /* ODBCVER >= 0x0300 */
|
586
| 725
|
| 726 727/* 728 * SQLGetTypeInfo - SEARCHABLE 729 */
|
587#if (ODBCVER >= 0x0300)
| 730#if (ODBCVER >= 0x0300)
|
588 SQLRETURN SQL_API SQLBindParam(SQLHSTMT StatementHandle, 589 SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType, 590 SQLSMALLINT ParameterType, SQLULEN LengthPrecision, 591 SQLSMALLINT ParameterScale, SQLPOINTER ParameterValue, 592 SQLLEN *StrLen_or_Ind); 593#endif
| 731#define SQL_PRED_NONE 0 732#define SQL_PRED_CHAR 1 733#define SQL_PRED_BASIC 2 734#endif /* ODBCVER >= 0x0300 */
|
594
| 735
|
595 SQLRETURN SQL_API SQLCancel(SQLHSTMT StatementHandle);
| |
596
| 736
|
| 737/* 738 * SQLSpecialColumns - Column scopes 739 */ 740#define SQL_SCOPE_CURROW 0 741#define SQL_SCOPE_TRANSACTION 1 742#define SQL_SCOPE_SESSION 2 743 744 745/* 746 * SQLSpecialColumns - PSEUDO_COLUMN 747 */ 748#define SQL_PC_UNKNOWN 0
|
597#if (ODBCVER >= 0x0300)
| 749#if (ODBCVER >= 0x0300)
|
598 SQLRETURN SQL_API SQLCloseCursor(SQLHSTMT StatementHandle);
| 750#define SQL_PC_NON_PSEUDO 1 751#endif /* ODBCVER >= 0x0300 */ 752#define SQL_PC_PSEUDO 2
|
599
| 753
|
600 SQLRETURN SQL_API SQLColAttribute(SQLHSTMT StatementHandle, 601 SQLUSMALLINT ColumnNumber, SQLUSMALLINT FieldIdentifier, 602 SQLPOINTER CharacterAttribute, SQLSMALLINT BufferLength, 603 SQLSMALLINT *StringLength, SQLLEN *NumericAttribute 604 /* spec says (SQLPOINTER) not (SQLEN*) - PAH */ ); 605 /* Ms now say SQLLEN* http://msdn.microsoft.com/library/en-us/odbc/htm/dasdkodbcoverview_64bit.asp - NG */ 606
| 754 755/* 756 * SQLSpecialColumns - IdentifierType 757 */ 758#if (ODBCVER >= 0x0300) 759#define SQL_ROW_IDENTIFIER 1 760#endif /* ODBCVER >= 0x0300 */ 761 762 763/* 764 * SQLStatistics - fUnique 765 */ 766#define SQL_INDEX_UNIQUE 0 767#define SQL_INDEX_ALL 1 768 769 770/* 771 * SQLStatistics - TYPE 772 */ 773#define SQL_INDEX_CLUSTERED 1 774#define SQL_INDEX_HASHED 2 775#define SQL_INDEX_OTHER 3 776 777 778/* 779 * SQLTransact/SQLEndTran 780 */ 781#define SQL_COMMIT 0 782#define SQL_ROLLBACK 1 783 784 785/* 786 * Function Prototypes 787 */ 788SQLRETURN SQL_API SQLAllocConnect ( 789 SQLHENV EnvironmentHandle, 790 SQLHDBC * ConnectionHandle); 791 792SQLRETURN SQL_API SQLAllocEnv ( 793 SQLHENV * EnvironmentHandle); 794 795#if (ODBCVER >= 0x0300) 796SQLRETURN SQL_API SQLAllocHandle ( 797 SQLSMALLINT HandleType, 798 SQLHANDLE InputHandle, 799 SQLHANDLE * OutputHandle); 800#endif /* ODBCVER >= 0x0300 */ 801 802SQLRETURN SQL_API SQLAllocStmt ( 803 SQLHDBC ConnectionHandle, 804 SQLHSTMT * StatementHandle); 805 806SQLRETURN SQL_API SQLBindCol ( 807 SQLHSTMT StatementHandle, 808 SQLUSMALLINT ColumnNumber, 809 SQLSMALLINT TargetType, 810 SQLPOINTER TargetValue, 811 SQLLEN BufferLength, 812 SQLLEN * StrLen_or_Ind); 813 814#if (ODBCVER >= 0x0300) 815SQLRETURN SQL_API SQLBindParam ( 816 SQLHSTMT StatementHandle, 817 SQLUSMALLINT ParameterNumber, 818 SQLSMALLINT ValueType, 819 SQLSMALLINT ParameterType, 820 SQLULEN LengthPrecision, 821 SQLSMALLINT ParameterScale, 822 SQLPOINTER ParameterValue, 823 SQLLEN * StrLen_or_Ind);
|
607#endif 608
| 824#endif 825
|
| 826SQLRETURN SQL_API SQLCancel ( 827 SQLHSTMT StatementHandle);
|
609
| 828
|
610 SQLRETURN SQL_API SQLColumns(SQLHSTMT StatementHandle, 611 SQLCHAR *CatalogName, SQLSMALLINT NameLength1, 612 SQLCHAR *SchemaName, SQLSMALLINT NameLength2, 613 SQLCHAR *TableName, SQLSMALLINT NameLength3, 614 SQLCHAR *ColumnName, SQLSMALLINT NameLength4);
| 829#if (ODBCVER >= 0x0300) 830SQLRETURN SQL_API SQLCloseCursor ( 831 SQLHSTMT StatementHandle);
|
615
| 832
|
| 833/* 834 * Using SQLLEN * instead of SQLPOINTER for NumericAttribute, 835 * makes the prototype the same as SQLColAttributes (deprecated) 836 * and clearer for 64bit ports 837 */ 838SQLRETURN SQL_API SQLColAttribute ( 839 SQLHSTMT StatementHandle, 840 SQLUSMALLINT ColumnNumber, 841 SQLUSMALLINT FieldIdentifier, 842 SQLPOINTER CharacterAttribute, 843 SQLSMALLINT BufferLength, 844 SQLSMALLINT * StringLength, 845 SQLLEN * NumericAttribute); 846#endif
|
616
| 847
|
617 SQLRETURN SQL_API SQLConnect(SQLHDBC ConnectionHandle, 618 SQLCHAR *ServerName, SQLSMALLINT NameLength1, 619 SQLCHAR *UserName, SQLSMALLINT NameLength2, 620 SQLCHAR *Authentication, SQLSMALLINT NameLength3);
| 848SQLRETURN SQL_API SQLColumns ( 849 SQLHSTMT StatementHandle, 850 SQLCHAR * CatalogName, 851 SQLSMALLINT NameLength1, 852 SQLCHAR * SchemaName, 853 SQLSMALLINT NameLength2, 854 SQLCHAR * TableName, 855 SQLSMALLINT NameLength3, 856 SQLCHAR * ColumnName, 857 SQLSMALLINT NameLength4);
|
621
| 858
|
| 859SQLRETURN SQL_API SQLConnect ( 860 SQLHDBC ConnectionHandle, 861 SQLCHAR * ServerName, 862 SQLSMALLINT NameLength1, 863 SQLCHAR * UserName, 864 SQLSMALLINT NameLength2, 865 SQLCHAR * Authentication, 866 SQLSMALLINT NameLength3); 867
|
622#if (ODBCVER >= 0x0300)
| 868#if (ODBCVER >= 0x0300)
|
623 SQLRETURN SQL_API SQLCopyDesc(SQLHDESC SourceDescHandle, 624 SQLHDESC TargetDescHandle);
| 869SQLRETURN SQL_API SQLCopyDesc ( 870 SQLHDESC SourceDescHandle, 871 SQLHDESC TargetDescHandle);
|
625#endif 626
| 872#endif 873
|
627 SQLRETURN SQL_API SQLDataSources(SQLHENV EnvironmentHandle, 628 SQLUSMALLINT Direction, SQLCHAR *ServerName, 629 SQLSMALLINT BufferLength1, SQLSMALLINT *NameLength1, 630 SQLCHAR *Description, SQLSMALLINT BufferLength2, 631 SQLSMALLINT *NameLength2);
| 874SQLRETURN SQL_API SQLDataSources ( 875 SQLHENV EnvironmentHandle, 876 SQLUSMALLINT Direction, 877 SQLCHAR * ServerName, 878 SQLSMALLINT BufferLength1, 879 SQLSMALLINT * NameLength1, 880 SQLCHAR * Description, 881 SQLSMALLINT BufferLength2, 882 SQLSMALLINT * NameLength2);
|
632
| 883
|
633 SQLRETURN SQL_API SQLDescribeCol(SQLHSTMT StatementHandle, 634 SQLUSMALLINT ColumnNumber, SQLCHAR *ColumnName, 635 SQLSMALLINT BufferLength, SQLSMALLINT *NameLength, 636 SQLSMALLINT *DataType, SQLULEN *ColumnSize, 637 SQLSMALLINT *DecimalDigits, SQLSMALLINT *Nullable);
| 884SQLRETURN SQL_API SQLDescribeCol ( 885 SQLHSTMT StatementHandle, 886 SQLUSMALLINT ColumnNumber, 887 SQLCHAR * ColumnName, 888 SQLSMALLINT BufferLength, 889 SQLSMALLINT * NameLength, 890 SQLSMALLINT * DataType, 891 SQLULEN * ColumnSize, 892 SQLSMALLINT * DecimalDigits, 893 SQLSMALLINT * Nullable);
|
638
| 894
|
639 SQLRETURN SQL_API SQLDisconnect(SQLHDBC ConnectionHandle);
| 895SQLRETURN SQL_API SQLDisconnect ( 896 SQLHDBC ConnectionHandle);
|
640 641#if (ODBCVER >= 0x0300)
| 897 898#if (ODBCVER >= 0x0300)
|
642 SQLRETURN SQL_API SQLEndTran(SQLSMALLINT HandleType, SQLHANDLE Handle, 643 SQLSMALLINT CompletionType);
| 899SQLRETURN SQL_API SQLEndTran ( 900 SQLSMALLINT HandleType, 901 SQLHANDLE Handle, 902 SQLSMALLINT CompletionType);
|
644#endif 645
| 903#endif 904
|
646 SQLRETURN SQL_API SQLError(SQLHENV EnvironmentHandle, 647 SQLHDBC ConnectionHandle, SQLHSTMT StatementHandle, 648 SQLCHAR *Sqlstate, SQLINTEGER *NativeError, 649 SQLCHAR *MessageText, SQLSMALLINT BufferLength, 650 SQLSMALLINT *TextLength);
| 905SQLRETURN SQL_API SQLError ( 906 SQLHENV EnvironmentHandle, 907 SQLHDBC ConnectionHandle, 908 SQLHSTMT StatementHandle, 909 SQLCHAR * Sqlstate, 910 SQLINTEGER * NativeError, 911 SQLCHAR * MessageText, 912 SQLSMALLINT BufferLength, 913 SQLSMALLINT * TextLength);
|
651
| 914
|
652 SQLRETURN SQL_API SQLExecDirect(SQLHSTMT StatementHandle, 653 SQLCHAR *StatementText, SQLINTEGER TextLength);
| 915SQLRETURN SQL_API SQLExecDirect ( 916 SQLHSTMT StatementHandle, 917 SQLCHAR * StatementText, 918 SQLINTEGER TextLength);
|
654
| 919
|
655 SQLRETURN SQL_API SQLExecute(SQLHSTMT StatementHandle);
| 920SQLRETURN SQL_API SQLExecute ( 921 SQLHSTMT StatementHandle);
|
656
| 922
|
657 SQLRETURN SQL_API SQLFetch(SQLHSTMT StatementHandle);
| 923SQLRETURN SQL_API SQLFetch ( 924 SQLHSTMT StatementHandle);
|
658 659#if (ODBCVER >= 0x0300)
| 925 926#if (ODBCVER >= 0x0300)
|
660 SQLRETURN SQL_API SQLFetchScroll(SQLHSTMT StatementHandle, 661 SQLSMALLINT FetchOrientation, SQLLEN FetchOffset);
| 927SQLRETURN SQL_API SQLFetchScroll ( 928 SQLHSTMT StatementHandle, 929 SQLSMALLINT FetchOrientation, 930 SQLLEN FetchOffset);
|
662#endif 663
| 931#endif 932
|
664 SQLRETURN SQL_API SQLFreeConnect(SQLHDBC ConnectionHandle);
| 933SQLRETURN SQL_API SQLFreeConnect ( 934 SQLHDBC ConnectionHandle);
|
665
| 935
|
666 SQLRETURN SQL_API SQLFreeEnv(SQLHENV EnvironmentHandle);
| 936SQLRETURN SQL_API SQLFreeEnv ( 937 SQLHENV EnvironmentHandle);
|
667 668#if (ODBCVER >= 0x0300)
| 938 939#if (ODBCVER >= 0x0300)
|
669 SQLRETURN SQL_API SQLFreeHandle(SQLSMALLINT HandleType, SQLHANDLE Handle);
| 940SQLRETURN SQL_API SQLFreeHandle ( 941 SQLSMALLINT HandleType, 942 SQLHANDLE Handle);
|
670#endif 671
| 943#endif 944
|
672 SQLRETURN SQL_API SQLFreeStmt(SQLHSTMT StatementHandle, 673 SQLUSMALLINT Option);
| 945SQLRETURN SQL_API SQLFreeStmt ( 946 SQLHSTMT StatementHandle, 947 SQLUSMALLINT Option);
|
674 675#if (ODBCVER >= 0x0300)
| 948 949#if (ODBCVER >= 0x0300)
|
676 SQLRETURN SQL_API SQLGetConnectAttr(SQLHDBC ConnectionHandle, 677 SQLINTEGER Attribute, SQLPOINTER Value, 678 SQLINTEGER BufferLength, SQLINTEGER *StringLength);
| 950SQLRETURN SQL_API SQLGetConnectAttr ( 951 SQLHDBC ConnectionHandle, 952 SQLINTEGER Attribute, 953 SQLPOINTER Value, 954 SQLINTEGER BufferLength, 955 SQLINTEGER * StringLength);
|
679#endif 680
| 956#endif 957
|
681 SQLRETURN SQL_API SQLGetConnectOption(SQLHDBC ConnectionHandle, 682 SQLUSMALLINT Option, SQLPOINTER Value);
| 958SQLRETURN SQL_API SQLGetConnectOption ( 959 SQLHDBC ConnectionHandle, 960 SQLUSMALLINT Option, 961 SQLPOINTER Value);
|
683
| 962
|
684 SQLRETURN SQL_API SQLGetCursorName(SQLHSTMT StatementHandle, 685 SQLCHAR *CursorName, SQLSMALLINT BufferLength, 686 SQLSMALLINT *NameLength);
| 963SQLRETURN SQL_API SQLGetCursorName ( 964 SQLHSTMT StatementHandle, 965 SQLCHAR * CursorName, 966 SQLSMALLINT BufferLength, 967 SQLSMALLINT * NameLength);
|
687
| 968
|
688 SQLRETURN SQL_API SQLGetData(SQLHSTMT StatementHandle, 689 SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, 690 SQLPOINTER TargetValue, SQLLEN BufferLength, 691 SQLLEN *StrLen_or_Ind);
| 969SQLRETURN SQL_API SQLGetData ( 970 SQLHSTMT StatementHandle, 971 SQLUSMALLINT ColumnNumber, 972 SQLSMALLINT TargetType, 973 SQLPOINTER TargetValue, 974 SQLLEN BufferLength, 975 SQLLEN * StrLen_or_Ind);
|
692 693#if (ODBCVER >= 0x0300)
| 976 977#if (ODBCVER >= 0x0300)
|
694 SQLRETURN SQLGetDescField(SQLHDESC DescriptorHandle, 695 SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier, 696 SQLPOINTER Value, SQLINTEGER BufferLength, 697 SQLINTEGER *StringLength);
| 978SQLRETURN SQL_API SQLGetDescField ( 979 SQLHDESC DescriptorHandle, 980 SQLSMALLINT RecNumber, 981 SQLSMALLINT FieldIdentifier, 982 SQLPOINTER Value, 983 SQLINTEGER BufferLength, 984 SQLINTEGER * StringLength);
|
698
| 985
|
699 SQLRETURN SQL_API SQLGetDescRec(SQLHDESC DescriptorHandle, 700 SQLSMALLINT RecNumber, SQLCHAR *Name, 701 SQLSMALLINT BufferLength, SQLSMALLINT *StringLength, 702 SQLSMALLINT *Type, SQLSMALLINT *SubType, 703 SQLLEN *Length, SQLSMALLINT *Precision, 704 SQLSMALLINT *Scale, SQLSMALLINT *Nullable);
| 986SQLRETURN SQL_API SQLGetDescRec ( 987 SQLHDESC DescriptorHandle, 988 SQLSMALLINT RecNumber, 989 SQLCHAR * Name, 990 SQLSMALLINT BufferLength, 991 SQLSMALLINT * StringLength, 992 SQLSMALLINT * Type, 993 SQLSMALLINT * SubType, 994 SQLLEN * Length, 995 SQLSMALLINT * Precision, 996 SQLSMALLINT * Scale, 997 SQLSMALLINT * Nullable);
|
705
| 998
|
706 SQLRETURN SQL_API SQLGetDiagField(SQLSMALLINT HandleType, SQLHANDLE Handle, 707 SQLSMALLINT RecNumber, SQLSMALLINT DiagIdentifier, 708 SQLPOINTER DiagInfo, SQLSMALLINT BufferLength, 709 SQLSMALLINT *StringLength);
| 999SQLRETURN SQL_API SQLGetDiagField ( 1000 SQLSMALLINT HandleType, 1001 SQLHANDLE Handle, 1002 SQLSMALLINT RecNumber, 1003 SQLSMALLINT DiagIdentifier, 1004 SQLPOINTER DiagInfo, 1005 SQLSMALLINT BufferLength, 1006 SQLSMALLINT * StringLength);
|
710
| 1007
|
711 SQLRETURN SQL_API SQLGetDiagRec(SQLSMALLINT HandleType, SQLHANDLE Handle, 712 SQLSMALLINT RecNumber, SQLCHAR *Sqlstate, 713 SQLINTEGER *NativeError, SQLCHAR *MessageText, 714 SQLSMALLINT BufferLength, SQLSMALLINT *TextLength);
| 1008SQLRETURN SQL_API SQLGetDiagRec ( 1009 SQLSMALLINT HandleType, 1010 SQLHANDLE Handle, 1011 SQLSMALLINT RecNumber, 1012 SQLCHAR * Sqlstate, 1013 SQLINTEGER * NativeError, 1014 SQLCHAR * MessageText, 1015 SQLSMALLINT BufferLength, 1016 SQLSMALLINT * TextLength);
|
715
| 1017
|
716 SQLRETURN SQL_API SQLGetEnvAttr(SQLHENV EnvironmentHandle, 717 SQLINTEGER Attribute, SQLPOINTER Value, 718 SQLINTEGER BufferLength, SQLINTEGER *StringLength); 719#endif /* ODBCVER >= 0x0300 */
| 1018SQLRETURN SQL_API SQLGetEnvAttr ( 1019 SQLHENV EnvironmentHandle, 1020 SQLINTEGER Attribute, 1021 SQLPOINTER Value, 1022 SQLINTEGER BufferLength, 1023 SQLINTEGER * StringLength); 1024#endif /* ODBCVER >= 0x0300 */
|
720
| 1025
|
721 SQLRETURN SQL_API SQLGetFunctions(SQLHDBC ConnectionHandle, 722 SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported);
| 1026SQLRETURN SQL_API SQLGetFunctions ( 1027 SQLHDBC ConnectionHandle, 1028 SQLUSMALLINT FunctionId, 1029 SQLUSMALLINT * Supported);
|
723
| 1030
|
724 SQLRETURN SQL_API SQLGetInfo(SQLHDBC ConnectionHandle, 725 SQLUSMALLINT InfoType, SQLPOINTER InfoValue, 726 SQLSMALLINT BufferLength, SQLSMALLINT *StringLength);
| 1031SQLRETURN SQL_API SQLGetInfo ( 1032 SQLHDBC ConnectionHandle, 1033 SQLUSMALLINT InfoType, 1034 SQLPOINTER InfoValue, 1035 SQLSMALLINT BufferLength, 1036 SQLSMALLINT * StringLength);
|
727 728#if (ODBCVER >= 0x0300)
| 1037 1038#if (ODBCVER >= 0x0300)
|
729 SQLRETURN SQL_API SQLGetStmtAttr(SQLHSTMT StatementHandle, 730 SQLINTEGER Attribute, SQLPOINTER Value, 731 SQLINTEGER BufferLength, SQLINTEGER *StringLength); 732#endif /* ODBCVER >= 0x0300 */
| 1039SQLRETURN SQL_API SQLGetStmtAttr ( 1040 SQLHSTMT StatementHandle, 1041 SQLINTEGER Attribute, 1042 SQLPOINTER Value, 1043 SQLINTEGER BufferLength, 1044 SQLINTEGER * StringLength); 1045#endif /* ODBCVER >= 0x0300 */
|
733
| 1046
|
734 SQLRETURN SQL_API SQLGetStmtOption(SQLHSTMT StatementHandle, 735 SQLUSMALLINT Option, SQLPOINTER Value);
| 1047SQLRETURN SQL_API SQLGetStmtOption ( 1048 SQLHSTMT StatementHandle, 1049 SQLUSMALLINT Option, 1050 SQLPOINTER Value);
|
736
| 1051
|
737 SQLRETURN SQL_API SQLGetTypeInfo(SQLHSTMT StatementHandle, 738 SQLSMALLINT DataType);
| 1052SQLRETURN SQL_API SQLGetTypeInfo ( 1053 SQLHSTMT StatementHandle, 1054 SQLSMALLINT DataType);
|
739
| 1055
|
740 SQLRETURN SQL_API SQLNumResultCols(SQLHSTMT StatementHandle, 741 SQLSMALLINT *ColumnCount);
| 1056SQLRETURN SQL_API SQLNumResultCols ( 1057 SQLHSTMT StatementHandle, 1058 SQLSMALLINT * ColumnCount);
|
742
| 1059
|
743 SQLRETURN SQL_API SQLParamData(SQLHSTMT StatementHandle, 744 SQLPOINTER *Value);
| 1060SQLRETURN SQL_API SQLParamData ( 1061 SQLHSTMT StatementHandle, 1062 SQLPOINTER * Value);
|
745
| 1063
|
746 SQLRETURN SQL_API SQLPrepare(SQLHSTMT StatementHandle, 747 SQLCHAR *StatementText, SQLINTEGER TextLength);
| 1064SQLRETURN SQL_API SQLPrepare ( 1065 SQLHSTMT StatementHandle, 1066 SQLCHAR * StatementText, 1067 SQLINTEGER TextLength);
|
748
| 1068
|
749 SQLRETURN SQL_API SQLPutData(SQLHSTMT StatementHandle, 750 SQLPOINTER Data, SQLLEN StrLen_or_Ind);
| 1069SQLRETURN SQL_API SQLPutData ( 1070 SQLHSTMT StatementHandle, 1071 SQLPOINTER Data, 1072 SQLLEN StrLen_or_Ind);
|
751
| 1073
|
752 SQLRETURN SQL_API SQLRowCount(SQLHSTMT StatementHandle, 753 SQLLEN *RowCount);
| 1074SQLRETURN SQL_API SQLRowCount ( 1075 SQLHSTMT StatementHandle, 1076 SQLLEN * RowCount);
|
754 755#if (ODBCVER >= 0x0300)
| 1077 1078#if (ODBCVER >= 0x0300)
|
756 SQLRETURN SQL_API SQLSetConnectAttr(SQLHDBC ConnectionHandle, 757 SQLINTEGER Attribute, SQLPOINTER Value, 758 SQLINTEGER StringLength);
| 1079SQLRETURN SQL_API SQLSetConnectAttr ( 1080 SQLHDBC ConnectionHandle, 1081 SQLINTEGER Attribute, 1082 SQLPOINTER Value, 1083 SQLINTEGER StringLength);
|
759#endif /* ODBCVER >= 0x0300 */ 760
| 1084#endif /* ODBCVER >= 0x0300 */ 1085
|
761 SQLRETURN SQL_API SQLSetConnectOption(SQLHDBC ConnectionHandle, 762 SQLUSMALLINT Option, SQLULEN Value);
| 1086SQLRETURN SQL_API SQLSetConnectOption ( 1087 SQLHDBC ConnectionHandle, 1088 SQLUSMALLINT Option, 1089 SQLULEN Value);
|
763
| 1090
|
764 SQLRETURN SQL_API SQLSetCursorName(SQLHSTMT StatementHandle, 765 SQLCHAR *CursorName, SQLSMALLINT NameLength);
| 1091SQLRETURN SQL_API SQLSetCursorName ( 1092 SQLHSTMT StatementHandle, 1093 SQLCHAR * CursorName, 1094 SQLSMALLINT NameLength);
|
766 767#if (ODBCVER >= 0x0300)
| 1095 1096#if (ODBCVER >= 0x0300)
|
768 SQLRETURN SQL_API SQLSetDescField(SQLHDESC DescriptorHandle, 769 SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier, 770 SQLPOINTER Value, SQLINTEGER BufferLength);
| 1097SQLRETURN SQL_API SQLSetDescField ( 1098 SQLHDESC DescriptorHandle, 1099 SQLSMALLINT RecNumber, 1100 SQLSMALLINT FieldIdentifier, 1101 SQLPOINTER Value, 1102 SQLINTEGER BufferLength);
|
771
| 1103
|
772 SQLRETURN SQL_API SQLSetDescRec(SQLHDESC DescriptorHandle, 773 SQLSMALLINT RecNumber, SQLSMALLINT Type, 774 SQLSMALLINT SubType, SQLLEN Length, 775 SQLSMALLINT Precision, SQLSMALLINT Scale, 776 SQLPOINTER Data, SQLLEN *StringLength, 777 SQLLEN *Indicator);
| 1104SQLRETURN SQL_API SQLSetDescRec ( 1105 SQLHDESC DescriptorHandle, 1106 SQLSMALLINT RecNumber, 1107 SQLSMALLINT Type, 1108 SQLSMALLINT SubType, 1109 SQLLEN Length, 1110 SQLSMALLINT Precision, 1111 SQLSMALLINT Scale, 1112 SQLPOINTER Data, 1113 SQLLEN * StringLength, 1114 SQLLEN * Indicator);
|
778
| 1115
|
779 SQLRETURN SQL_API SQLSetEnvAttr(SQLHENV EnvironmentHandle, 780 SQLINTEGER Attribute, SQLPOINTER Value, 781 SQLINTEGER StringLength);
| 1116SQLRETURN SQL_API SQLSetEnvAttr ( 1117 SQLHENV EnvironmentHandle, 1118 SQLINTEGER Attribute, 1119 SQLPOINTER Value, 1120 SQLINTEGER StringLength);
|
782#endif /* ODBCVER >= 0x0300 */ 783
| 1121#endif /* ODBCVER >= 0x0300 */ 1122
|
784 SQLRETURN SQL_API SQLSetParam(SQLHSTMT StatementHandle, 785 SQLUSMALLINT ParameterNumber, SQLSMALLINT ValueType, 786 SQLSMALLINT ParameterType, SQLULEN LengthPrecision, 787 SQLSMALLINT ParameterScale, SQLPOINTER ParameterValue, 788 SQLLEN *StrLen_or_Ind);
| |
789 790#if (ODBCVER >= 0x0300)
| 1123 1124#if (ODBCVER >= 0x0300)
|
791 SQLRETURN SQL_API SQLSetStmtAttr(SQLHSTMT StatementHandle, 792 SQLINTEGER Attribute, SQLPOINTER Value, 793 SQLINTEGER StringLength);
| 1125SQLRETURN SQL_API SQLSetStmtAttr ( 1126 SQLHSTMT StatementHandle, 1127 SQLINTEGER Attribute, 1128 SQLPOINTER Value, 1129 SQLINTEGER StringLength);
|
794#endif 795
| 1130#endif 1131
|
796 SQLRETURN SQL_API SQLSetStmtOption(SQLHSTMT StatementHandle, 797 SQLUSMALLINT Option, SQLULEN Value);
| 1132SQLRETURN SQL_API SQLSetStmtOption ( 1133 SQLHSTMT StatementHandle, 1134 SQLUSMALLINT Option, 1135 SQLULEN Value);
|
798
| 1136
|
799 SQLRETURN SQL_API SQLSpecialColumns(SQLHSTMT StatementHandle, 800 SQLUSMALLINT IdentifierType, SQLCHAR *CatalogName, 801 SQLSMALLINT NameLength1, SQLCHAR *SchemaName, 802 SQLSMALLINT NameLength2, SQLCHAR *TableName, 803 SQLSMALLINT NameLength3, SQLUSMALLINT Scope, 804 SQLUSMALLINT Nullable);
| 1137SQLRETURN SQL_API SQLSpecialColumns ( 1138 SQLHSTMT StatementHandle, 1139 SQLUSMALLINT IdentifierType, 1140 SQLCHAR * CatalogName, 1141 SQLSMALLINT NameLength1, 1142 SQLCHAR * SchemaName, 1143 SQLSMALLINT NameLength2, 1144 SQLCHAR * TableName, 1145 SQLSMALLINT NameLength3, 1146 SQLUSMALLINT Scope, 1147 SQLUSMALLINT Nullable);
|
805
| 1148
|
806 SQLRETURN SQL_API SQLStatistics(SQLHSTMT StatementHandle, 807 SQLCHAR *CatalogName, SQLSMALLINT NameLength1, 808 SQLCHAR *SchemaName, SQLSMALLINT NameLength2, 809 SQLCHAR *TableName, SQLSMALLINT NameLength3, 810 SQLUSMALLINT Unique, SQLUSMALLINT Reserved);
| 1149SQLRETURN SQL_API SQLStatistics ( 1150 SQLHSTMT StatementHandle, 1151 SQLCHAR * CatalogName, 1152 SQLSMALLINT NameLength1, 1153 SQLCHAR * SchemaName, 1154 SQLSMALLINT NameLength2, 1155 SQLCHAR * TableName, 1156 SQLSMALLINT NameLength3, 1157 SQLUSMALLINT Unique, 1158 SQLUSMALLINT Reserved);
|
811
| 1159
|
812 SQLRETURN SQL_API SQLTables(SQLHSTMT StatementHandle, 813 SQLCHAR *CatalogName, SQLSMALLINT NameLength1, 814 SQLCHAR *SchemaName, SQLSMALLINT NameLength2, 815 SQLCHAR *TableName, SQLSMALLINT NameLength3, 816 SQLCHAR *TableType, SQLSMALLINT NameLength4);
| 1160SQLRETURN SQL_API SQLTables ( 1161 SQLHSTMT StatementHandle, 1162 SQLCHAR * CatalogName, 1163 SQLSMALLINT NameLength1, 1164 SQLCHAR * SchemaName, 1165 SQLSMALLINT NameLength2, 1166 SQLCHAR * TableName, 1167 SQLSMALLINT NameLength3, 1168 SQLCHAR * TableType, 1169 SQLSMALLINT NameLength4);
|
817
| 1170
|
818 SQLRETURN SQL_API SQLTransact(SQLHENV EnvironmentHandle, 819 SQLHDBC ConnectionHandle, SQLUSMALLINT CompletionType);
| 1171SQLRETURN SQL_API SQLTransact ( 1172 SQLHENV EnvironmentHandle, 1173 SQLHDBC ConnectionHandle, 1174 SQLUSMALLINT CompletionType);
|
820
| 1175
|
| 1176 1177/* 1178 * Depreciated ODBC 1.0 function - Use SQLBindParameter 1179 */ 1180SQLRETURN SQL_API SQLSetParam ( 1181 SQLHSTMT StatementHandle, 1182 SQLUSMALLINT ParameterNumber, 1183 SQLSMALLINT ValueType, 1184 SQLSMALLINT ParameterType, 1185 SQLULEN LengthPrecision, 1186 SQLSMALLINT ParameterScale, 1187 SQLPOINTER ParameterValue, 1188 SQLLEN * StrLen_or_Ind); 1189
|
821#ifdef __cplusplus 822} 823#endif
| 1190#ifdef __cplusplus 1191} 1192#endif
|
824#endif
| 1193 1194#endif /* _SQL_H */
|
| |