63d98e39cd
Files correlati : Commento : - Creazione nuova cartella per contenere tutte le librerie esterne - Aggiunta nuova libreria sqlapi per interfacciare campo a vari DB git-svn-id: svn://10.65.10.50/branches/R_10_00@24149 c028cbd2-c16b-5b4b-a496-9718f37d4682
1506 lines
54 KiB
C
1506 lines
54 KiB
C
/****************************************************************************
|
|
*
|
|
* IBM CORP.
|
|
*
|
|
* PROPRIETARY DATA
|
|
*
|
|
* Licensed Material - Property Of IBM
|
|
*
|
|
* "Restricted Materials of IBM"
|
|
*
|
|
* IBM Informix Client SDK
|
|
*
|
|
* Copyright IBM Corporation 2012
|
|
*
|
|
** INFXSQL.H - This is the the include file for IBM Informix-CLI
|
|
** applications with sqlcli.h, sqlcli1.h and SQLEXT.H
|
|
**
|
|
*********************************************************************/
|
|
|
|
#ifndef __INFXSQL
|
|
#define __INFXSQL
|
|
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" { /* Assume C declarations for C++ */
|
|
#endif /* __cplusplus */
|
|
|
|
#ifndef ODBCVER
|
|
#define ODBCVER 0x0300
|
|
#endif
|
|
|
|
#define FAR
|
|
|
|
/* environment specific definitions */
|
|
#ifndef EXPORT
|
|
#define EXPORT
|
|
#endif
|
|
|
|
#if !defined SQL_API_RC
|
|
#define SQL_API_RC int
|
|
#define SQL_STRUCTURE struct
|
|
#define PSQL_API_FN *
|
|
#if defined(WIN32) || defined(WIN64)
|
|
#define SQL_API_FN __stdcall
|
|
#else
|
|
#define SQL_API_FN
|
|
#endif /* WIN32 || WIN64 */
|
|
#define SQL_POINTER
|
|
#define SQL_API_INTR
|
|
#endif /* !SQL_API_RC */
|
|
|
|
#define SQL_API SQL_API_FN
|
|
|
|
#ifndef RC_INVOKED
|
|
|
|
/*
|
|
* The following are provided to enhance portability and compatibility
|
|
* with ODBC taken from sqlcli.h, sqlcli1.h and sqlsystm.h
|
|
*/
|
|
typedef char sqlint8;
|
|
typedef unsigned char sqluint8;
|
|
typedef short sqlint16;
|
|
typedef unsigned short sqluint16;
|
|
typedef int sqlint32;
|
|
typedef unsigned int sqluint32;
|
|
|
|
typedef signed char SCHAR;
|
|
typedef unsigned char UCHAR;
|
|
typedef short int SWORD;
|
|
typedef unsigned short USHORT;
|
|
typedef signed short SSHORT;
|
|
typedef unsigned short int UWORD;
|
|
|
|
typedef sqlint32 SDWORD;
|
|
typedef unsigned long ULONG;
|
|
typedef sqluint32 UDWORD;
|
|
typedef signed long SLONG;
|
|
|
|
typedef double LDOUBLE;
|
|
typedef double SDOUBLE;
|
|
typedef float SFLOAT;
|
|
typedef unsigned char SQLDATE;
|
|
typedef unsigned char SQLTIME;
|
|
typedef unsigned char SQLTIMESTAMP;
|
|
typedef unsigned char SQLDECIMAL;
|
|
typedef unsigned char SQLNUMERIC;
|
|
|
|
typedef UCHAR SQLCHAR;
|
|
typedef UCHAR SQLVARCHAR;
|
|
typedef SCHAR SQLSCHAR;
|
|
typedef SDWORD SQLINTEGER;
|
|
typedef UDWORD SQLUINTEGER;
|
|
typedef SWORD SQLSMALLINT;
|
|
typedef SDOUBLE SQLDOUBLE;
|
|
typedef SDOUBLE SQLFLOAT;
|
|
typedef SFLOAT SQLREAL;
|
|
|
|
typedef void FAR * PTR;
|
|
typedef PTR SQLPOINTER;
|
|
typedef UWORD SQLUSMALLINT;
|
|
|
|
typedef void FAR * HENV;
|
|
typedef void FAR * HDBC;
|
|
typedef void FAR * HSTMT;
|
|
|
|
typedef signed short RETCODE;
|
|
|
|
/* 64-bit Length Defines */
|
|
#define SQLLEN SQLINTEGER
|
|
#define SQLULEN SQLUINTEGER
|
|
#define SQLSETPOSIROW SQLUSMALLINT
|
|
|
|
/* Windows/NT specific DataTypes and defines */
|
|
#if !defined(WIN32) && !defined(WIN64)
|
|
|
|
#define CALLBACK
|
|
#define PASCAL
|
|
#define _cdecl
|
|
#define TRUE 1
|
|
#define FALSE 0
|
|
#define VOID void
|
|
#ifndef BOOL
|
|
#define BOOL int
|
|
#endif
|
|
|
|
typedef int HWND;
|
|
typedef unsigned int UINT;
|
|
typedef VOID *HANDLE;
|
|
typedef char *LPSTR;
|
|
typedef const char *LPCSTR;
|
|
typedef char *LPWSTR;
|
|
typedef char WCHAR;
|
|
typedef SQLUINTEGER DWORD;
|
|
typedef unsigned short WORD;
|
|
typedef unsigned char BYTE;
|
|
typedef BYTE *LPBYTE;
|
|
typedef SQLINTEGER LONG;
|
|
typedef VOID *LPVOID;
|
|
typedef VOID *PVOID;
|
|
typedef VOID *HMODULE;
|
|
typedef int GLOBALHANDLE;
|
|
typedef int (*FARPROC)(void);
|
|
typedef VOID *HINSTANCE;
|
|
typedef unsigned int WPARAM;
|
|
typedef SQLUINTEGER LPARAM;
|
|
typedef VOID *HKEY;
|
|
typedef VOID *PHKEY;
|
|
typedef char CHAR;
|
|
typedef BOOL *LPBOOL;
|
|
typedef DWORD *LPDWORD;
|
|
typedef const char *LPCWSTR;
|
|
typedef char TCHAR;
|
|
typedef char VCHAR;
|
|
typedef TCHAR *LPTSTR;
|
|
typedef const TCHAR *LPCTSTR;
|
|
|
|
#endif /*!WIN32 */
|
|
|
|
|
|
typedef SQLSMALLINT SQLRETURN;
|
|
|
|
typedef void * SQLHANDLE;
|
|
typedef SQLHANDLE SQLHENV;
|
|
typedef SQLHANDLE SQLHDBC;
|
|
typedef SQLHANDLE SQLHSTMT;
|
|
typedef SQLHANDLE SQLHDESC;
|
|
typedef SQLPOINTER SQLHWND;
|
|
|
|
|
|
|
|
typedef struct DATE_STRUCT
|
|
{
|
|
SQLSMALLINT year;
|
|
SQLUSMALLINT month;
|
|
SQLUSMALLINT day;
|
|
} DATE_STRUCT;
|
|
|
|
typedef DATE_STRUCT SQL_DATE_STRUCT;
|
|
|
|
typedef struct TIME_STRUCT
|
|
{
|
|
SQLUSMALLINT hour;
|
|
SQLUSMALLINT minute;
|
|
SQLUSMALLINT second;
|
|
} TIME_STRUCT;
|
|
|
|
typedef TIME_STRUCT SQL_TIME_STRUCT;
|
|
|
|
typedef struct TIMESTAMP_STRUCT
|
|
{
|
|
SQLSMALLINT year;
|
|
SQLUSMALLINT month;
|
|
SQLUSMALLINT day;
|
|
SQLUSMALLINT hour;
|
|
SQLUSMALLINT minute;
|
|
SQLUSMALLINT second;
|
|
SQLUINTEGER fraction; /* fraction of a second */
|
|
} TIMESTAMP_STRUCT;
|
|
|
|
|
|
typedef TIMESTAMP_STRUCT SQL_TIMESTAMP_STRUCT;
|
|
|
|
typedef enum
|
|
{
|
|
SQL_IS_YEAR = 1,
|
|
SQL_IS_MONTH = 2,
|
|
SQL_IS_DAY = 3,
|
|
SQL_IS_HOUR = 4,
|
|
SQL_IS_MINUTE = 5,
|
|
SQL_IS_SECOND = 6,
|
|
SQL_IS_YEAR_TO_MONTH = 7,
|
|
SQL_IS_DAY_TO_HOUR = 8,
|
|
SQL_IS_DAY_TO_MINUTE = 9,
|
|
SQL_IS_DAY_TO_SECOND = 10,
|
|
SQL_IS_HOUR_TO_MINUTE = 11,
|
|
SQL_IS_HOUR_TO_SECOND = 12,
|
|
SQL_IS_MINUTE_TO_SECOND = 13
|
|
} SQLINTERVAL;
|
|
|
|
typedef struct tagSQL_YEAR_MONTH
|
|
{
|
|
SQLUINTEGER year;
|
|
SQLUINTEGER month;
|
|
} SQL_YEAR_MONTH_STRUCT;
|
|
|
|
typedef struct tagSQL_DAY_SECOND
|
|
{
|
|
SQLUINTEGER day;
|
|
SQLUINTEGER hour;
|
|
SQLUINTEGER minute;
|
|
SQLUINTEGER second;
|
|
SQLUINTEGER fraction;
|
|
} SQL_DAY_SECOND_STRUCT;
|
|
|
|
typedef struct tagSQL_INTERVAL_STRUCT
|
|
{
|
|
SQLINTERVAL interval_type;
|
|
SQLSMALLINT interval_sign;
|
|
union {
|
|
SQL_YEAR_MONTH_STRUCT year_month;
|
|
SQL_DAY_SECOND_STRUCT day_second;
|
|
} intval;
|
|
|
|
} SQL_INTERVAL_STRUCT;
|
|
|
|
/* Maximum precision (in base 10) of an SQL_C_NUMERIC value */
|
|
#define SQL_MAX_C_NUMERIC_PRECISION 38
|
|
|
|
/* internal representation of numeric data type */
|
|
#define SQL_MAX_NUMERIC_LEN 16
|
|
typedef struct tagSQL_NUMERIC_STRUCT
|
|
{
|
|
SQLCHAR precision;
|
|
SQLSCHAR scale;
|
|
SQLCHAR sign; /* 1 if positive, 0 if negative */
|
|
SQLCHAR val[SQL_MAX_NUMERIC_LEN];
|
|
} SQL_NUMERIC_STRUCT;
|
|
|
|
#define SQL_BIGINT_TYPE long long
|
|
#define SQL_BIGUINT_TYPE unsigned long long
|
|
typedef SQL_BIGINT_TYPE SQLBIGINT;
|
|
typedef SQL_BIGUINT_TYPE SQLUBIGINT;
|
|
|
|
typedef SQLUINTEGER BOOKMARK;
|
|
|
|
|
|
#ifdef UCS2
|
|
typedef unsigned short SQLWCHAR;
|
|
#else
|
|
#ifdef UTF8
|
|
typedef char SQLWCHAR;
|
|
#else
|
|
typedef wchar_t SQLWCHAR;
|
|
#endif /* !UTF-8 and !UCS-2 */
|
|
#endif /* UCS-2 */
|
|
|
|
#define SQL_C_WCHAR SQL_WCHAR
|
|
#ifdef UNICODE
|
|
#define SQL_C_TCHAR SQL_C_WCHAR
|
|
typedef SQLWCHAR SQLTCHAR;
|
|
#else
|
|
#define SQL_C_TCHAR SQL_C_CHAR
|
|
typedef SQLCHAR SQLTCHAR;
|
|
#endif
|
|
|
|
/* Special length values */
|
|
#define SQL_NULL_DATA -1
|
|
#define SQL_DATA_AT_EXEC -2
|
|
#define SQL_NTS -3 /* NTS = Null Terminated String */
|
|
#define SQL_NTSL -3L /* NTS = Null Terminated String */
|
|
|
|
/* RETCODE values */
|
|
#define SQL_SUCCESS 0
|
|
#define SQL_SUCCESS_WITH_INFO 1
|
|
#define SQL_NEED_DATA 99
|
|
#define SQL_NO_DATA 100
|
|
#define SQL_STILL_EXECUTING 2
|
|
#define SQL_ERROR -1
|
|
#define SQL_INVALID_HANDLE -2
|
|
|
|
/* test for SQL_SUCCESS or SQL_SUCCESS_WITH_INFO */
|
|
#define SQL_SUCCEEDED(rc) (((rc)&(~1))==0)
|
|
|
|
/* Special length values */
|
|
#define SQL_NULL_DATA -1
|
|
#define SQL_DATA_AT_EXEC -2
|
|
#define SQL_NTS -3 /* NTS = Null Terminated String */
|
|
#define SQL_NTSL -3L /* NTS = Null Terminated String */
|
|
|
|
/* generally useful constants */
|
|
#define SQL_MAX_MESSAGE_LENGTH 512 /* message buffer size */
|
|
#define SQL_MAX_ID_LENGTH 128 /* maximum identifier name size,
|
|
e.g. cursor names */
|
|
|
|
/* date/time length constants */
|
|
#define SQL_DATE_LEN 10
|
|
#define SQL_TIME_LEN 8 /* add P+1 if precision is nonzero */
|
|
#define SQL_TIMESTAMP_LEN 19 /* add P+1 if precision is nonzero */
|
|
|
|
/* handle type identifiers */
|
|
#define SQL_HANDLE_ENV 1
|
|
#define SQL_HANDLE_DBC 2
|
|
#define SQL_HANDLE_STMT 3
|
|
#define SQL_HANDLE_DESC 4
|
|
|
|
/*
|
|
* Environment attributes; note SQL_CONNECTTYPE, SQL_SYNC_POINT are also
|
|
* environment attributes that are settable at the connection level
|
|
*/
|
|
|
|
#define SQL_ATTR_OUTPUT_NTS 10001
|
|
|
|
/* Options for SQLGetStmtOption/SQLSetStmtOption */
|
|
|
|
#define SQL_ATTR_AUTO_IPD 10001
|
|
#define SQL_ATTR_APP_ROW_DESC 10010
|
|
#define SQL_ATTR_APP_PARAM_DESC 10011
|
|
#define SQL_ATTR_IMP_ROW_DESC 10012
|
|
#define SQL_ATTR_IMP_PARAM_DESC 10013
|
|
#define SQL_ATTR_METADATA_ID 10014
|
|
#define SQL_ATTR_CURSOR_SCROLLABLE (-1)
|
|
#define SQL_ATTR_CURSOR_SENSITIVITY (-2)
|
|
|
|
/* SQL_ATTR_CURSOR_SCROLLABLE values */
|
|
#define SQL_NONSCROLLABLE 0
|
|
#define SQL_SCROLLABLE 1
|
|
|
|
/* SQL_ATTR_CURSOR_SCROLLABLE values */
|
|
#define SQL_NONSCROLLABLE 0
|
|
#define SQL_SCROLLABLE 1
|
|
|
|
/* identifiers of fields in the SQL descriptor */
|
|
#define SQL_DESC_COUNT 1001
|
|
#define SQL_DESC_TYPE 1002
|
|
#define SQL_DESC_LENGTH 1003
|
|
#define SQL_DESC_OCTET_LENGTH_PTR 1004
|
|
#define SQL_DESC_PRECISION 1005
|
|
#define SQL_DESC_SCALE 1006
|
|
#define SQL_DESC_DATETIME_INTERVAL_CODE 1007
|
|
#define SQL_DESC_NULLABLE 1008
|
|
#define SQL_DESC_INDICATOR_PTR 1009
|
|
#define SQL_DESC_DATA_PTR 1010
|
|
#define SQL_DESC_NAME 1011
|
|
#define SQL_DESC_UNNAMED 1012
|
|
#define SQL_DESC_OCTET_LENGTH 1013
|
|
#define SQL_DESC_ALLOC_TYPE 1099
|
|
#define SQL_DESC_USER_DEFINED_TYPE_CODE 1098
|
|
#define SQL_DESC_CARDINALITY 1040
|
|
#define SQL_DESC_CARDINALITY_PTR 1043
|
|
|
|
/* identifiers of fields in the diagnostics area */
|
|
#define SQL_DIAG_RETURNCODE 1
|
|
#define SQL_DIAG_NUMBER 2
|
|
#define SQL_DIAG_ROW_COUNT 3
|
|
#define SQL_DIAG_SQLSTATE 4
|
|
#define SQL_DIAG_NATIVE 5
|
|
#define SQL_DIAG_MESSAGE_TEXT 6
|
|
#define SQL_DIAG_DYNAMIC_FUNCTION 7
|
|
#define SQL_DIAG_CLASS_ORIGIN 8
|
|
#define SQL_DIAG_SUBCLASS_ORIGIN 9
|
|
#define SQL_DIAG_CONNECTION_NAME 10
|
|
#define SQL_DIAG_SERVER_NAME 11
|
|
#define SQL_DIAG_DYNAMIC_FUNCTION_CODE 12
|
|
|
|
/* dynamic function codes */
|
|
#define SQL_DIAG_ALTER_TABLE 4
|
|
#define SQL_DIAG_CALL 7
|
|
#define SQL_DIAG_CREATE_INDEX (-1)
|
|
#define SQL_DIAG_CREATE_TABLE 77
|
|
#define SQL_DIAG_CREATE_VIEW 84
|
|
#define SQL_DIAG_DELETE_WHERE 19
|
|
#define SQL_DIAG_DROP_INDEX (-2)
|
|
#define SQL_DIAG_DROP_TABLE 32
|
|
#define SQL_DIAG_DROP_VIEW 36
|
|
#define SQL_DIAG_DYNAMIC_DELETE_CURSOR 38
|
|
#define SQL_DIAG_DYNAMIC_UPDATE_CURSOR 81
|
|
#define SQL_DIAG_GRANT 48
|
|
#define SQL_DIAG_INSERT 50
|
|
#define SQL_DIAG_MERGE 128
|
|
#define SQL_DIAG_REVOKE 59
|
|
#define SQL_DIAG_SELECT_CURSOR 85
|
|
#define SQL_DIAG_UNKNOWN_STATEMENT 0
|
|
#define SQL_DIAG_UPDATE_WHERE 82
|
|
|
|
/* Standard SQL data types */
|
|
#define SQL_UNKNOWN_TYPE 0
|
|
#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_DATETIME 9
|
|
#define SQL_VARCHAR 12
|
|
#define SQL_WCHAR (-8)
|
|
#define SQL_WVARCHAR (-9)
|
|
#define SQL_WLONGVARCHAR (-10)
|
|
#define SQL_DECFLOAT (-360)
|
|
/* One-parameter shortcuts for date/time data types */
|
|
#define SQL_TYPE_DATE 91
|
|
#define SQL_TYPE_TIME 92
|
|
#define SQL_TYPE_TIMESTAMP 93
|
|
|
|
/* Statement attribute values for cursor sensitivity */
|
|
#define SQL_UNSPECIFIED 0
|
|
#define SQL_INSENSITIVE 1
|
|
#define SQL_SENSITIVE 2
|
|
|
|
/* SQLGetTypeInfo define */
|
|
#define SQL_ALL_TYPES 0
|
|
|
|
/* Default conversion code for SQLBindCol(), SQLBindParam() and SQLGetData() */
|
|
#define SQL_DEFAULT 99
|
|
|
|
/* SQLGetData() code indicating that the application row descriptor
|
|
* specifies the data type
|
|
*/
|
|
#define SQL_ARD_TYPE (-99)
|
|
|
|
/* SQL date/time type subcodes */
|
|
#define SQL_CODE_DATE 1
|
|
#define SQL_CODE_TIME 2
|
|
#define SQL_CODE_TIMESTAMP 3
|
|
|
|
/* CLI attribute/option values */
|
|
#define SQL_FALSE 0
|
|
#define SQL_TRUE 1
|
|
|
|
/*
|
|
* NULL status defines; these are used in SQLColAttributes, SQLDescribeCol,
|
|
* to describe the nullability of a column in a table.
|
|
*/
|
|
|
|
#define SQL_NO_NULLS 0
|
|
#define SQL_NULLABLE 1
|
|
#define SQL_NULLABLE_UNKNOWN 2
|
|
|
|
/*
|
|
* SQLColAttribute defines for SQL_COLUMN_SEARCHABLE condition.
|
|
*/
|
|
#define SQL_PRED_NONE 0
|
|
#define SQL_PRED_CHAR 1
|
|
#define SQL_PRED_BASIC 2
|
|
|
|
|
|
/* values of UNNAMED field in descriptor used in SQLColAttribute */
|
|
#define SQL_NAMED 0
|
|
#define SQL_UNNAMED 1
|
|
|
|
/* values of ALLOC_TYPE field in descriptor */
|
|
#define SQL_DESC_ALLOC_AUTO 1
|
|
#define SQL_DESC_ALLOC_USER 2
|
|
|
|
/* SQLFreeStmt option values */
|
|
#define SQL_CLOSE 0
|
|
#define SQL_DROP 1
|
|
#define SQL_UNBIND 2
|
|
#define SQL_RESET_PARAMS 3
|
|
|
|
/* SQLDataSources "fDirection" values, also used on SQLExtendedFetch() */
|
|
/* See sqlext.h for additional SQLExtendedFetch fetch direction defines */
|
|
#define SQL_FETCH_NEXT 1
|
|
#define SQL_FETCH_FIRST 2
|
|
|
|
/* OTHER CODES USED FOR FETCHORIENTATION IN SQLFETCHSCROLL() */
|
|
#define SQL_FETCH_LAST 3
|
|
#define SQL_FETCH_PRIOR 4
|
|
#define SQL_FETCH_ABSOLUTE 5
|
|
#define SQL_FETCH_RELATIVE 6
|
|
|
|
/* SQLTransact option values */
|
|
#define SQL_COMMIT 0
|
|
#define SQL_ROLLBACK 1
|
|
|
|
/* NULL handle defines */
|
|
#define SQL_NULL_HENV 0L
|
|
#define SQL_NULL_HDBC 0L
|
|
#define SQL_NULL_HSTMT 0L
|
|
#define SQL_NULL_HDESC 0L
|
|
#define SQL_NULL_HANDLE 0L
|
|
|
|
/* Column types and scopes in SQLSpecialColumns */
|
|
|
|
#define SQL_SCOPE_CURROW 0
|
|
#define SQL_SCOPE_TRANSACTION 1
|
|
#define SQL_SCOPE_SESSION 2
|
|
|
|
/* Defines for SQLStatistics */
|
|
#define SQL_INDEX_UNIQUE 0
|
|
#define SQL_INDEX_ALL 1
|
|
|
|
/* Defines for SQLStatistics (returned in the result set) */
|
|
#define SQL_INDEX_CLUSTERED 1
|
|
#define SQL_INDEX_HASHED 2
|
|
#define SQL_INDEX_OTHER 3
|
|
|
|
/* Defines for SQLSpecialColumns (returned in the result set) */
|
|
#define SQL_PC_UNKNOWN 0
|
|
#define SQL_PC_NON_PSEUDO 1
|
|
#define SQL_PC_PSEUDO 2
|
|
|
|
/* Reserved value for the IdentifierType argument of SQLSpecialColumns() */
|
|
#define SQL_ROW_IDENTIFIER 1
|
|
|
|
/* SQLGetFunction defines - supported functions */
|
|
#define SQL_API_SQLALLOCCONNECT 1
|
|
#define SQL_API_SQLALLOCENV 2
|
|
#define SQL_API_SQLALLOCSTMT 3
|
|
#define SQL_API_SQLBINDCOL 4
|
|
#define SQL_API_SQLBINDPARAM 1002
|
|
#define SQL_API_SQLCANCEL 5
|
|
#define SQL_API_SQLCONNECT 7
|
|
#define SQL_API_SQLCOPYDESC 1004
|
|
#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_SQLSETDESCFIELD 1017
|
|
#define SQL_API_SQLSETDESCREC 1018
|
|
#define SQL_API_SQLSETENVATTR 1019
|
|
#define SQL_API_SQLSETPARAM 22
|
|
#define SQL_API_SQLTRANSACT 23
|
|
|
|
#define SQL_API_SQLCOLUMNS 40
|
|
#define SQL_API_SQLGETCONNECTOPTION 42
|
|
#define SQL_API_SQLGETDATA 43
|
|
#define SQL_API_SQLGETDATAINTERNAL 174
|
|
#define SQL_API_SQLGETDESCFIELD 1008
|
|
#define SQL_API_SQLGETDESCREC 1009
|
|
#define SQL_API_SQLGETDIAGFIELD 1010
|
|
#define SQL_API_SQLGETDIAGREC 1011
|
|
#define SQL_API_SQLGETENVATTR 1012
|
|
#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_SQLDATASOURCES 57
|
|
#define SQL_API_SQLSETCONNECTATTR 1016
|
|
#define SQL_API_SQLSETSTMTATTR 1020
|
|
|
|
#define SQL_API_SQLBINDFILETOCOL 1250
|
|
#define SQL_API_SQLBINDFILETOPARAM 1251
|
|
#define SQL_API_SQLSETCOLATTRIBUTES 1252
|
|
#define SQL_API_SQLGETSQLCA 1253
|
|
#define SQL_API_SQLSETCONNECTION 1254
|
|
#define SQL_API_SQLGETDATALINKATTR 1255
|
|
#define SQL_API_SQLBUILDDATALINK 1256
|
|
#define SQL_API_SQLNEXTRESULT 1257
|
|
#define SQL_API_SQLEXTENDEDPREPARE 1296
|
|
#define SQL_API_SQLEXTENDEDBIND 1297
|
|
#define SQL_API_SQLEXTENDEDDESCRIBE 1298
|
|
|
|
#define SQL_API_SQLFETCHSCROLL 1021
|
|
#define SQL_API_SQLGETLENGTH 1022
|
|
#define SQL_API_SQLGETPOSITION 1023
|
|
#define SQL_API_SQLGETSUBSTRING 1024
|
|
|
|
|
|
#define SQL_API_SQLALLOCHANDLE 1001
|
|
#define SQL_API_SQLFREEHANDLE 1006
|
|
#define SQL_API_SQLCLOSECURSOR 1003
|
|
#define SQL_API_SQLENDTRAN 1005
|
|
#define SQL_API_SQLCOLATTRIBUTE 6
|
|
#define SQL_API_SQLGETSTMTATTR 1014
|
|
#define SQL_API_SQLGETCONNECTATTR 1007
|
|
|
|
/* Information requested by SQLGetInfo() */
|
|
#define SQL_MAX_DRIVER_CONNECTIONS 0
|
|
#define SQL_MAXIMUM_DRIVER_CONNECTIONS SQL_MAX_DRIVER_CONNECTIONS
|
|
#define SQL_MAX_CONCURRENT_ACTIVITIES 1
|
|
#define SQL_MAXIMUM_CONCURRENT_ACTIVITIES SQL_MAX_CONCURRENT_ACTIVITIES
|
|
#define SQL_ATTR_ANSI_APP 115
|
|
|
|
/* SQLGetInfo defines - Info Type */
|
|
#define SQL_DATA_SOURCE_NAME 2
|
|
#define SQL_FETCH_DIRECTION 8
|
|
#define SQL_SERVER_NAME 13
|
|
#define SQL_SEARCH_PATTERN_ESCAPE 14
|
|
#define SQL_DBMS_NAME 17
|
|
#define SQL_DBMS_VER 18
|
|
#define SQL_ACCESSIBLE_TABLES 19
|
|
#define SQL_ACCESSIBLE_PROCEDURES 20
|
|
#define SQL_CURSOR_COMMIT_BEHAVIOR 23
|
|
#define SQL_DATA_SOURCE_READ_ONLY 25
|
|
#define SQL_DEFAULT_TXN_ISOLATION 26
|
|
#define SQL_IDENTIFIER_CASE 28
|
|
#define SQL_IDENTIFIER_QUOTE_CHAR 29
|
|
#define SQL_MAX_COLUMN_NAME_LEN 30
|
|
#define SQL_MAXIMUM_COLUMN_NAME_LENGTH SQL_MAX_COLUMN_NAME_LEN
|
|
#define SQL_MAX_CURSOR_NAME_LEN 31
|
|
#define SQL_MAXIMUM_CURSOR_NAME_LENGTH SQL_MAX_CURSOR_NAME_LEN
|
|
#define SQL_MAX_TABLE_NAME_LEN 35
|
|
#define SQL_SCROLL_CONCURRENCY 43
|
|
#define SQL_TXN_CAPABLE 46
|
|
#define SQL_TRANSACTION_CAPABLE SQL_TXN_CAPABLE
|
|
#define SQL_USER_NAME 47
|
|
#define SQL_TXN_ISOLATION_OPTION 72
|
|
#define SQL_TRANSACTION_ISOLATION_OPTION SQL_TXN_ISOLATION_OPTION
|
|
#define SQL_GETDATA_EXTENSIONS 81
|
|
#define SQL_NULL_COLLATION 85
|
|
#define SQL_ALTER_TABLE 86
|
|
#define SQL_ORDER_BY_COLUMNS_IN_SELECT 90
|
|
#define SQL_SPECIAL_CHARACTERS 94
|
|
#define SQL_MAX_COLUMNS_IN_GROUP_BY 97
|
|
#define SQL_MAXIMUM_COLUMNS_IN_GROUP_BY SQL_MAX_COLUMNS_IN_GROUP_BY
|
|
#define SQL_MAX_COLUMNS_IN_INDEX 98
|
|
#define SQL_MAXIMUM_COLUMNS_IN_INDEX SQL_MAX_COLUMNS_IN_INDEX
|
|
#define SQL_MAX_COLUMNS_IN_ORDER_BY 99
|
|
#define SQL_MAXIMUM_COLUMNS_IN_ORDER_BY SQL_MAX_COLUMNS_IN_ORDER_BY
|
|
#define SQL_MAX_COLUMNS_IN_SELECT 100
|
|
#define SQL_MAXIMUM_COLUMNS_IN_SELECT SQL_MAX_COLUMNS_IN_SELECT
|
|
#define SQL_MAX_COLUMNS_IN_TABLE 101
|
|
#define SQL_MAX_INDEX_SIZE 102
|
|
#define SQL_MAXIMUM_INDEX_SIZE SQL_MAX_INDEX_SIZE
|
|
#define SQL_MAX_ROW_SIZE 104
|
|
#define SQL_MAXIMUM_ROW_SIZE SQL_MAX_ROW_SIZE
|
|
#define SQL_MAX_STATEMENT_LEN 105
|
|
#define SQL_MAXIMUM_STATEMENT_LENGTH SQL_MAX_STATEMENT_LEN
|
|
#define SQL_MAX_TABLES_IN_SELECT 106
|
|
#define SQL_MAXIMUM_TABLES_IN_SELECT SQL_MAX_TABLES_IN_SELECT
|
|
#define SQL_MAX_USER_NAME_LEN 107
|
|
#define SQL_MAXIMUM_USER_NAME_LENGTH SQL_MAX_USER_NAME_LEN
|
|
#define SQL_MAX_SCHEMA_NAME_LEN SQL_MAX_OWNER_NAME_LEN
|
|
#define SQL_MAXIMUM_SCHEMA_NAME_LENGTH SQL_MAX_SCHEMA_NAME_LEN
|
|
#define SQL_MAX_CATALOG_NAME_LEN SQL_MAX_QUALIFIER_NAME_LEN
|
|
#define SQL_MAXIMUM_CATALOG_NAME_LENGTH SQL_MAX_CATALOG_NAME_LEN
|
|
#define SQL_OJ_CAPABILITIES 115
|
|
#define SQL_OUTER_JOIN_CAPABILITIES SQL_OJ_CAPABILITIES
|
|
#define SQL_XOPEN_CLI_YEAR 10000
|
|
#define SQL_CURSOR_SENSITIVITY 10001
|
|
#define SQL_DESCRIBE_PARAMETER 10002
|
|
#define SQL_CATALOG_NAME 10003
|
|
#define SQL_COLLATION_SEQ 10004
|
|
#define SQL_MAX_IDENTIFIER_LEN 10005
|
|
#define SQL_MAXIMUM_IDENTIFIER_LENGTH SQL_MAX_IDENTIFIER_LEN
|
|
#define SQL_INTEGRITY 73
|
|
#define SQL_DATABASE_CODEPAGE 2519
|
|
#define SQL_APPLICATION_CODEPAGE 2520
|
|
#define SQL_CONNECT_CODEPAGE 2521
|
|
#define SQL_ATTR_DB2_APPLICATION_ID 2532
|
|
#define SQL_ATTR_DB2_APPLICATION_HANDLE 2533
|
|
#define SQL_ATTR_HANDLE_XA_ASSOCIATED 2535
|
|
#define SQL_DB2_DRIVER_VER 2550
|
|
#define SQL_ATTR_XML_DECLARATION 2552
|
|
#define SQL_ATTR_CURRENT_IMPLICIT_XMLPARSE_OPTION 2553
|
|
#define SQL_ATTR_XQUERY_STATEMENT 2557
|
|
#define SQL_DB2_DRIVER_TYPE 2567
|
|
#define SQL_INPUT_CHAR_CONVFACTOR 2581
|
|
#define SQL_OUTPUT_CHAR_CONVFACTOR 2582
|
|
#define SQL_ATTR_REPLACE_QUOTED_LITERALS 2586
|
|
#define SQL_ATTR_REPORT_TIMESTAMP_TRUNC_AS_WARN 2587
|
|
|
|
|
|
#define SQL_INFO_LAST 114
|
|
#define SQL_INFO_DRIVER_START 1000
|
|
|
|
/* SQL_ALTER_TABLE bitmasks */
|
|
#define SQL_AT_ADD_COLUMN 0x00000001L
|
|
#define SQL_AT_DROP_COLUMN 0x00000002L
|
|
#define SQL_AT_ADD_CONSTRAINT 0x00000008L
|
|
|
|
/* Bitmasks for SQL_ASYNC_MODE */
|
|
|
|
#define SQL_AM_NONE 0
|
|
#define SQL_AM_CONNECTION 1
|
|
#define SQL_AM_STATEMENT 2
|
|
|
|
/* 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_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
|
|
|
|
/* SQL_GETDATA_EXTENSIONS values */
|
|
|
|
#define SQL_GD_ANY_COLUMN 0x00000001L
|
|
#define SQL_GD_ANY_ORDER 0x00000002L
|
|
|
|
/* 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_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
|
|
|
|
/* 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_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_TXN_ISOLATION_OPTION masks */
|
|
#define SQL_TXN_READ_UNCOMMITTED 0x00000001L
|
|
#define SQL_TRANSACTION_READ_UNCOMMITTED SQL_TXN_READ_UNCOMMITTED
|
|
#define SQL_TXN_READ_COMMITTED 0x00000002L
|
|
#define SQL_TRANSACTION_READ_COMMITTED SQL_TXN_READ_COMMITTED
|
|
#define SQL_TXN_REPEATABLE_READ 0x00000004L
|
|
#define SQL_TRANSACTION_REPEATABLE_READ SQL_TXN_REPEATABLE_READ
|
|
#define SQL_TXN_SERIALIZABLE 0x00000008L
|
|
#define SQL_TRANSACTION_SERIALIZABLE SQL_TXN_SERIALIZABLE
|
|
#define SQL_TXN_NOCOMMIT 0x00000020L
|
|
#define SQL_TRANSACTION_NOCOMMIT SQL_TXN_NOCOMMIT
|
|
#define SQL_TXN_IDS_CURSOR_STABILITY 0x00000040L
|
|
#define SQL_TRANSACTION_IDS_CURSOR_STABILITY SQL_TXN_IDS_CURSOR_STABILITY
|
|
#define SQL_TXN_IDS_LAST_COMMITTED 0x00000080L
|
|
#define SQL_TRANSACTION_IDS_LAST_COMMITTED SQL_TXN_IDS_LAST_COMMITTED
|
|
|
|
#define SQL_TXN_LAST_COMMITTED 0x00000010L
|
|
#define SQL_TRANSACTION_LAST_COMMITTED SQL_TXN_LAST_COMMITTED
|
|
|
|
/* SQL_NULL_COLLATION values */
|
|
#define SQL_NC_HIGH 0
|
|
#define SQL_NC_LOW 1
|
|
|
|
/* API Prototypes */
|
|
|
|
SQLRETURN SQL_API_FN SQLAllocConnect (SQLHENV henv,
|
|
SQLHDBC FAR *phdbc);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLAllocEnv (SQLHENV FAR *phenv);
|
|
|
|
SQLRETURN SQL_API_FN SQLAllocStmt (SQLHDBC hdbc,
|
|
SQLHSTMT FAR *phstmt);
|
|
|
|
SQLRETURN SQL_API_FN SQLAllocHandle (SQLSMALLINT fHandleType,
|
|
SQLHANDLE hInput,
|
|
SQLHANDLE * phOutput);
|
|
|
|
SQLRETURN SQL_API_FN SQLBindCol (SQLHSTMT hstmt,
|
|
SQLUSMALLINT icol,
|
|
SQLSMALLINT fCType,
|
|
SQLPOINTER rgbValue,
|
|
SQLLEN cbValueMax,
|
|
SQLLEN FAR *pcbValue);
|
|
|
|
SQLRETURN SQL_API_FN SQLCancel (SQLHSTMT hstmt);
|
|
|
|
SQLRETURN SQL_API_FN SQLBindParam (SQLHSTMT StatementHandle,
|
|
SQLUSMALLINT ParameterNumber,
|
|
SQLSMALLINT ValueType,
|
|
SQLSMALLINT ParameterType,
|
|
SQLULEN LengthPrecision,
|
|
SQLSMALLINT ParameterScale,
|
|
SQLPOINTER ParameterValue,
|
|
SQLLEN *StrLen_or_Ind);
|
|
|
|
SQLRETURN SQL_API_FN SQLCloseCursor (SQLHSTMT hStmt);
|
|
|
|
SQLRETURN SQL_API_FN SQLColAttribute (SQLHSTMT hstmt,
|
|
SQLUSMALLINT icol,
|
|
SQLUSMALLINT fDescType,
|
|
SQLPOINTER rgbDesc,
|
|
SQLSMALLINT cbDescMax,
|
|
SQLSMALLINT FAR *pcbDesc,
|
|
SQLPOINTER pfDesc);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLColumns (SQLHSTMT hstmt,
|
|
SQLCHAR FAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLCHAR FAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLCHAR FAR *szTableName,
|
|
SQLSMALLINT cbTableName,
|
|
SQLCHAR FAR *szColumnName,
|
|
SQLSMALLINT cbColumnName);
|
|
|
|
SQLRETURN SQL_API_FN SQLConnect (SQLHDBC hdbc,
|
|
SQLCHAR FAR *szDSN,
|
|
SQLSMALLINT cbDSN,
|
|
SQLCHAR FAR *szUID,
|
|
SQLSMALLINT cbUID,
|
|
SQLCHAR FAR *szAuthStr,
|
|
SQLSMALLINT cbAuthStr);
|
|
|
|
SQLRETURN SQL_API_FN SQLCopyDesc (SQLHDESC hDescSource,
|
|
SQLHDESC hDescTarget);
|
|
|
|
SQLRETURN SQL_API_FN SQLDataSources (SQLHENV henv,
|
|
SQLUSMALLINT fDirection,
|
|
SQLCHAR FAR *szDSN,
|
|
SQLSMALLINT cbDSNMax,
|
|
SQLSMALLINT FAR *pcbDSN,
|
|
SQLCHAR FAR *szDescription,
|
|
SQLSMALLINT cbDescriptionMax,
|
|
SQLSMALLINT FAR *pcbDescription);
|
|
|
|
SQLRETURN SQL_API_FN SQLDescribeCol (SQLHSTMT hstmt,
|
|
SQLUSMALLINT icol,
|
|
SQLCHAR FAR *szColName,
|
|
SQLSMALLINT cbColNameMax,
|
|
SQLSMALLINT FAR *pcbColName,
|
|
SQLSMALLINT FAR *pfSqlType,
|
|
SQLULEN FAR *pcbColDef,
|
|
SQLSMALLINT FAR *pibScale,
|
|
SQLSMALLINT FAR *pfNullable);
|
|
|
|
SQLRETURN SQL_API_FN SQLDisconnect (SQLHDBC hdbc);
|
|
|
|
SQLRETURN SQL_API_FN SQLEndTran (SQLSMALLINT fHandleType,
|
|
SQLHANDLE hHandle,
|
|
SQLSMALLINT fType);
|
|
|
|
SQLRETURN SQL_API_FN SQLError (SQLHENV henv,
|
|
SQLHDBC hdbc,
|
|
SQLHSTMT hstmt,
|
|
SQLCHAR FAR *szSqlState,
|
|
SQLINTEGER FAR *pfNativeError,
|
|
SQLCHAR FAR *szErrorMsg,
|
|
SQLSMALLINT cbErrorMsgMax,
|
|
SQLSMALLINT FAR *pcbErrorMsg);
|
|
|
|
SQLRETURN SQL_API_FN SQLExecDirect (SQLHSTMT hstmt,
|
|
SQLCHAR FAR *szSqlStr,
|
|
SQLINTEGER cbSqlStr);
|
|
|
|
SQLRETURN SQL_API_FN SQLExecute (SQLHSTMT hstmt);
|
|
|
|
SQLRETURN SQL_API_FN SQLFetch (SQLHSTMT hstmt);
|
|
|
|
|
|
SQLRETURN SQL_API SQLFetchScroll (SQLHSTMT StatementHandle,
|
|
SQLSMALLINT FetchOrientation,
|
|
SQLLEN FetchOffset);
|
|
|
|
SQLRETURN SQL_API_FN SQLFreeConnect (SQLHDBC hdbc);
|
|
|
|
SQLRETURN SQL_API_FN SQLFreeEnv (SQLHENV henv);
|
|
|
|
SQLRETURN SQL_API_FN SQLFreeStmt (SQLHSTMT hstmt,
|
|
SQLUSMALLINT fOption);
|
|
|
|
SQLRETURN SQL_API_FN SQLFreeHandle (SQLSMALLINT fHandleType,
|
|
SQLHANDLE hHandle);
|
|
|
|
SQLRETURN SQL_API SQLGetConnectAttr (SQLHDBC ConnectionHandle,
|
|
SQLINTEGER Attribute,
|
|
SQLPOINTER Value,
|
|
SQLINTEGER BufferLength,
|
|
SQLINTEGER *StringLength);
|
|
|
|
SQLRETURN SQL_API_FN SQLGetConnectOption (
|
|
SQLHDBC hdbc,
|
|
SQLUSMALLINT fOption,
|
|
SQLPOINTER pvParam);
|
|
|
|
SQLRETURN SQL_API_FN SQLGetCursorName (SQLHSTMT hstmt,
|
|
SQLCHAR FAR *szCursor,
|
|
SQLSMALLINT cbCursorMax,
|
|
SQLSMALLINT FAR *pcbCursor);
|
|
|
|
SQLRETURN SQL_API_FN SQLGetData (SQLHSTMT hstmt,
|
|
SQLUSMALLINT icol,
|
|
SQLSMALLINT fCType,
|
|
SQLPOINTER rgbValue,
|
|
SQLLEN cbValueMax,
|
|
SQLLEN FAR *pcbValue);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLGetDescField( SQLHDESC DescriptorHandle,
|
|
SQLSMALLINT RecNumber,
|
|
SQLSMALLINT FieldIdentifier,
|
|
SQLPOINTER Value,
|
|
SQLINTEGER BufferLength,
|
|
SQLINTEGER *StringLength);
|
|
|
|
SQLRETURN SQL_API_FN SQLGetDescRec( SQLHDESC DescriptorHandle,
|
|
SQLSMALLINT RecNumber,
|
|
SQLCHAR *Name,
|
|
SQLSMALLINT BufferLength,
|
|
SQLSMALLINT *StringLength,
|
|
SQLSMALLINT *Type,
|
|
SQLSMALLINT *SubType,
|
|
SQLLEN *Length,
|
|
SQLSMALLINT *Precision,
|
|
SQLSMALLINT *Scale,
|
|
SQLSMALLINT *Nullable);
|
|
|
|
SQLRETURN SQL_API_FN SQLGetDiagField( SQLSMALLINT fHandleType,
|
|
SQLHANDLE hHandle,
|
|
SQLSMALLINT iRecNumber,
|
|
SQLSMALLINT fDiagIdentifier,
|
|
SQLPOINTER pDiagInfo,
|
|
SQLSMALLINT cbDiagInfoMax,
|
|
SQLSMALLINT * pcbDiagInfo );
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLGetDiagRec( SQLSMALLINT fHandleType,
|
|
SQLHANDLE hHandle,
|
|
SQLSMALLINT iRecNumber,
|
|
SQLCHAR * pszSqlState,
|
|
SQLINTEGER * pfNativeError,
|
|
SQLCHAR * pszErrorMsg,
|
|
SQLSMALLINT cbErrorMsgMax,
|
|
SQLSMALLINT * pcbErrorMsg );
|
|
|
|
SQLRETURN SQL_API_FN SQLGetEnvAttr (SQLHENV henv,
|
|
SQLINTEGER Attribute,
|
|
SQLPOINTER Value,
|
|
SQLINTEGER BufferLength,
|
|
SQLINTEGER FAR *StringLength);
|
|
|
|
SQLRETURN SQL_API_FN SQLGetFunctions (SQLHDBC hdbc,
|
|
SQLUSMALLINT fFunction,
|
|
SQLUSMALLINT FAR *pfExists);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLGetInfo (SQLHDBC hdbc,
|
|
SQLUSMALLINT fInfoType,
|
|
SQLPOINTER rgbInfoValue,
|
|
SQLSMALLINT cbInfoValueMax,
|
|
SQLSMALLINT FAR *pcbInfoValue);
|
|
|
|
SQLRETURN SQL_API SQLGetStmtAttr (SQLHSTMT StatementHandle,
|
|
SQLINTEGER Attribute,
|
|
SQLPOINTER Value,
|
|
SQLINTEGER BufferLength,
|
|
SQLINTEGER *StringLength);
|
|
|
|
SQLRETURN SQL_API_FN SQLGetStmtOption (SQLHSTMT hstmt,
|
|
SQLUSMALLINT fOption,
|
|
SQLPOINTER pvParam);
|
|
|
|
SQLRETURN SQL_API_FN SQLGetTypeInfo (SQLHSTMT hstmt,
|
|
SQLSMALLINT fSqlType);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLNumResultCols (SQLHSTMT hstmt,
|
|
SQLSMALLINT FAR *pccol);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLParamData (SQLHSTMT hstmt,
|
|
SQLPOINTER FAR *prgbValue);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLPrepare (SQLHSTMT hstmt,
|
|
SQLCHAR FAR *szSqlStr,
|
|
SQLINTEGER cbSqlStr);
|
|
|
|
SQLRETURN SQL_API_FN SQLPutData (SQLHSTMT hstmt,
|
|
SQLPOINTER rgbValue,
|
|
SQLLEN cbValue);
|
|
|
|
SQLRETURN SQL_API_FN SQLRowCount (SQLHSTMT hstmt,
|
|
SQLLEN FAR *pcrow);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLSetConnectAttr(
|
|
SQLHDBC hdbc,
|
|
SQLINTEGER fOption,
|
|
SQLPOINTER pvParam,
|
|
SQLINTEGER fStrLen);
|
|
|
|
SQLRETURN SQL_API_FN SQLSetConnectOption(
|
|
SQLHDBC hdbc,
|
|
SQLUSMALLINT fOption,
|
|
ULONG vParam);
|
|
|
|
SQLRETURN SQL_API_FN SQLSetCursorName (SQLHSTMT hstmt,
|
|
SQLCHAR FAR *szCursor,
|
|
SQLSMALLINT cbCursor);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLSetDescField (SQLHDESC DescriptorHandle,
|
|
SQLSMALLINT RecNumber,
|
|
SQLSMALLINT FieldIdentifier,
|
|
SQLPOINTER Value,
|
|
SQLINTEGER BufferLength);
|
|
|
|
SQLRETURN SQL_API_FN SQLSetDescRec (SQLHDESC DescriptorHandle,
|
|
SQLSMALLINT RecNumber,
|
|
SQLSMALLINT Type,
|
|
SQLSMALLINT SubType,
|
|
SQLLEN Length,
|
|
SQLSMALLINT Precision,
|
|
SQLSMALLINT Scale,
|
|
SQLPOINTER Data,
|
|
SQLLEN *StringLength,
|
|
SQLLEN *Indicator);
|
|
|
|
SQLRETURN SQL_API_FN SQLSetEnvAttr (SQLHENV henv,
|
|
SQLINTEGER Attribute,
|
|
SQLPOINTER Value,
|
|
SQLINTEGER StringLength);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLSetParam (SQLHSTMT hstmt,
|
|
SQLUSMALLINT ipar,
|
|
SQLSMALLINT fCType,
|
|
SQLSMALLINT fSqlType,
|
|
SQLULEN cbParamDef,
|
|
SQLSMALLINT ibScale,
|
|
SQLPOINTER rgbValue,
|
|
SQLLEN FAR *pcbValue);
|
|
|
|
SQLRETURN SQL_API_FN SQLSetStmtAttr (SQLHSTMT hstmt,
|
|
SQLINTEGER fOption,
|
|
SQLPOINTER pvParam,
|
|
SQLINTEGER fStrLen);
|
|
|
|
|
|
SQLRETURN SQL_API_FN SQLSetStmtOption (SQLHSTMT hstmt,
|
|
SQLUSMALLINT fOption,
|
|
SQLULEN vParam);
|
|
|
|
SQLRETURN SQL_API_FN SQLSpecialColumns(SQLHSTMT hstmt,
|
|
SQLUSMALLINT fColType,
|
|
SQLCHAR FAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLCHAR FAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLCHAR FAR *szTableName,
|
|
SQLSMALLINT cbTableName,
|
|
SQLUSMALLINT fScope,
|
|
SQLUSMALLINT fNullable);
|
|
|
|
SQLRETURN SQL_API_FN SQLStatistics (SQLHSTMT hstmt,
|
|
SQLCHAR FAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLCHAR FAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLCHAR FAR *szTableName,
|
|
SQLSMALLINT cbTableName,
|
|
SQLUSMALLINT fUnique,
|
|
|
|
SQLUSMALLINT fAccuracy);
|
|
|
|
SQLRETURN SQL_API_FN SQLTables (SQLHSTMT hstmt,
|
|
SQLCHAR FAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLCHAR FAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLCHAR FAR *szTableName,
|
|
SQLSMALLINT cbTableName,
|
|
SQLCHAR FAR *szTableType,
|
|
SQLSMALLINT cbTableType);
|
|
|
|
SQLRETURN SQL_API_FN SQLTransact (SQLHENV henv,
|
|
SQLHDBC hdbc,
|
|
SQLUSMALLINT fType);
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
} /* End of extern "C" { */
|
|
#endif /* __cplusplus */
|
|
|
|
#define GUID TAGGUID
|
|
typedef struct _TAGGUID {
|
|
unsigned long Data1;
|
|
unsigned short Data2;
|
|
unsigned short Data3;
|
|
unsigned char Data4[ 8 ];
|
|
} TAGGUID;
|
|
|
|
#define __SQL
|
|
#include <sqlext.h>
|
|
|
|
#undef GUID
|
|
|
|
/* UNICODE versions */
|
|
|
|
#if defined(_WIN64) || defined(ODBC64)
|
|
SQLRETURN SQL_API SQLColAttributeW(
|
|
SQLHSTMT hstmt,
|
|
SQLUSMALLINT iCol,
|
|
SQLUSMALLINT iField,
|
|
SQLPOINTER pCharAttr,
|
|
SQLSMALLINT cbCharAttrMax,
|
|
SQLSMALLINT *pcbCharAttr,
|
|
SQLLEN *pNumAttr);
|
|
#else
|
|
SQLRETURN SQL_API SQLColAttributeW(
|
|
SQLHSTMT hstmt,
|
|
SQLUSMALLINT iCol,
|
|
SQLUSMALLINT iField,
|
|
SQLPOINTER pCharAttr,
|
|
SQLSMALLINT cbCharAttrMax,
|
|
SQLSMALLINT *pcbCharAttr,
|
|
SQLPOINTER pNumAttr);
|
|
#endif
|
|
|
|
SQLRETURN SQL_API SQLColAttributesW(
|
|
SQLHSTMT hstmt,
|
|
SQLUSMALLINT icol,
|
|
SQLUSMALLINT fDescType,
|
|
SQLPOINTER rgbDesc,
|
|
SQLSMALLINT cbDescMax,
|
|
SQLSMALLINT *pcbDesc,
|
|
SQLLEN *pfDesc);
|
|
|
|
SQLRETURN SQL_API SQLConnectW(
|
|
SQLHDBC hdbc,
|
|
SQLWCHAR *szDSN,
|
|
SQLSMALLINT cbDSN,
|
|
SQLWCHAR *szUID,
|
|
SQLSMALLINT cbUID,
|
|
SQLWCHAR *szAuthStr,
|
|
SQLSMALLINT cbAuthStr);
|
|
|
|
SQLRETURN SQL_API SQLConnectWInt(
|
|
SQLHDBC hdbc,
|
|
SQLWCHAR *szDSN,
|
|
SQLSMALLINT cbDSN,
|
|
SQLWCHAR *szUID,
|
|
SQLSMALLINT cbUID,
|
|
SQLWCHAR *szAuthStr,
|
|
SQLSMALLINT cbAuthStr);
|
|
|
|
|
|
SQLRETURN SQL_API SQLDescribeColW(
|
|
SQLHSTMT hstmt,
|
|
SQLUSMALLINT icol,
|
|
SQLWCHAR *szColName,
|
|
SQLSMALLINT cbColNameMax,
|
|
SQLSMALLINT *pcbColName,
|
|
SQLSMALLINT *pfSqlType,
|
|
SQLULEN *pcbColDef,
|
|
SQLSMALLINT *pibScale,
|
|
SQLSMALLINT *pfNullable);
|
|
|
|
|
|
SQLRETURN SQL_API SQLErrorW(
|
|
SQLHENV henv,
|
|
SQLHDBC hdbc,
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szSqlState,
|
|
SQLINTEGER *pfNativeError,
|
|
SQLWCHAR *szErrorMsg,
|
|
SQLSMALLINT cbErrorMsgMax,
|
|
SQLSMALLINT *pcbErrorMsg);
|
|
|
|
SQLRETURN SQL_API SQLExecDirectW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szSqlStr,
|
|
SQLINTEGER cbSqlStr);
|
|
|
|
SQLRETURN SQL_API SQLGetConnectAttrW(
|
|
SQLHDBC hdbc,
|
|
SQLINTEGER fAttribute,
|
|
SQLPOINTER rgbValue,
|
|
SQLINTEGER cbValueMax,
|
|
SQLINTEGER *pcbValue);
|
|
|
|
SQLRETURN SQL_API SQLGetCursorNameW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szCursor,
|
|
SQLSMALLINT cbCursorMax,
|
|
SQLSMALLINT *pcbCursor);
|
|
|
|
SQLRETURN SQL_API SQLSetDescFieldW(SQLHDESC DescriptorHandle,
|
|
SQLSMALLINT RecNumber,
|
|
SQLSMALLINT FieldIdentifier,
|
|
SQLPOINTER Value,
|
|
SQLINTEGER BufferLength);
|
|
|
|
|
|
|
|
SQLRETURN SQL_API SQLGetDescFieldW(
|
|
SQLHDESC hdesc,
|
|
SQLSMALLINT iRecord,
|
|
SQLSMALLINT iField,
|
|
SQLPOINTER rgbValue,
|
|
SQLINTEGER cbValueMax,
|
|
SQLINTEGER *pcbValue);
|
|
|
|
SQLRETURN SQL_API SQLGetDescRecW(
|
|
SQLHDESC hdesc,
|
|
SQLSMALLINT iRecord,
|
|
SQLWCHAR *szName,
|
|
SQLSMALLINT cbNameMax,
|
|
SQLSMALLINT *pcbName,
|
|
SQLSMALLINT *pfType,
|
|
SQLSMALLINT *pfSubType,
|
|
SQLLEN *pLength,
|
|
SQLSMALLINT *pPrecision,
|
|
SQLSMALLINT *pScale,
|
|
SQLSMALLINT *pNullable);
|
|
|
|
SQLRETURN SQL_API SQLGetDiagFieldW(
|
|
SQLSMALLINT fHandleType,
|
|
SQLHANDLE handle,
|
|
SQLSMALLINT iRecord,
|
|
SQLSMALLINT fDiagField,
|
|
SQLPOINTER rgbDiagInfo,
|
|
SQLSMALLINT cbDiagInfoMax,
|
|
SQLSMALLINT *pcbDiagInfo);
|
|
|
|
SQLRETURN SQL_API SQLGetDiagRecW(
|
|
SQLSMALLINT fHandleType,
|
|
SQLHANDLE handle,
|
|
SQLSMALLINT iRecord,
|
|
SQLWCHAR *szSqlState,
|
|
SQLINTEGER *pfNativeError,
|
|
SQLWCHAR *szErrorMsg,
|
|
SQLSMALLINT cbErrorMsgMax,
|
|
SQLSMALLINT *pcbErrorMsg);
|
|
|
|
SQLRETURN SQL_API_FN SQLGetEnvAttrW(
|
|
SQLHENV hEnv,
|
|
SQLINTEGER fAttribute,
|
|
SQLPOINTER pParam,
|
|
SQLINTEGER cbParamMax,
|
|
SQLINTEGER * pcbParam );
|
|
|
|
SQLRETURN SQL_API SQLPrepareW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szSqlStr,
|
|
SQLINTEGER cbSqlStr);
|
|
|
|
SQLRETURN SQL_API_FN SQLExtendedPrepareW( SQLHSTMT hStmt,
|
|
SQLWCHAR * pszSqlStrIn,
|
|
SQLINTEGER cbSqlStr,
|
|
SQLINTEGER cPars,
|
|
SQLSMALLINT sStmtType,
|
|
SQLINTEGER cStmtAttrs,
|
|
SQLINTEGER * piStmtAttr,
|
|
SQLINTEGER * pvParams );
|
|
|
|
SQLRETURN SQL_API SQLSetConnectAttrW(
|
|
SQLHDBC hdbc,
|
|
SQLINTEGER fAttribute,
|
|
SQLPOINTER rgbValue,
|
|
SQLINTEGER cbValue);
|
|
|
|
SQLRETURN SQL_API SQLSetCursorNameW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szCursor,
|
|
SQLSMALLINT cbCursor);
|
|
|
|
SQLRETURN SQL_API_FN SQLSetEnvAttrW(
|
|
SQLHENV hEnv,
|
|
SQLINTEGER fAttribute,
|
|
SQLPOINTER pParam,
|
|
SQLINTEGER cbParam );
|
|
|
|
SQLRETURN SQL_API SQLColumnsW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLWCHAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLWCHAR *szTableName,
|
|
SQLSMALLINT cbTableName,
|
|
SQLWCHAR *szColumnName,
|
|
SQLSMALLINT cbColumnName);
|
|
|
|
SQLRETURN SQL_API SQLGetInfoW(
|
|
SQLHDBC hdbc,
|
|
SQLUSMALLINT fInfoType,
|
|
SQLPOINTER rgbInfoValue,
|
|
SQLSMALLINT cbInfoValueMax,
|
|
SQLSMALLINT *pcbInfoValue);
|
|
|
|
SQLRETURN SQL_API_FN SQLGetConnectOptionW(
|
|
SQLHDBC hDbc,
|
|
SQLUSMALLINT fOptionIn,
|
|
SQLPOINTER pvParam );
|
|
|
|
SQLRETURN SQL_API_FN SQLSetConnectOptionW(
|
|
SQLHDBC hDbc,
|
|
SQLUSMALLINT fOptionIn,
|
|
SQLULEN vParam );
|
|
|
|
SQLRETURN SQL_API_FN SQLGetTypeInfoW(
|
|
SQLHSTMT hstmt,
|
|
SQLSMALLINT fSqlType);
|
|
|
|
SQLRETURN SQL_API SQLSpecialColumnsW(
|
|
SQLHSTMT hstmt,
|
|
SQLUSMALLINT fColType,
|
|
SQLWCHAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLWCHAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLWCHAR *szTableName,
|
|
SQLSMALLINT cbTableName,
|
|
SQLUSMALLINT fScope,
|
|
SQLUSMALLINT fNullable);
|
|
|
|
SQLRETURN SQL_API SQLStatisticsW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLWCHAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLWCHAR *szTableName,
|
|
SQLSMALLINT cbTableName,
|
|
SQLUSMALLINT fUnique,
|
|
SQLUSMALLINT fAccuracy);
|
|
|
|
SQLRETURN SQL_API SQLTablesW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLWCHAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLWCHAR *szTableName,
|
|
SQLSMALLINT cbTableName,
|
|
SQLWCHAR *szTableType,
|
|
SQLSMALLINT cbTableType);
|
|
|
|
|
|
|
|
SQLRETURN SQL_API SQLDataSourcesW(
|
|
SQLHENV henv,
|
|
SQLUSMALLINT fDirection,
|
|
SQLWCHAR *szDSN,
|
|
SQLSMALLINT cbDSNMax,
|
|
SQLSMALLINT *pcbDSN,
|
|
SQLWCHAR *szDescription,
|
|
SQLSMALLINT cbDescriptionMax,
|
|
SQLSMALLINT *pcbDescription);
|
|
|
|
|
|
|
|
|
|
SQLRETURN SQL_API SQLDriverConnectW(
|
|
SQLHDBC hdbc,
|
|
SQLHWND hwnd,
|
|
SQLWCHAR *szConnStrIn,
|
|
SQLSMALLINT cbConnStrIn,
|
|
SQLWCHAR *szConnStrOut,
|
|
SQLSMALLINT cbConnStrOutMax,
|
|
SQLSMALLINT *pcbConnStrOut,
|
|
SQLUSMALLINT fDriverCompletion);
|
|
|
|
|
|
SQLRETURN SQL_API SQLBrowseConnectW(
|
|
SQLHDBC hdbc,
|
|
SQLWCHAR *szConnStrIn,
|
|
SQLSMALLINT cbConnStrIn,
|
|
SQLWCHAR *szConnStrOut,
|
|
SQLSMALLINT cbConnStrOutMax,
|
|
SQLSMALLINT *pcbConnStrOut);
|
|
|
|
SQLRETURN SQL_API SQLColumnPrivilegesW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLWCHAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLWCHAR *szTableName,
|
|
SQLSMALLINT cbTableName,
|
|
SQLWCHAR *szColumnName,
|
|
SQLSMALLINT cbColumnName);
|
|
|
|
SQLRETURN SQL_API SQLGetStmtAttrW(
|
|
SQLHSTMT hstmt,
|
|
SQLINTEGER fAttribute,
|
|
SQLPOINTER rgbValue,
|
|
SQLINTEGER cbValueMax,
|
|
SQLINTEGER *pcbValue);
|
|
|
|
SQLRETURN SQL_API SQLSetStmtAttrW(
|
|
SQLHSTMT hstmt,
|
|
SQLINTEGER fAttribute,
|
|
SQLPOINTER rgbValue,
|
|
SQLINTEGER cbValueMax);
|
|
|
|
SQLRETURN SQL_API SQLForeignKeysW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szPkCatalogName,
|
|
SQLSMALLINT cbPkCatalogName,
|
|
SQLWCHAR *szPkSchemaName,
|
|
SQLSMALLINT cbPkSchemaName,
|
|
SQLWCHAR *szPkTableName,
|
|
SQLSMALLINT cbPkTableName,
|
|
SQLWCHAR *szFkCatalogName,
|
|
SQLSMALLINT cbFkCatalogName,
|
|
SQLWCHAR *szFkSchemaName,
|
|
SQLSMALLINT cbFkSchemaName,
|
|
SQLWCHAR *szFkTableName,
|
|
SQLSMALLINT cbFkTableName);
|
|
|
|
|
|
SQLRETURN SQL_API SQLNativeSqlW(
|
|
SQLHDBC hdbc,
|
|
SQLWCHAR *szSqlStrIn,
|
|
SQLINTEGER cbSqlStrIn,
|
|
SQLWCHAR *szSqlStr,
|
|
SQLINTEGER cbSqlStrMax,
|
|
SQLINTEGER *pcbSqlStr);
|
|
|
|
|
|
SQLRETURN SQL_API SQLPrimaryKeysW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLWCHAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLWCHAR *szTableName,
|
|
SQLSMALLINT cbTableName);
|
|
|
|
SQLRETURN SQL_API SQLProcedureColumnsW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLWCHAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLWCHAR *szProcName,
|
|
SQLSMALLINT cbProcName,
|
|
SQLWCHAR *szColumnName,
|
|
SQLSMALLINT cbColumnName);
|
|
|
|
SQLRETURN SQL_API SQLProceduresW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLWCHAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLWCHAR *szProcName,
|
|
SQLSMALLINT cbProcName);
|
|
|
|
|
|
SQLRETURN SQL_API SQLTablePrivilegesW(
|
|
SQLHSTMT hstmt,
|
|
SQLWCHAR *szCatalogName,
|
|
SQLSMALLINT cbCatalogName,
|
|
SQLWCHAR *szSchemaName,
|
|
SQLSMALLINT cbSchemaName,
|
|
SQLWCHAR *szTableName,
|
|
SQLSMALLINT cbTableName);
|
|
|
|
SQLRETURN SQL_API SQLDriversW(
|
|
SQLHENV henv,
|
|
SQLUSMALLINT fDirection,
|
|
SQLWCHAR *szDriverDesc,
|
|
SQLSMALLINT cbDriverDescMax,
|
|
SQLSMALLINT *pcbDriverDesc,
|
|
SQLWCHAR *szDriverAttributes,
|
|
SQLSMALLINT cbDrvrAttrMax,
|
|
SQLSMALLINT *pcbDrvrAttr);
|
|
|
|
#endif /* __INFXSQL */
|