tldm-universe/Ardent/UV/gcidir/include/UCI.h

1186 lines
39 KiB
C
Raw Normal View History

2024-09-09 21:51:08 +00:00
#ifndef UCI_H
#define UCI_H
/******************************************************************************
*
* Header file for UCI (Universe Call Interface)
*
* Module %M% Version %I% Date %H%
*
* (c) Copyright 1998 Ardent Software Inc. - All Rights Reserved
* This is unpublished proprietary source code of Ardent Software Inc.
* The copyright notice above does not evidence any actual or intented
* publication of such source code.
*
*******************************************************************************
*
* Maintenence log - insert most recent change descriptions at top
*
* Date.... GTAR# WHO Description.........................................
* 03/30/99 24764 CSM Add internl conn optn for licensing Ardent UCI applns
* 03/25/99 24411 JBG Add SQLParamOptions
* 03/02/99 24554 CSM Add wide data types for SQL Server 7 catalog funcs
* 03/02/99 24605 CSM Jun Zhang changes for OLEDB support
* 02/12/99 24502 CSM Add SQL_FETCH_FIRST,NEXT,SQL_USE_* for OLEDB
* 11/19/98 24000 CSM Add internal connect options for licensing UVODBC
* 10/14/98 23801 SAP Change copyrights.
* 10/02/98 23765 CSM Add dev subkey option to SetConnectOption for license
* 04/28/98 22967 CSM Add SQLNumParams for UCI
* 07/08/97 21049 AGM Add SQL_MAX_DSN_LENGTH for DataStage
* 06/19/97 20748 MJC Add SQL_UVNLS_LOCALE for SQLSetConnectOption
* 06/04/97 20748 MJC Improve Map/Locale
* 06/04/97 20748 MJC Add Mark characters
* 06/03/97 20748 MJC Add Map/Locale
* 10/30/96 19512 ENF SQLParamOptions changes
* 08/08/96 18994 ENF Add SQL_EMPTY_NULL and SQL_TX_PRIVATE
* 08/05/96 18854 ENF Use __SQL to determine stand-alone-ness
* 08/05/96 18854 PEJ Recode AUTOCOMMIT definitions for HPUX 9 compiler
* 08/01/96 18854 ENF Define AUTOCOMMIT optios for SetConnectOptions
* 08/01/96 18854 ENF Declare SetConnectOptions for real ODBC calls
* 07/26/96 18854 ENF Fix redefinitions of SQL_NULL stuff for UCI calls
* 07/25/96 18758 MJC Add UCI/SQL_COLUMN_PRINT_RESULT as 1004
* 07/24/96 18854 ENF Add SQLBindParameter() for Windows
* 07/23/96 18854 ENF Add SQL_TIMESTAMP_PRECISION
* 07/23/96 18854 ENF Move definition of 'signed' before its use
* 07/23/96 18854 DTM Changes for ODBC middleware project
* 07/23/96 18854 ENF Fix definition of SQL_NULL HENV,HDBC,HSTMT
* 07/22/96 18854 ENF Changes for ODBC middleware project
* 06/06/96 18162 ENF Add code for truncated parameter marker
* 04/01/96 18162 ENF Add OUTPUT, INPUT_OUTPUT parameter definitions
* 08/24/95 17197 AGM Initial changes for Windows 95
* 07/28/95 16490 RM Port SGI
* 06/14/95 15871 RM Added SQLGetInfo stuff from sqlext.h
* 05/31/95 16466 FRA Port SGI
* 05/19/95 16489 FRA Port to IBM RS6000
* 05/09/95 16358 AGM Don't define ULONG on NT as it's already defined!
* 03/08/95 15871 RM Added UCI_DATUM, C_ARRAY structures
* 02/09/95 15871 ENF Add constants for GetFunctions
* 01/31/95 15871 ENF Initial submission
*
*****************************************************************************/
#ifdef __cplusplus
extern "C" { /* Assume C declarations for C++ */
#endif /* __cplusplus */
#ifdef UV
#define PRI_RO
#define PUB_RO
#undef Rmalloc
#undef Rcalloc
#undef Rfree
#undef MMAP
#undef Ienable
#undef Idisable
#endif
/* SQL portable types for C */
#define signed
typedef int SDWORD;
typedef unsigned int UDWORD;
typedef signed int SLONG;
#ifndef __SQL
typedef int RETCODE;
#else
typedef signed short RETCODE;
#endif
typedef int UCIRETCODE;
typedef unsigned char UCHAR;
typedef signed char SCHAR;
typedef short int SWORD;
typedef unsigned short int UWORD;
typedef signed short SSHORT;
typedef unsigned short USHORT;
typedef double SDOUBLE;
typedef void * PTR;
typedef void * HENV;
typedef void * HDBC;
typedef void * HSTMT;
#ifndef h_typedef
typedef struct tagSTRING
{
UDWORD len;
UCHAR *text;
} STRING;
#endif
typedef struct tagDATE_STRUCT
{
SWORD year;
UWORD month;
UWORD day;
} DATE_STRUCT;
typedef struct tagTIME_STRUCT
{
UWORD hour;
UWORD minute;
UWORD second;
} TIME_STRUCT;
typedef struct tagUCI_DATUM
{
SDWORD fIndicator;
union
{
double dbl;
float flt;
SCHAR sbyte;
UCHAR ubyte;
SWORD sword;
UWORD uword;
SDWORD sdword;
UDWORD udword;
STRING string;
DATE_STRUCT date;
TIME_STRUCT time;
} uValue;
} UCI_DATUM;
typedef struct tagC_ARRAY
{
UWORD cDcount;
UWORD cStorage;
SWORD fCType;
SWORD fSqlType;
SWORD fParamType;
SWORD ibScale;
UDWORD cbColDef;
UCI_DATUM Data[1];
} C_ARRAY;
/* start macros for uci_convert */
#ifndef UDWORD_MAX
#define UDWORD_MAX ((UDWORD) (~0))
#endif
#ifndef SDWORD_MAX
#define SDWORD_MAX ((SDWORD) (UDWORD_MAX >> 1))
#endif
#ifndef SDWORD_MIN
#define SDWORD_MIN ((SDWORD) (-SDWORD_MAX -1))
#endif
#ifndef UWORD_MAX
#define UWORD_MAX ((UWORD) (~0))
#endif
#ifndef SWORD_MAX
#define SWORD_MAX ((SWORD) (UWORD_MAX >> 1))
#endif
#ifndef SWORD_MIN
#define SWORD_MIN ((SWORD) (-SWORD_MAX -1))
#endif
#ifndef UCHAR_MAX
#define UCHAR_MAX ((UCHAR) (~0))
#endif
#ifndef SCHAR_MAX
#define SCHAR_MAX ((SCHAR) (UCHAR_MAX >> 1))
#endif
#ifndef SCHAR_MIN
#define SCHAR_MIN ((SCHAR) (-SCHAR_MAX -1))
#endif
#ifndef FLOAT_PRECISION
#define FLOAT_PRECISION 15
#endif
#ifndef DBL_DIG
#define DBL_DIG FLOAT_PRECISION
#endif
#ifndef FLT_DIG
#define FLT_DIG 6
#endif
#ifndef MAX_FLT
#define MAX_FLT 3.402823466e+38 /* for 80x87 chip! */
#endif
#ifndef MIN_FLT
#define MIN_FLT 1.175494351e-38 /* for 80x87 chip! */
#endif
#define MAX_DATE 2933628 /* 31 Dec 9999 */
#define MIN_DATE -718432 /* 01 Jan 0001 */
#define MAX_TIME 60*60*24-1
#define MIN_TIME 0
#define True 1
#define False 0
#define NUMODBMSG 100
#ifndef SQLNUL
#define SQLNUL (UCHAR)'\200'
#endif
#define ISSQLNULL(s) (((s).len == 1) && ((s).text[0] == SQLNUL))
/* end macros for uci_convert */
/***********************************
* SQL Error RETCODES and defines.
**********************************/
#define SQL_ERROR -1
#define SQL_INVALID_HANDLE -2
#define SQL_NTS (-3)
#define SQL_NEED_DATA 99
#define SQL_NO_DATA_FOUND 100
#define SQL_SUCCESS 0
#define SQL_SUCCESS_WITH_INFO 1
#define SQL_MAX_DSN_LENGTH 32
/* The UCI definitions for NULL variables */
#define UCI_NULL_HENV -1
#define UCI_NULL_HDBC -1
#define UCI_NULL_HSTMT -1
#define UCI_NULL_DATA -1
/* The REAL ODBC defintions for null variables */
#ifdef __SQL
#define SQL_NULL_HENV 0
#define SQL_NULL_HDBC 0
#define SQL_NULL_HSTMT 0
#define SQL_NULL_DATA -1
#else
#define SQL_NULL_HENV UCI_NULL_HENV
#define SQL_NULL_HDBC UCI_NULL_HDBC
#define SQL_NULL_HSTMT UCI_NULL_HSTMT
#define SQL_NULL_DATA UCI_NULL_DATA
#endif /* __SQL */
#define SQL_BAD_DATA -2
#define SQL_TRUNCATED_PARAM_DATA -999
/******************************
* uniVerse additions for
* SQLBindParameter
******************************/
#define SQL_UV_DEFAULT_PARAMETER 0
#define SQL_PARAM_INPUT 1
#define SQL_PARAM_INPUT_OUTPUT 2
#define SQL_PARAM_OUTPUT 4
/******************************
* SQLColAttributes defines
******************************/
#define UCI_COLUMN_COUNT 1
#define UCI_COLUMN_NAME 2
#define UCI_COLUMN_TYPE 3
#define UCI_COLUMN_LENGTH 4
#define UCI_COLUMN_PRECISION 5
#define UCI_COLUMN_SCALE 6
#define UCI_COLUMN_DISPLAY_SIZE 7
#define UCI_COLUMN_NULLABLE 8
#define UCI_COLUMN_UNSIGNED 9
#define UCI_COLUMN_MONEY 10
#define UCI_COLUMN_UPDATABLE 11
#define UCI_COLUMN_AUTO_INCREMENT 12
#define UCI_COLUMN_CASE_SENSITIVE 13
#define UCI_COLUMN_SEARCHABLE 14
#define UCI_COLUMN_TYPE_NAME 15
#define UCI_COLUMN_TABLE_NAME 16
#define UCI_COLUMN_OWNER_NAME 17
#define UCI_COLUMN_QUALIFIER_NAME 18
#define UCI_COLUMN_LABEL 19
#ifndef __SQL
#define SQL_COLUMN_COUNT UCI_COLUMN_COUNT
#define SQL_COLUMN_NAME UCI_COLUMN_NAME
#define SQL_COLUMN_TYPE UCI_COLUMN_TYPE
#define SQL_COLUMN_LENGTH UCI_COLUMN_LENGTH
#define SQL_COLUMN_PRECISION UCI_COLUMN_PRECISION
#define SQL_COLUMN_SCALE UCI_COLUMN_SCALE
#define SQL_COLUMN_DISPLAY_SIZE UCI_COLUMN_DISPLAY_SIZE
#define SQL_COLUMN_NULLABLE UCI_COLUMN_NULLABLE
#define SQL_COLUMN_UNSIGNED UCI_COLUMN_UNSIGNED
#define SQL_COLUMN_MONEY UCI_COLUMN_MONEY
#define SQL_COLUMN_UPDATABLE UCI_COLUMN_UPDATABLE
#define SQL_COLUMN_AUTO_INCREMENT UCI_COLUMN_AUTO_INCREMENT
#define SQL_COLUMN_CASE_SENSITIVE UCI_COLUMN_CASE_SENSITIVE
#define SQL_COLUMN_SEARCHABLE UCI_COLUMN_SEARCHABLE
#define SQL_COLUMN_TYPE_NAME UCI_COLUMN_TYPE_NAME
#define SQL_COLUMN_TABLE_NAME UCI_COLUMN_TABLE_NAME
#define SQL_COLUMN_OWNER_NAME UCI_COLUMN_OWNER_NAME
#define SQL_COLUMN_QUALIFIER_NAME UCI_COLUMN_QUALIFIER_NAME
#define SQL_COLUMN_LABEL UCI_COLUMN_LABEL
#else
#define SQL_COLUMN_COUNT 0
#define SQL_COLUMN_NAME 1
#define SQL_COLUMN_TYPE 2
#define SQL_COLUMN_LENGTH 3
#define SQL_COLUMN_PRECISION 4
#define SQL_COLUMN_SCALE 5
#define SQL_COLUMN_DISPLAY_SIZE 6
#define SQL_COLUMN_NULLABLE 7
#define SQL_COLUMN_UNSIGNED 8
#define SQL_COLUMN_MONEY 9
#define SQL_COLUMN_UPDATABLE 10
#define SQL_COLUMN_AUTO_INCREMENT 11
#define SQL_COLUMN_CASE_SENSITIVE 12
#define SQL_COLUMN_SEARCHABLE 13
#define SQL_COLUMN_TYPE_NAME 14
#define SQL_COLUMN_TABLE_NAME 15
#define SQL_COLUMN_OWNER_NAME 16
#define SQL_COLUMN_QUALIFIER_NAME 17
#define SQL_COLUMN_LABEL 18
#endif /* __SQL */
/* SQLColAttributes subdefines for SQL_COLUMN_UPDATABLE */
#define SQL_ATTR_READONLY 0
#define SQL_ATTR_WRITE 1
#define SQL_ATTR_READWRITE_UNKNOWN 2
/* SQLColAttributes subdefines for SQL_COLUMN_SEARCHABLE */
#define SQL_UNSEARCHABLE 0
#define SQL_LIKE_ONLY 1
#define SQL_ALL_EXCEPT_LIKE 2
#define SQL_SEARCHABLE 3
#define UCI_COLUMN_MULTI_VALUED 1001
#define UCI_COLUMN_FORMAT 1002
#define UCI_COLUMN_CONVERSION 1003
#define UCI_COLUMN_PRINT_RESULT 1004
#define SQL_COLUMN_MULTI_VALUED UCI_COLUMN_MULTI_VALUED
#define SQL_COLUMN_FORMAT UCI_COLUMN_FORMAT
#define SQL_COLUMN_CONVERSION UCI_COLUMN_CONVERSION
#define SQL_COLUMN_PRINT_RESULT UCI_COLUMN_PRINT_RESULT
/******************************
* SQLDataSources defines
******************************/
#define SQL_FETCH_FIRST 0L
#define SQL_FETCH_NEXT 1L
/******************************
* SQLUseCfgFile defines
******************************/
#define SQL_USE_REGISTRY 0L
#define SQL_USE_FILE 1L
/******************************
* SQLSetConnectOption defines
******************************/
#define SQL_ACCESS_MODE 101
#define SQL_AUTOCOMMIT 102
#define SQL_TXN_ISOLATION 108
#define SQL_MODE_READ_WRITE 0UL
#define SQL_MODE_READ_ONLY 1UL
/* SQL_AUTOCOMMIT options */
#ifdef HPUX90
#define SQL_AUTOCOMMIT_OFF 0L
#define SQL_AUTOCOMMIT_ON 1L
#else
#define SQL_AUTOCOMMIT_OFF 0UL
#define SQL_AUTOCOMMIT_ON 1UL
#endif
#define SQL_AUTOCOMMIT_DEFAULT SQL_AUTOCOMMIT_ON
/* These are defined specifically for use with the BASIC versions */
#define SQL_USE_ODBC_PRECISION 999
#define SQL_TRUNC_ROUND 998
#define SQL_SEND_TRUNC_ROUND 997
#define SQL_OS_UID 996
#define SQL_OS_PWD 995
#define SQL_DATEFORM 994
#define SQL_DATEPREC 993
/* uniVerse options for SQLSetConnectOption/SQLGetConnectOption */
#define SQL_MAX_ROWSIZE 1001
#define SQL_DATA_MODEL 1002
#define SQL_1NF_MODE_ON 1
#define SQL_1NF_MODE_OFF 0
#define SQL_EMPTY_NULL 1003
#define SQL_EMPTY_NULL_ON 1
#define SQL_EMPTY_NULL_OFF 0
#define SQL_TX_PRIVATE 1004
#define SQL_TX_PRIVATE_ON 1
#define SQL_TX_PRIVATE_OFF 0
#define SQL_UVNLS_MAP 1005
#define SQL_UVNLS_LOCALE 1006
#define SQL_UVNLS_LC_TIME 1007
#define SQL_UVNLS_LC_NUMERIC 1008
#define SQL_UVNLS_LC_MONETARY 1009
#define SQL_UVNLS_LC_CTYPE 1010
#define SQL_UVNLS_LC_COLLATE 1011
#define SQL_UVNLS_LC_ALL 1012
#define SQL_UVNLS_SQL_NULL 1013
#define SQL_UVNLS_TEXT_MARK 1014
#define SQL_UVNLS_SUBVALUE_MARK 1015
#define SQL_UVNLS_VALUE_MARK 1016
#define SQL_UVNLS_FIELD_MARK 1017
#define SQL_UVNLS_ITEM_MARK 1018
#define SQL_LIC_DEV_SUBKEY 1019 /* Licensing device sub-key */
#define SQL_INTERNAL1 1020
#define SQL_INTERNAL2 1021
#define MAXSUBKEYLEN 24
#define MINMDILEN 37
#define SENDDEVINFO 0x0000
#define DONTSENDDEVINFO 0x0001
#define UVODBC_CLIENT 0x0002
#define UDODBC_CLIENT 0x0004
#define OLEDB_CLIENT 0x0008
/******************************
* SQLFreeStmt option defines
******************************/
#define UCI_CLOSE 1
#define UCI_DROP 2
#define UCI_UNBIND 3
#define UCI_RESET_PARAMS 4
#ifndef __SQL
#define SQL_CLOSE UCI_CLOSE
#define SQL_DROP UCI_DROP
#define SQL_UNBIND UCI_UNBIND
#define SQL_RESET_PARAMS UCI_RESET_PARAMS
#else
#define SQL_CLOSE 0
#define SQL_DROP 1
#define SQL_UNBIND 2
#define SQL_RESET_PARAMS 3
#endif /* __SQL */
/******************************
* SQLTransact defines
******************************/
#define UCI_COMMIT 1
#define UCI_ROLLBACK 2
#ifndef __SQL
#define SQL_COMMIT UCI_COMMIT
#define SQL_ROLLBACK UCI_ROLLBACK
#else
#define SQL_COMMIT 0
#define SQL_ROLLBACK 1
#endif /* __SQL */
#define SQL_BEGIN_TRANSACTION 3
/**********************************
* Define all SQL data types
* and those that we support
**********************************/
#define SQL_CHAR 1
#define SQL_NUMERIC 2
#define SQL_DECIMAL 3
#define SQL_INTEGER 4
#define SQL_SMALLINT 5
#define SQL_FLOAT 6
#define SQL_REAL 7
#define SQL_DOUBLE 8
#define SQL_DATE 9
#define SQL_TIME 10
#define SQL_TIMESTAMP 11
#define SQL_VARCHAR 12
#define SQL_STRING 13
#define SQL_LONGVARCHAR -1
#define SQL_BINARY -2
#define SQL_VARBINARY -3
#define SQL_LONGVARBINARY -4
#define SQL_BIGINT -5
#define SQL_TINYINT -6
#define SQL_BIT -7
#define SQL_WCHAR -8
#define SQL_WVARCHAR -9
#define SQL_WLONGVARCHAR -10
#define NUM_SQL_TYPES 23
/**************************************
valid 'C' and BASIC data types
***************************************/
#define SQL_SIGNED_OFFSET (-20)
#define SQL_UNSIGNED_OFFSET (-22)
#define SQL_C_CHAR SQL_CHAR
#define SQL_C_LONG SQL_INTEGER
#define SQL_C_SHORT SQL_SMALLINT
#define SQL_C_FLOAT SQL_REAL
#define SQL_C_DOUBLE SQL_DOUBLE
#define SQL_C_DATE SQL_DATE
#define SQL_C_DEFAULT 99
#define SQL_C_STRING SQL_STRING
#define SQL_C_TIME SQL_TIME
#define SQL_C_BINARY SQL_BINARY
#define SQL_C_TINYINT SQL_TINYINT
#define SQL_C_SLONG SQL_C_LONG+SQL_SIGNED_OFFSET
#define SQL_C_SSHORT SQL_C_SHORT+SQL_SIGNED_OFFSET
#define SQL_C_STINYINT SQL_TINYINT+SQL_SIGNED_OFFSET
#define SQL_C_ULONG SQL_C_LONG+SQL_UNSIGNED_OFFSET
#define SQL_C_USHORT SQL_C_SHORT+SQL_UNSIGNED_OFFSET
#define SQL_C_UTINYINT SQL_TINYINT+SQL_UNSIGNED_OFFSET
/* These are specific for BASIC run machine */
#define SQL_B_BASIC 100
#define SQL_B_INTDATE 101
#define SQL_B_NUMBER 102
#define SQL_B_INTTIME 103
#define SQL_B_CHAR SQL_CHAR
#define SQL_B_DEFAULT SQL_C_DEFAULT
/**************************************
* Define ODBC conception of precision
* for the various data types
**************************************/
#define SQL_CHAR_PRECISION 254
#define SQL_VARCHAR_PRECISION 254
#define SQL_DECIMAL_PRECISION 15
#define SQL_NUMERIC_PRECISION 15
#define SQL_SMALLINT_PRECISION 5
#define SQL_INTEGER_PRECISION 10
#define SQL_REAL_PRECISION 7
#define SQL_FLOAT_PRECISION 15
#define SQL_DOUBLE_PRECISION 15
#define SQL_DATE_PRECISION 10
#define SQL_TIME_PRECISION 8
#define SQL_TIMESTAMP_PRECISION 23
/**************************************
* Define ODBC conception of display size
* for the various data types
**************************************/
#define SQL_CHAR_DSPSIZE 0
#define SQL_VARCHAR_DSPSIZE 0
#define SQL_DECIMAL_DSPSIZE 2 /* Means add 2 to precision */
#define SQL_NUMERIC_DSPSIZE 2 /* Means add 2 to precision */
#define SQL_SMALLINT_DSPSIZE 6
#define SQL_INTEGER_DSPSIZE 11
#define SQL_REAL_DSPSIZE 13
#define SQL_FLOAT_DSPSIZE 22
#define SQL_DOUBLE_DSPSIZE 22
#define SQL_DATE_DSPSIZE 10
#define SQL_TIME_DSPSIZE 8
/**************************************
* Define return valued for
* Describe and ColAttributes
**************************************/
#define SQL_NO_NULLS 0
#define SQL_NULLABLE 1
#define SQL_NULLABLE_UNKNOWN 2
/**************************************
* Defines for SQLGetFunctions
**************************************/
#define SQL_API_SQLALLOCCONNECT 1 /* Core Functions */
#define SQL_API_SQLALLOCENV 2
#define SQL_API_SQLALLOCSTMT 3
#define SQL_API_SQLBINDCOL 4
#define SQL_API_SQLCANCEL 5
#define SQL_API_SQLCOLATTRIBUTES 6
#define SQL_API_SQLCONNECT 7
#define SQL_API_SQLDESCRIBECOL 8
#define SQL_API_SQLDISCONNECT 9
#define SQL_API_SQLERROR 10
#define SQL_API_SQLEXECDIRECT 11
#define SQL_API_SQLEXECUTE 12
#define SQL_API_SQLFETCH 13
#define SQL_API_SQLFREECONNECT 14
#define SQL_API_SQLFREEENV 15
#define SQL_API_SQLFREESTMT 16
#define SQL_API_SQLGETCURSORNAME 17
#define SQL_API_SQLNUMRESULTCOLS 18
#define SQL_API_SQLPREPARE 19
#define SQL_API_SQLROWCOUNT 20
#define SQL_API_SQLSETCURSORNAME 21
#define SQL_API_SQLSETPARAM 22
#define SQL_API_SQLTRANSACT 23
#define SQL_API_SQLCOLUMNS 40 /* Level 1 Functions */
#define SQL_API_SQLDRIVERCONNECT 41
#define SQL_API_SQLGETCONNECTOPTION 42
#define SQL_API_SQLGETDATA 43
#define SQL_API_SQLGETFUNCTIONS 44
#define SQL_API_SQLGETINFO 45
#define SQL_API_SQLGETSTMTOPTION 46
#define SQL_API_SQLGETTYPEINFO 47
#define SQL_API_SQLPARAMDATA 48
#define SQL_API_SQLPUTDATA 49
#define SQL_API_SQLSETCONNECTOPTION 50
#define SQL_API_SQLSETSTMTOPTION 51
#define SQL_API_SQLSPECIALCOLUMNS 52
#define SQL_API_SQLSTATISTICS 53
#define SQL_API_SQLTABLES 54
#define SQL_API_SQLBROWSECONNECT 55 /* Level 2 Functions */
#define SQL_API_SQLCOLUMNPRIVILEGES 56
#define SQL_API_SQLDATASOURCES 57
#define SQL_API_SQLDESCRIBEPARAM 58
#define SQL_API_SQLEXTENDEDFETCH 59
#define SQL_API_SQLFOREIGNKEYS 60
#define SQL_API_SQLMORERESULTS 61
#define SQL_API_SQLNATIVESQL 62
#define SQL_API_SQLNUMPARAMS 63
#define SQL_API_SQLPARAMOPTIONS 64
#define SQL_API_SQLPRIMARYKEYS 65
#define SQL_API_SQLPROCEDURECOLUMNS 66
#define SQL_API_SQLPROCEDURES 67
#define SQL_API_SQLSETPOS 68
#define SQL_API_SQLSETSCROLLOPTIONS 69
#define SQL_API_SQLTABLEPRIVILEGES 70
#define SQL_API_SQLDRIVERS 71 /* SDK 2.0 Additions */
#define SQL_API_SQLBINDPARAMETER 72
#define SQL_EXT_API_LAST SQL_API_SQLBINDPARAMETER
#define SQL_API_ALL_FUNCTIONS 0
/**************************************
* Defines for SQLGetInfo
**************************************/
#define SQL_INFO_FIRST 0
#define SQL_ACTIVE_CONNECTIONS 0
#define SQL_ACTIVE_STATEMENTS 1
#define SQL_DATA_SOURCE_NAME 2
#define SQL_DRIVER_HDBC 3
#define SQL_DRIVER_HENV 4
#define SQL_DRIVER_HSTMT 5
#define SQL_DRIVER_NAME 6
#define SQL_DRIVER_VER 7
#define SQL_FETCH_DIRECTION 8
#define SQL_ODBC_API_CONFORMANCE 9
#define SQL_ODBC_VER 10
#define SQL_ROW_UPDATES 11
#define SQL_ODBC_SAG_CLI_CONFORMANCE 12
#define SQL_SERVER_NAME 13
#define SQL_SEARCH_PATTERN_ESCAPE 14
#define SQL_ODBC_SQL_CONFORMANCE 15
#define SQL_DATABASE_NAME 16
#define SQL_DBMS_NAME 17
#define SQL_DBMS_VER 18
#define SQL_ACCESSIBLE_TABLES 19
#define SQL_ACCESSIBLE_PROCEDURES 20
#define SQL_PROCEDURES 21
#define SQL_CONCAT_NULL_BEHAVIOR 22
#define SQL_CURSOR_COMMIT_BEHAVIOR 23
#define SQL_CURSOR_ROLLBACK_BEHAVIOR 24
#define SQL_DATA_SOURCE_READ_ONLY 25
#define SQL_DEFAULT_TXN_ISOLATION 26
#define SQL_EXPRESSIONS_IN_ORDERBY 27
#define SQL_IDENTIFIER_CASE 28
#define SQL_IDENTIFIER_QUOTE_CHAR 29
#define SQL_MAX_COLUMN_NAME_LEN 30
#define SQL_MAX_CURSOR_NAME_LEN 31
#define SQL_MAX_OWNER_NAME_LEN 32
#define SQL_MAX_PROCEDURE_NAME_LEN 33
#define SQL_MAX_QUALIFIER_NAME_LEN 34
#define SQL_MAX_TABLE_NAME_LEN 35
#define SQL_MULT_RESULT_SETS 36
#define SQL_MULTIPLE_ACTIVE_TXN 37
#define SQL_OUTER_JOINS 38
#define SQL_OWNER_TERM 39
#define SQL_PROCEDURE_TERM 40
#define SQL_QUALIFIER_NAME_SEPARATOR 41
#define SQL_QUALIFIER_TERM 42
#define SQL_SCROLL_CONCURRENCY 43
#define SQL_SCROLL_OPTIONS 44
#define SQL_TABLE_TERM 45
#define SQL_TXN_CAPABLE 46
#define SQL_USER_NAME 47
#define SQL_CONVERT_FUNCTIONS 48
#define SQL_NUMERIC_FUNCTIONS 49
#define SQL_STRING_FUNCTIONS 50
#define SQL_SYSTEM_FUNCTIONS 51
#define SQL_TIMEDATE_FUNCTIONS 52
#define SQL_CONVERT_BIGINT 53
#define SQL_CONVERT_BINARY 54
#define SQL_CONVERT_BIT 55
#define SQL_CONVERT_CHAR 56
#define SQL_CONVERT_DATE 57
#define SQL_CONVERT_DECIMAL 58
#define SQL_CONVERT_DOUBLE 59
#define SQL_CONVERT_FLOAT 60
#define SQL_CONVERT_INTEGER 61
#define SQL_CONVERT_LONGVARCHAR 62
#define SQL_CONVERT_NUMERIC 63
#define SQL_CONVERT_REAL 64
#define SQL_CONVERT_SMALLINT 65
#define SQL_CONVERT_TIME 66
#define SQL_CONVERT_TIMESTAMP 67
#define SQL_CONVERT_TINYINT 68
#define SQL_CONVERT_VARBINARY 69
#define SQL_CONVERT_VARCHAR 70
#define SQL_CONVERT_LONGVARBINARY 71
#define SQL_TXN_ISOLATION_OPTION 72
#define SQL_ODBC_SQL_OPT_IEF 73
/*** ODBC SDK 1.0 Additions ***/
#define SQL_CORRELATION_NAME 74
#define SQL_NON_NULLABLE_COLUMNS 75
/*** ODBC SDK 2.0 Additions ***/
#define SQL_DRIVER_HLIB 76
#define SQL_DRIVER_ODBC_VER 77
#define SQL_LOCK_TYPES 78
#define SQL_POS_OPERATIONS 79
#define SQL_POSITIONED_STATEMENTS 80
#define SQL_GETDATA_EXTENSIONS 81
#define SQL_BOOKMARK_PERSISTENCE 82
#define SQL_STATIC_SENSITIVITY 83
#define SQL_FILE_USAGE 84
#define SQL_NULL_COLLATION 85
#define SQL_ALTER_TABLE 86
#define SQL_COLUMN_ALIAS 87
#define SQL_GROUP_BY 88
#define SQL_KEYWORDS 89
#define SQL_ORDER_BY_COLUMNS_IN_SELECT 90
#define SQL_OWNER_USAGE 91
#define SQL_QUALIFIER_USAGE 92
#define SQL_QUOTED_IDENTIFIER_CASE 93
#define SQL_SPECIAL_CHARACTERS 94
#define SQL_SUBQUERIES 95
#define SQL_UNION 96
#define SQL_MAX_COLUMNS_IN_GROUP_BY 97
#define SQL_MAX_COLUMNS_IN_INDEX 98
#define SQL_MAX_COLUMNS_IN_ORDER_BY 99
#define SQL_MAX_COLUMNS_IN_SELECT 100
#define SQL_MAX_COLUMNS_IN_TABLE 101
#define SQL_MAX_INDEX_SIZE 102
#define SQL_MAX_ROW_SIZE_INCLUDES_LONG 103
#define SQL_MAX_ROW_SIZE 104
#define SQL_MAX_STATEMENT_LEN 105
#define SQL_MAX_TABLES_IN_SELECT 106
#define SQL_MAX_USER_NAME_LEN 107
#define SQL_MAX_CHAR_LITERAL_LEN 108
#define SQL_TIMEDATE_ADD_INTERVALS 109
#define SQL_TIMEDATE_DIFF_INTERVALS 110
#define SQL_NEED_LONG_DATA_LEN 111
#define SQL_MAX_BINARY_LITERAL_LEN 112
#define SQL_LIKE_ESCAPE_CLAUSE 113
#define SQL_QUALIFIER_LOCATION 114
#define SQL_INFO_DRIVER_START 1000
#define SQL_INFO_LAST SQL_QUALIFIER_LOCATION
/* SQL_CONVERT_* return value bitmasks */
#define SQL_CVT_CHAR 0x00000001L
#define SQL_CVT_NUMERIC 0x00000002L
#define SQL_CVT_DECIMAL 0x00000004L
#define SQL_CVT_INTEGER 0x00000008L
#define SQL_CVT_SMALLINT 0x00000010L
#define SQL_CVT_FLOAT 0x00000020L
#define SQL_CVT_REAL 0x00000040L
#define SQL_CVT_DOUBLE 0x00000080L
#define SQL_CVT_VARCHAR 0x00000100L
#define SQL_CVT_LONGVARCHAR 0x00000200L
#define SQL_CVT_BINARY 0x00000400L
#define SQL_CVT_VARBINARY 0x00000800L
#define SQL_CVT_BIT 0x00001000L
#define SQL_CVT_TINYINT 0x00002000L
#define SQL_CVT_BIGINT 0x00004000L
#define SQL_CVT_DATE 0x00008000L
#define SQL_CVT_TIME 0x00010000L
#define SQL_CVT_TIMESTAMP 0x00020000L
#define SQL_CVT_LONGVARBINARY 0x00040000L
/* SQL_CONVERT_FUNCTIONS functions */
#define SQL_FN_CVT_CONVERT 0x00000001L
/* SQL_STRING_FUNCTIONS functions */
#define SQL_FN_STR_CONCAT 0x00000001L
#define SQL_FN_STR_INSERT 0x00000002L
#define SQL_FN_STR_LEFT 0x00000004L
#define SQL_FN_STR_LTRIM 0x00000008L
#define SQL_FN_STR_LENGTH 0x00000010L
#define SQL_FN_STR_LOCATE 0x00000020L
#define SQL_FN_STR_LCASE 0x00000040L
#define SQL_FN_STR_REPEAT 0x00000080L
#define SQL_FN_STR_REPLACE 0x00000100L
#define SQL_FN_STR_RIGHT 0x00000200L
#define SQL_FN_STR_RTRIM 0x00000400L
#define SQL_FN_STR_SUBSTRING 0x00000800L
#define SQL_FN_STR_UCASE 0x00001000L
#define SQL_FN_STR_ASCII 0x00002000L
#define SQL_FN_STR_CHAR 0x00004000L
#define SQL_FN_STR_DIFFERENCE 0x00008000L
#define SQL_FN_STR_LOCATE_2 0x00010000L
#define SQL_FN_STR_SOUNDEX 0x00020000L
#define SQL_FN_STR_SPACE 0x00040000L
/* SQL_NUMERIC_FUNCTIONS functions */
#define SQL_FN_NUM_ABS 0x00000001L
#define SQL_FN_NUM_ACOS 0x00000002L
#define SQL_FN_NUM_ASIN 0x00000004L
#define SQL_FN_NUM_ATAN 0x00000008L
#define SQL_FN_NUM_ATAN2 0x00000010L
#define SQL_FN_NUM_CEILING 0x00000020L
#define SQL_FN_NUM_COS 0x00000040L
#define SQL_FN_NUM_COT 0x00000080L
#define SQL_FN_NUM_EXP 0x00000100L
#define SQL_FN_NUM_FLOOR 0x00000200L
#define SQL_FN_NUM_LOG 0x00000400L
#define SQL_FN_NUM_MOD 0x00000800L
#define SQL_FN_NUM_SIGN 0x00001000L
#define SQL_FN_NUM_SIN 0x00002000L
#define SQL_FN_NUM_SQRT 0x00004000L
#define SQL_FN_NUM_TAN 0x00008000L
#define SQL_FN_NUM_PI 0x00010000L
#define SQL_FN_NUM_RAND 0x00020000L
#define SQL_FN_NUM_DEGREES 0x00040000L
#define SQL_FN_NUM_LOG10 0x00080000L
#define SQL_FN_NUM_POWER 0x00100000L
#define SQL_FN_NUM_RADIANS 0x00200000L
#define SQL_FN_NUM_ROUND 0x00400000L
#define SQL_FN_NUM_TRUNCATE 0x00800000L
/* SQL_TIMEDATE_FUNCTIONS functions */
#define SQL_FN_TD_NOW 0x00000001L
#define SQL_FN_TD_CURDATE 0x00000002L
#define SQL_FN_TD_DAYOFMONTH 0x00000004L
#define SQL_FN_TD_DAYOFWEEK 0x00000008L
#define SQL_FN_TD_DAYOFYEAR 0x00000010L
#define SQL_FN_TD_MONTH 0x00000020L
#define SQL_FN_TD_QUARTER 0x00000040L
#define SQL_FN_TD_WEEK 0x00000080L
#define SQL_FN_TD_YEAR 0x00000100L
#define SQL_FN_TD_CURTIME 0x00000200L
#define SQL_FN_TD_HOUR 0x00000400L
#define SQL_FN_TD_MINUTE 0x00000800L
#define SQL_FN_TD_SECOND 0x00001000L
#define SQL_FN_TD_TIMESTAMPADD 0x00002000L
#define SQL_FN_TD_TIMESTAMPDIFF 0x00004000L
#define SQL_FN_TD_DAYNAME 0x00008000L
#define SQL_FN_TD_MONTHNAME 0x00010000L
/* SQL_SYSTEM_FUNCTIONS functions */
#define SQL_FN_SYS_USERNAME 0x00000001L
#define SQL_FN_SYS_DBNAME 0x00000002L
#define SQL_FN_SYS_IFNULL 0x00000004L
/* SQL_TIMEDATE_ADD_INTERVALS and SQL_TIMEDATE_DIFF_INTERVALS functions */
#define SQL_FN_TSI_FRAC_SECOND 0x00000001L
#define SQL_FN_TSI_SECOND 0x00000002L
#define SQL_FN_TSI_MINUTE 0x00000004L
#define SQL_FN_TSI_HOUR 0x00000008L
#define SQL_FN_TSI_DAY 0x00000010L
#define SQL_FN_TSI_WEEK 0x00000020L
#define SQL_FN_TSI_MONTH 0x00000040L
#define SQL_FN_TSI_QUARTER 0x00000080L
#define SQL_FN_TSI_YEAR 0x00000100L
/* SQL_ODBC_API_CONFORMANCE values */
#define SQL_OAC_NONE 0x0000
#define SQL_OAC_LEVEL1 0x0001
#define SQL_OAC_LEVEL2 0x0002
/* SQL_ODBC_SAG_CLI_CONFORMANCE values */
#define SQL_OSCC_NOT_COMPLIANT 0x0000
#define SQL_OSCC_COMPLIANT 0x0001
/* SQL_ODBC_SQL_CONFORMANCE values */
#define SQL_OSC_MINIMUM 0x0000
#define SQL_OSC_CORE 0x0001
#define SQL_OSC_EXTENDED 0x0002
/* SQL_CONCAT_NULL_BEHAVIOR values */
#define SQL_CB_NULL 0x0000
#define SQL_CB_NON_NULL 0x0001
/* SQL_CURSOR_COMMIT_BEHAVIOR and SQL_CURSOR_ROLLBACK_BEHAVIOR values */
#define SQL_CB_DELETE 0x0000
#define SQL_CB_CLOSE 0x0001
#define SQL_CB_PRESERVE 0x0002
/* SQL_IDENTIFIER_CASE values */
#define SQL_IC_UPPER 0x0001
#define SQL_IC_LOWER 0x0002
#define SQL_IC_SENSITIVE 0x0003
#define SQL_IC_MIXED 0x0004
/* SQL_TXN_CAPABLE values */
#define SQL_TC_NONE 0x0000
#define SQL_TC_DML 0x0001
#define SQL_TC_ALL 0x0002
#define SQL_TC_DDL_COMMIT 0x0003
#define SQL_TC_DDL_IGNORE 0x0004
/* SQL_SCROLL_OPTIONS masks */
#define SQL_SO_FORWARD_ONLY 0x00000001L
#define SQL_SO_KEYSET_DRIVEN 0x00000002L
#define SQL_SO_DYNAMIC 0x00000004L
#define SQL_SO_MIXED 0x00000008L
#define SQL_SO_STATIC 0x00000010L
/* SQL_SCROLL_CONCURRENCY masks */
#define SQL_SCCO_READ_ONLY 0x00000001L
#define SQL_SCCO_LOCK 0x00000002L
#define SQL_SCCO_OPT_ROWVER 0x00000004L
#define SQL_SCCO_OPT_VALUES 0x00000008L
/* SQL_FETCH_DIRECTION masks */
#define SQL_FD_FETCH_NEXT 0x00000001L
#define SQL_FD_FETCH_FIRST 0x00000002L
#define SQL_FD_FETCH_LAST 0x00000004L
#define SQL_FD_FETCH_PRIOR 0x00000008L
#define SQL_FD_FETCH_ABSOLUTE 0x00000010L
#define SQL_FD_FETCH_RELATIVE 0x00000020L
#define SQL_FD_FETCH_RESUME 0x00000040L
#define SQL_FD_FETCH_BOOKMARK 0x00000080L
/* SQL_TXN_ISOLATION_OPTION masks */
#define SQL_TXN_READ_UNCOMMITTED 0x00000001L
#define SQL_TXN_READ_COMMITTED 0x00000002L
#define SQL_TXN_REPEATABLE_READ 0x00000004L
#define SQL_TXN_SERIALIZABLE 0x00000008L
#define SQL_TXN_VERSIONING 0x00000010L
#define SQL_TXN_CURRENT 0x0000002aL
/* SQL_CORRELATION_NAME values */
#define SQL_CN_NONE 0x0000
#define SQL_CN_DIFFERENT 0x0001
#define SQL_CN_ANY 0x0002
/* SQL_NON_NULLABLE_COLUMNS values */
#define SQL_NNC_NULL 0x0000
#define SQL_NNC_NON_NULL 0x0001
/* SQL_NULL_COLLATION values */
#define SQL_NC_HIGH 0x0000
#define SQL_NC_LOW 0x0001
#define SQL_NC_START 0x0002
#define SQL_NC_END 0x0004
/* SQL_FILE_USAGE values */
#define SQL_FILE_NOT_SUPPORTED 0x0000
#define SQL_FILE_TABLE 0x0001
#define SQL_FILE_QUALIFIER 0x0002
/* SQL_GETDATA_EXTENSIONS values */
#define SQL_GD_ANY_COLUMN 0x00000001L
#define SQL_GD_ANY_ORDER 0x00000002L
#define SQL_GD_BLOCK 0x00000004L
#define SQL_GD_BOUND 0x00000008L
/* SQL_ALTER_TABLE values */
#define SQL_AT_ADD_COLUMN 0x00000001L
#define SQL_AT_DROP_COLUMN 0x00000002L
/* SQL_POSITIONED_STATEMENTS masks */
#define SQL_PS_POSITIONED_DELETE 0x00000001L
#define SQL_PS_POSITIONED_UPDATE 0x00000002L
#define SQL_PS_SELECT_FOR_UPDATE 0x00000004L
/* SQL_GROUP_BY values */
#define SQL_GB_NOT_SUPPORTED 0x0000
#define SQL_GB_GROUP_BY_EQUALS_SELECT 0x0001
#define SQL_GB_GROUP_BY_CONTAINS_SELECT 0x0002
#define SQL_GB_NO_RELATION 0x0003
/* SQL_OWNER_USAGE masks */
#define SQL_OU_DML_STATEMENTS 0x00000001L
#define SQL_OU_PROCEDURE_INVOCATION 0x00000002L
#define SQL_OU_TABLE_DEFINITION 0x00000004L
#define SQL_OU_INDEX_DEFINITION 0x00000008L
#define SQL_OU_PRIVILEGE_DEFINITION 0x00000010L
/* SQL_QUALIFIER_USAGE masks */
#define SQL_QU_DML_STATEMENTS 0x00000001L
#define SQL_QU_PROCEDURE_INVOCATION 0x00000002L
#define SQL_QU_TABLE_DEFINITION 0x00000004L
#define SQL_QU_INDEX_DEFINITION 0x00000008L
#define SQL_QU_PRIVILEGE_DEFINITION 0x00000010L
/* SQL_SUBQUERIES masks */
#define SQL_SQ_COMPARISON 0x00000001L
#define SQL_SQ_EXISTS 0x00000002L
#define SQL_SQ_IN 0x00000004L
#define SQL_SQ_QUANTIFIED 0x00000008L
#define SQL_SQ_CORRELATED_SUBQUERIES 0x00000010L
/* SQL_UNION masks */
#define SQL_U_UNION 0x00000001L
#define SQL_U_UNION_ALL 0x00000002L
/* SQL_BOOKMARK_PERSISTENCE values */
#define SQL_BP_CLOSE 0x00000001L
#define SQL_BP_DELETE 0x00000002L
#define SQL_BP_DROP 0x00000004L
#define SQL_BP_TRANSACTION 0x00000008L
#define SQL_BP_UPDATE 0x00000010L
#define SQL_BP_OTHER_HSTMT 0x00000020L
#define SQL_BP_SCROLL 0x00000040L
/* SQL_STATIC_SENSITIVITY values */
#define SQL_SS_ADDITIONS 0x00000001L
#define SQL_SS_DELETIONS 0x00000002L
#define SQL_SS_UPDATES 0x00000004L
/* SQL_LOCK_TYPESL masks */
#define SQL_LCK_NO_CHANGE 0x00000001L
#define SQL_LCK_EXCLUSIVE 0x00000002L
#define SQL_LCK_UNLOCK 0x00000004L
/* SQL_POS_OPERATIONS masks */
#define SQL_POS_POSITION 0x00000001L
#define SQL_POS_REFRESH 0x00000002L
#define SQL_POS_UPDATE 0x00000004L
#define SQL_POS_DELETE 0x00000008L
#define SQL_POS_ADD 0x00000010L
/* SQL_QUALIFIER_LOCATION values */
#define SQL_QL_START 0x0001L
#define SQL_QL_END 0x0002L
/* SQL_OJ_CAPABILITIES values */
#define SQL_OJ_LEFT 0x00000001L
#define SQL_OJ_RIGHT 0x00000002L
#define SQL_OJ_FULL 0x00000004L
#define SQL_OJ_NESTED 0x00000008L
#define SQL_OJ_NOT_ORDERED 0x00000010L
#define SQL_OJ_INNER 0x00000020L
#define SQL_OJ_ALL_COMPARISON_OPS 0x00000040L
/* Definitions for SQLParamOptions extensions for BCI/ODBC */
#define UCI_PARAMOPTIONS_SET 0
#define UCI_PARAMOPTIONS_READ 1
/* Begin function prototypes for this module */
#ifdef WIN32
#define SQL_API __stdcall
#else
#define SQL_API
#define FAR
#endif
#ifndef __SQL /* For stand-alone UCI calls */
extern RETCODE SQLAllocConnect();
extern RETCODE SQLAllocEnv();
extern RETCODE SQLAllocStmt();
extern RETCODE SQLBindCol();
extern RETCODE SQLBindMvCol();
extern RETCODE SQLBindParameter();
extern RETCODE SQLBindMvParameter();
extern RETCODE SQLCancel();
extern RETCODE SQLColAttributes();
extern RETCODE SQLColumns();
extern RETCODE SQLConnect();
extern RETCODE SQLDataSources();
extern RETCODE SQLDescribeCol();
extern RETCODE SQLDisconnect();
extern RETCODE SQLError();
extern RETCODE SQLExecDirect();
extern RETCODE SQLExecute();
extern RETCODE SQLFetch();
extern RETCODE SQLFreeConnect();
extern RETCODE SQLFreeEnv();
extern RETCODE SQLFreeMem();
extern RETCODE SQLFreeStmt();
extern RETCODE SQLGetCursorName();
extern RETCODE SQLGetData();
extern RETCODE SQLGetFunctions();
extern RETCODE SQLGetInfo();
extern RETCODE SQLNumParams();
extern RETCODE SQLNumResultCols();
extern RETCODE SQLParamOptions(); /* 24411 */
extern RETCODE SQLPrepare();
extern RETCODE SQLRowCount();
extern RETCODE SQLSetConnectOption();
extern RETCODE SQLSetCursorName();
extern RETCODE SQLSetParam();
extern RETCODE SQLTables();
extern RETCODE SQLTransact();
extern RETCODE SQLUseCfgFile();
extern STRING errlookup();
extern RETCODE CheckCType();
extern RETCODE CheckSqlType();
#else /* For real ODBC calls */
RETCODE SQL_API SQLAllocConnect();
RETCODE SQL_API SQLAllocEnv();
RETCODE SQL_API SQLAllocStmt();
RETCODE SQL_API SQLBindCol();
RETCODE SQL_API SQLBindParameter();
RETCODE SQL_API SQLCancel();
RETCODE SQL_API SQLColAttributes();
RETCODE SQL_API SQLConnect();
RETCODE SQL_API SQLDescribeCol();
RETCODE SQL_API SQLDisconnect();
RETCODE SQL_API SQLError();
RETCODE SQL_API SQLExecDirect();
RETCODE SQL_API SQLExecute();
RETCODE SQL_API SQLFetch();
RETCODE SQL_API SQLFreeConnect();
RETCODE SQL_API SQLFreeEnv();
RETCODE SQL_API SQLFreeStmt();
RETCODE SQL_API SQLGetCursorName();
RETCODE SQL_API SQLNumResultCols();
RETCODE SQL_API SQLParamOptions();
RETCODE SQL_API SQLPrepare();
RETCODE SQL_API SQLRowCount();
RETCODE SQL_API SQLSetCursorName();
RETCODE SQL_API SQLSetConnectOption();
RETCODE SQL_API SQLTransact();
RETCODE SQL_API SQLNumParams();
RETCODE SQL_API SQLGetInfo();
RETCODE SQL_API SQLGetTypeInfo();
RETCODE SQL_API SQLColumns();
RETCODE SQL_API SQLSpecialColumns();
RETCODE SQL_API SQLTables();
RETCODE SQL_API SQLStatistics();
#endif /* __SQL */
/* end prototypes of functions in this module */
#ifdef __cplusplus
} /* End of extern "C" { */
#endif /* __cplusplus */
#endif