1 /* 2 * sql.h 3 * 4 * $Id: sql.h,v 1.9 2006/01/20 15:58:34 source Exp $ 5 * 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 */ 77 78 #ifndef _SQL_H 79 #define _SQL_H 80 81 /* 82 * Set default specification to ODBC 3.51 83 */ 84 #ifndef ODBCVER 85 #define ODBCVER 0x0351 86 #endif 87 88 /* 89 * Include Windows style defines and typedefs on Unix 90 */ 91 #ifndef _IODBCUNIX_H 92 #include <odbc/iodbcunix.h> 93 #endif 94 95 #ifndef _SQLTYPES_H 96 #include <odbc/sqltypes.h> 97 #endif 98 99 #ifdef __cplusplus 100 extern "C" { 101 #endif 102 103 /* 104 * Useful Constants 105 */ 106 #define SQL_MAX_MESSAGE_LENGTH 512 107 108 109 /* 110 * Handle types 111 */ 112 #if (ODBCVER >= 0x0300) 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 */ 118 119 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 129 #if (ODBCVER >= 0x0300) 130 #define SQL_NO_DATA 100 131 #endif /* ODBCVER >= 0x0300 */ 132 133 134 /* 135 * Test for SQL_SUCCESS or SQL_SUCCESS_WITH_INFO 136 */ 137 #define SQL_SUCCEEDED(rc) (((rc) & (~1)) == 0) 138 139 140 /* 141 * Special length values 142 */ 143 #define SQL_NULL_DATA (-1) 144 #define SQL_DATA_AT_EXEC (-2) 145 146 147 /* 148 * Flags for null-terminated strings 149 */ 150 #define SQL_NTS (-3) 151 #define SQL_NTSL (-3L) 152 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 166 #if (ODBCVER >= 0x0300) 167 #define SQL_DATETIME 9 168 #endif /* ODBCVER >= 0x0300 */ 169 #define SQL_VARCHAR 12 170 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 */ 181 #if (ODBCVER >= 0x0300) 182 #define SQL_TYPE_DATE 91 183 #define SQL_TYPE_TIME 92 184 #define SQL_TYPE_TIMESTAMP 93 185 #endif /* ODBCVER >= 0x0300 */ 186 187 188 /* 189 * Date/Time length constants 190 */ 191 #if (ODBCVER >= 0x0300) 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 */ 196 197 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 212 #if (ODBCVER >= 0x0300) 213 #define SQL_NULL_HDESC 0 214 #endif /* ODBCVER >= 0x0300 */ 215 216 217 /* 218 * NULL handle for parent argument to SQLAllocHandle when allocating 219 * a SQLHENV 220 */ 221 #if (ODBCVER >= 0x0300) 222 #define SQL_NULL_HANDLE 0L 223 #endif /* ODBCVER >= 0x0300 */ 224 225 226 /* 227 * CLI option values 228 */ 229 #if (ODBCVER >= 0x0300) 230 #define SQL_FALSE 0 231 #define SQL_TRUE 1 232 #endif /* ODBCVER >= 0x0300 */ 233 234 235 /* 236 * Default conversion code for SQLBindCol(), SQLBindParam() and SQLGetData() 237 */ 238 #if (ODBCVER >= 0x0300) 239 #define SQL_DEFAULT 99 240 #endif /* ODBCVER >= 0x0300 */ 241 242 243 /* 244 * SQLDataSources/SQLFetchScroll - FetchOrientation 245 */ 246 #define SQL_FETCH_NEXT 1 247 #define SQL_FETCH_FIRST 2 248 249 250 /* 251 * SQLFetchScroll - FetchOrientation 252 */ 253 #define SQL_FETCH_LAST 3 254 #define SQL_FETCH_PRIOR 4 255 #define SQL_FETCH_ABSOLUTE 5 256 #define SQL_FETCH_RELATIVE 6 257 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 */ 271 #if (ODBCVER >= 0x0300) 272 #define SQL_ATTR_AUTO_IPD 10001 273 #define SQL_ATTR_METADATA_ID 10014 274 #endif /* ODBCVER >= 0x0300 */ 275 276 277 /* 278 * SQLGetData() code indicating that the application row descriptor 279 * specifies the data type 280 */ 281 #if (ODBCVER >= 0x0300) 282 #define SQL_ARD_TYPE (-99) 283 #endif /* ODBCVER >= 0x0300 */ 284 285 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 */ 305 306 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 */ 314 315 316 /* 317 * SQLGetDescField - SQL_DESC_DATETIME_INTERVAL_CODE 318 */ 319 #if (ODBCVER >= 0x0300) 320 #define SQL_CODE_DATE 1 321 #define SQL_CODE_TIME 2 322 #define SQL_CODE_TIMESTAMP 3 323 #endif /* ODBCVER >= 0x0300 */ 324 325 326 /* 327 * SQLGetDescField - SQL_DESC_UNNAMED 328 */ 329 #if (ODBCVER >= 0x0300) 330 #define SQL_NAMED 0 331 #define SQL_UNNAMED 1 332 #endif /* ODBCVER >= 0x0300 */ 333 334 335 /* 336 * SQLGetDiagField - identifiers of fields in the diagnostics area 337 */ 338 #if (ODBCVER >= 0x0300) 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 */ 352 353 354 /* 355 * SQLGetDiagField - SQL_DIAG_DYNAMIC_FUNCTION_CODE 356 */ 357 #if (ODBCVER >= 0x0300) 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 */ 389 390 391 /* 392 * SQLGetEnvAttr - environment attribute 393 */ 394 #if (ODBCVER >= 0x0300) 395 #define SQL_ATTR_OUTPUT_NTS 10001 396 #endif /* ODBCVER >= 0x0300 */ 397 398 399 /* 400 * SQLGetFunctions 401 */ 402 #define SQL_API_SQLALLOCCONNECT 1 403 #define SQL_API_SQLALLOCENV 2 404 #if (ODBCVER >= 0x0300) 405 #define SQL_API_SQLALLOCHANDLE 1001 406 #endif /* ODBCVER >= 0x0300 */ 407 #define SQL_API_SQLALLOCSTMT 3 408 #define SQL_API_SQLBINDCOL 4 409 #if (ODBCVER >= 0x0300) 410 #define SQL_API_SQLBINDPARAM 1002 411 #endif /* ODBCVER >= 0x0300 */ 412 #define SQL_API_SQLCANCEL 5 413 #if (ODBCVER >= 0x0300) 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 419 #if (ODBCVER >= 0x0300) 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 425 #if (ODBCVER >= 0x0300) 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 432 #if (ODBCVER >= 0x0300) 433 #define SQL_API_SQLFETCHSCROLL 1021 434 #endif /* ODBCVER >= 0x0300 */ 435 #define SQL_API_SQLFREECONNECT 14 436 #define SQL_API_SQLFREEENV 15 437 #if (ODBCVER >= 0x0300) 438 #define SQL_API_SQLFREEHANDLE 1006 439 #endif /* ODBCVER >= 0x0300 */ 440 #define SQL_API_SQLFREESTMT 16 441 #if (ODBCVER >= 0x0300) 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 447 #if (ODBCVER >= 0x0300) 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 456 #if (ODBCVER >= 0x0300) 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 466 #if (ODBCVER >= 0x0300) 467 #define SQL_API_SQLSETCONNECTATTR 1016 468 #endif /* ODBCVER >= 0x0300 */ 469 #define SQL_API_SQLSETCONNECTOPTION 50 470 #define SQL_API_SQLSETCURSORNAME 21 471 #if (ODBCVER >= 0x0300) 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 477 #if (ODBCVER >= 0x0300) 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 485 486 487 /* 488 * SQLGetInfo 489 */ 490 #if (ODBCVER >= 0x0300) 491 #define SQL_MAX_DRIVER_CONNECTIONS 0 492 #define SQL_MAXIMUM_DRIVER_CONNECTIONS SQL_MAX_DRIVER_CONNECTIONS 493 #define SQL_MAX_CONCURRENT_ACTIVITIES 1 494 #define SQL_MAXIMUM_CONCURRENT_ACTIVITIES SQL_MAX_CONCURRENT_ACTIVITIES 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 510 #define SQL_MAXIMUM_COLUMN_NAME_LENGTH SQL_MAX_COLUMN_NAME_LEN 511 #define SQL_MAX_CURSOR_NAME_LEN 31 512 #define SQL_MAXIMUM_CURSOR_NAME_LENGTH SQL_MAX_CURSOR_NAME_LEN 513 #define SQL_MAX_SCHEMA_NAME_LEN 32 514 #define SQL_MAXIMUM_SCHEMA_NAME_LENGTH SQL_MAX_SCHEMA_NAME_LEN 515 #define SQL_MAX_CATALOG_NAME_LEN 34 516 #define SQL_MAXIMUM_CATALOG_NAME_LENGTH SQL_MAX_CATALOG_NAME_LEN 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 523 #define SQL_TRANSACTION_ISOLATION_OPTION SQL_TXN_ISOLATION_OPTION 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 531 #define SQL_MAXIMUM_COLUMNS_IN_GROUP_BY SQL_MAX_COLUMNS_IN_GROUP_BY 532 #define SQL_MAX_COLUMNS_IN_INDEX 98 533 #define SQL_MAXIMUM_COLUMNS_IN_INDEX SQL_MAX_COLUMNS_IN_INDEX 534 #define SQL_MAX_COLUMNS_IN_ORDER_BY 99 535 #define SQL_MAXIMUM_COLUMNS_IN_ORDER_BY SQL_MAX_COLUMNS_IN_ORDER_BY 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 549 #if (ODBCVER >= 0x0300) 550 #define SQL_OJ_CAPABILITIES 115 551 #define SQL_OUTER_JOIN_CAPABILITIES SQL_OJ_CAPABILITIES 552 #endif /* ODBCVER >= 0x0300 */ 553 554 #if (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 */ 563 564 565 /* 566 * SQLGetInfo - SQL_ALTER_TABLE 567 */ 568 #if (ODBCVER >= 0x0200) 569 #define SQL_AT_ADD_COLUMN 0x00000001L 570 #define SQL_AT_DROP_COLUMN 0x00000002L 571 #endif /* ODBCVER >= 0x0300 */ 572 573 #if (ODBCVER >= 0x0300) 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 */ 595 596 597 /* 598 * SQLGetInfo - SQL_ASYNC_MODE 599 */ 600 #if (ODBCVER >= 0x0300) 601 #define SQL_AM_NONE 0 602 #define SQL_AM_CONNECTION 1 603 #define SQL_AM_STATEMENT 2 604 #endif /* ODBCVER >= 0x0300 */ 605 606 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 613 614 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 624 625 626 /* 627 * SQLGetInfo - SQL_GETDATA_EXTENSIONS 628 */ 629 #define SQL_GD_ANY_COLUMN 0x00000001L 630 #define SQL_GD_ANY_ORDER 0x00000002L 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 */ 652 #if (ODBCVER >= 0x0201) 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 660 #endif 661 662 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 670 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 686 #define SQL_TRANSACTION_READ_UNCOMMITTED SQL_TXN_READ_UNCOMMITTED 687 #define SQL_TXN_READ_COMMITTED 0x00000002L 688 #define SQL_TRANSACTION_READ_COMMITTED SQL_TXN_READ_COMMITTED 689 #define SQL_TXN_REPEATABLE_READ 0x00000004L 690 #define SQL_TRANSACTION_REPEATABLE_READ SQL_TXN_REPEATABLE_READ 691 #define SQL_TXN_SERIALIZABLE 0x00000008L 692 #define SQL_TRANSACTION_SERIALIZABLE SQL_TXN_SERIALIZABLE 693 694 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 */ 706 707 708 /* 709 * SQLGetStmtAttr - SQL_ATTR_CURSOR_SCROLLABLE 710 */ 711 #if (ODBCVER >= 0x0300) 712 #define SQL_NONSCROLLABLE 0 713 #define SQL_SCROLLABLE 1 714 #endif /* ODBCVER >= 0x0300 */ 715 716 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 */ 725 726 727 /* 728 * SQLGetTypeInfo - SEARCHABLE 729 */ 730 #if (ODBCVER >= 0x0300) 731 #define SQL_PRED_NONE 0 732 #define SQL_PRED_CHAR 1 733 #define SQL_PRED_BASIC 2 734 #endif /* ODBCVER >= 0x0300 */ 735 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 749 #if (ODBCVER >= 0x0300) 750 #define SQL_PC_NON_PSEUDO 1 751 #endif /* ODBCVER >= 0x0300 */ 752 #define SQL_PC_PSEUDO 2 753 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 */ 788 SQLRETURN SQL_API SQLAllocConnect ( 789 SQLHENV EnvironmentHandle, 790 SQLHDBC * ConnectionHandle); 791 792 SQLRETURN SQL_API SQLAllocEnv ( 793 SQLHENV * EnvironmentHandle); 794 795 #if (ODBCVER >= 0x0300) 796 SQLRETURN SQL_API SQLAllocHandle ( 797 SQLSMALLINT HandleType, 798 SQLHANDLE InputHandle, 799 SQLHANDLE * OutputHandle); 800 #endif /* ODBCVER >= 0x0300 */ 801 802 SQLRETURN SQL_API SQLAllocStmt ( 803 SQLHDBC ConnectionHandle, 804 SQLHSTMT * StatementHandle); 805 806 SQLRETURN 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) 815 SQLRETURN 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); 824 #endif 825 826 SQLRETURN SQL_API SQLCancel ( 827 SQLHSTMT StatementHandle); 828 829 #if (ODBCVER >= 0x0300) 830 SQLRETURN SQL_API SQLCloseCursor ( 831 SQLHSTMT StatementHandle); 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 */ 838 SQLRETURN 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 847 848 SQLRETURN 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); 858 859 SQLRETURN 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 868 #if (ODBCVER >= 0x0300) 869 SQLRETURN SQL_API SQLCopyDesc ( 870 SQLHDESC SourceDescHandle, 871 SQLHDESC TargetDescHandle); 872 #endif 873 874 SQLRETURN 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); 883 884 SQLRETURN 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); 894 895 SQLRETURN SQL_API SQLDisconnect ( 896 SQLHDBC ConnectionHandle); 897 898 #if (ODBCVER >= 0x0300) 899 SQLRETURN SQL_API SQLEndTran ( 900 SQLSMALLINT HandleType, 901 SQLHANDLE Handle, 902 SQLSMALLINT CompletionType); 903 #endif 904 905 SQLRETURN 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); 914 915 SQLRETURN SQL_API SQLExecDirect ( 916 SQLHSTMT StatementHandle, 917 SQLCHAR * StatementText, 918 SQLINTEGER TextLength); 919 920 SQLRETURN SQL_API SQLExecute ( 921 SQLHSTMT StatementHandle); 922 923 SQLRETURN SQL_API SQLFetch ( 924 SQLHSTMT StatementHandle); 925 926 #if (ODBCVER >= 0x0300) 927 SQLRETURN SQL_API SQLFetchScroll ( 928 SQLHSTMT StatementHandle, 929 SQLSMALLINT FetchOrientation, 930 SQLLEN FetchOffset); 931 #endif 932 933 SQLRETURN SQL_API SQLFreeConnect ( 934 SQLHDBC ConnectionHandle); 935 936 SQLRETURN SQL_API SQLFreeEnv ( 937 SQLHENV EnvironmentHandle); 938 939 #if (ODBCVER >= 0x0300) 940 SQLRETURN SQL_API SQLFreeHandle ( 941 SQLSMALLINT HandleType, 942 SQLHANDLE Handle); 943 #endif 944 945 SQLRETURN SQL_API SQLFreeStmt ( 946 SQLHSTMT StatementHandle, 947 SQLUSMALLINT Option); 948 949 #if (ODBCVER >= 0x0300) 950 SQLRETURN SQL_API SQLGetConnectAttr ( 951 SQLHDBC ConnectionHandle, 952 SQLINTEGER Attribute, 953 SQLPOINTER Value, 954 SQLINTEGER BufferLength, 955 SQLINTEGER * StringLength); 956 #endif 957 958 SQLRETURN SQL_API SQLGetConnectOption ( 959 SQLHDBC ConnectionHandle, 960 SQLUSMALLINT Option, 961 SQLPOINTER Value); 962 963 SQLRETURN SQL_API SQLGetCursorName ( 964 SQLHSTMT StatementHandle, 965 SQLCHAR * CursorName, 966 SQLSMALLINT BufferLength, 967 SQLSMALLINT * NameLength); 968 969 SQLRETURN SQL_API SQLGetData ( 970 SQLHSTMT StatementHandle, 971 SQLUSMALLINT ColumnNumber, 972 SQLSMALLINT TargetType, 973 SQLPOINTER TargetValue, 974 SQLLEN BufferLength, 975 SQLLEN * StrLen_or_Ind); 976 977 #if (ODBCVER >= 0x0300) 978 SQLRETURN SQL_API SQLGetDescField ( 979 SQLHDESC DescriptorHandle, 980 SQLSMALLINT RecNumber, 981 SQLSMALLINT FieldIdentifier, 982 SQLPOINTER Value, 983 SQLINTEGER BufferLength, 984 SQLINTEGER * StringLength); 985 986 SQLRETURN 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); 998 999 SQLRETURN SQL_API SQLGetDiagField ( 1000 SQLSMALLINT HandleType, 1001 SQLHANDLE Handle, 1002 SQLSMALLINT RecNumber, 1003 SQLSMALLINT DiagIdentifier, 1004 SQLPOINTER DiagInfo, 1005 SQLSMALLINT BufferLength, 1006 SQLSMALLINT * StringLength); 1007 1008 SQLRETURN 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); 1017 1018 SQLRETURN SQL_API SQLGetEnvAttr ( 1019 SQLHENV EnvironmentHandle, 1020 SQLINTEGER Attribute, 1021 SQLPOINTER Value, 1022 SQLINTEGER BufferLength, 1023 SQLINTEGER * StringLength); 1024 #endif /* ODBCVER >= 0x0300 */ 1025 1026 SQLRETURN SQL_API SQLGetFunctions ( 1027 SQLHDBC ConnectionHandle, 1028 SQLUSMALLINT FunctionId, 1029 SQLUSMALLINT * Supported); 1030 1031 SQLRETURN SQL_API SQLGetInfo ( 1032 SQLHDBC ConnectionHandle, 1033 SQLUSMALLINT InfoType, 1034 SQLPOINTER InfoValue, 1035 SQLSMALLINT BufferLength, 1036 SQLSMALLINT * StringLength); 1037 1038 #if (ODBCVER >= 0x0300) 1039 SQLRETURN SQL_API SQLGetStmtAttr ( 1040 SQLHSTMT StatementHandle, 1041 SQLINTEGER Attribute, 1042 SQLPOINTER Value, 1043 SQLINTEGER BufferLength, 1044 SQLINTEGER * StringLength); 1045 #endif /* ODBCVER >= 0x0300 */ 1046 1047 SQLRETURN SQL_API SQLGetStmtOption ( 1048 SQLHSTMT StatementHandle, 1049 SQLUSMALLINT Option, 1050 SQLPOINTER Value); 1051 1052 SQLRETURN SQL_API SQLGetTypeInfo ( 1053 SQLHSTMT StatementHandle, 1054 SQLSMALLINT DataType); 1055 1056 SQLRETURN SQL_API SQLNumResultCols ( 1057 SQLHSTMT StatementHandle, 1058 SQLSMALLINT * ColumnCount); 1059 1060 SQLRETURN SQL_API SQLParamData ( 1061 SQLHSTMT StatementHandle, 1062 SQLPOINTER * Value); 1063 1064 SQLRETURN SQL_API SQLPrepare ( 1065 SQLHSTMT StatementHandle, 1066 SQLCHAR * StatementText, 1067 SQLINTEGER TextLength); 1068 1069 SQLRETURN SQL_API SQLPutData ( 1070 SQLHSTMT StatementHandle, 1071 SQLPOINTER Data, 1072 SQLLEN StrLen_or_Ind); 1073 1074 SQLRETURN SQL_API SQLRowCount ( 1075 SQLHSTMT StatementHandle, 1076 SQLLEN * RowCount); 1077 1078 #if (ODBCVER >= 0x0300) 1079 SQLRETURN SQL_API SQLSetConnectAttr ( 1080 SQLHDBC ConnectionHandle, 1081 SQLINTEGER Attribute, 1082 SQLPOINTER Value, 1083 SQLINTEGER StringLength); 1084 #endif /* ODBCVER >= 0x0300 */ 1085 1086 SQLRETURN SQL_API SQLSetConnectOption ( 1087 SQLHDBC ConnectionHandle, 1088 SQLUSMALLINT Option, 1089 SQLULEN Value); 1090 1091 SQLRETURN SQL_API SQLSetCursorName ( 1092 SQLHSTMT StatementHandle, 1093 SQLCHAR * CursorName, 1094 SQLSMALLINT NameLength); 1095 1096 #if (ODBCVER >= 0x0300) 1097 SQLRETURN SQL_API SQLSetDescField ( 1098 SQLHDESC DescriptorHandle, 1099 SQLSMALLINT RecNumber, 1100 SQLSMALLINT FieldIdentifier, 1101 SQLPOINTER Value, 1102 SQLINTEGER BufferLength); 1103 1104 SQLRETURN 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); 1115 1116 SQLRETURN SQL_API SQLSetEnvAttr ( 1117 SQLHENV EnvironmentHandle, 1118 SQLINTEGER Attribute, 1119 SQLPOINTER Value, 1120 SQLINTEGER StringLength); 1121 #endif /* ODBCVER >= 0x0300 */ 1122 1123 1124 #if (ODBCVER >= 0x0300) 1125 SQLRETURN SQL_API SQLSetStmtAttr ( 1126 SQLHSTMT StatementHandle, 1127 SQLINTEGER Attribute, 1128 SQLPOINTER Value, 1129 SQLINTEGER StringLength); 1130 #endif 1131 1132 SQLRETURN SQL_API SQLSetStmtOption ( 1133 SQLHSTMT StatementHandle, 1134 SQLUSMALLINT Option, 1135 SQLULEN Value); 1136 1137 SQLRETURN 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); 1148 1149 SQLRETURN 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); 1159 1160 SQLRETURN 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); 1170 1171 SQLRETURN SQL_API SQLTransact ( 1172 SQLHENV EnvironmentHandle, 1173 SQLHDBC ConnectionHandle, 1174 SQLUSMALLINT CompletionType); 1175 1176 1177 /* 1178 * Depreciated ODBC 1.0 function - Use SQLBindParameter 1179 */ 1180 SQLRETURN 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 1190 #ifdef __cplusplus 1191 } 1192 #endif 1193 1194 #endif /* _SQL_H */ 1195