⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 isqlext.h

📁 关系型数据库 Postgresql 6.5.2
💻 H
📖 第 1 页 / 共 3 页
字号:
/* This file has been modified from the original isqlext.h to add the* missing function prototypes and appropriate #defines. It is designed* to be a drop in replacement for isqlext.h from iodbc.*/#ifndef	_INTRINSIC_SQLEXT_H# define _INTRINSIC_SQLEXT_H# include	<isql.h># define SQL_STILL_EXECUTING 		2# define SQL_NEED_DATA			99/* extend SQL datatypes */# define SQL_DATE			9# define SQL_TIME			10# define SQL_TIMESTAMP			11# 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)	/* conflict with SQL3 ??? */# define SQL_TYPE_DRIVER_START		(-80)/* C to SQL datatype mapping */# define SQL_C_DATE			SQL_DATE# define SQL_C_TIME			SQL_TIME# define SQL_C_TIMESTAMP 		SQL_TIMESTAMP# define SQL_C_BINARY			SQL_BINARY# define SQL_C_BIT			SQL_BIT# define SQL_C_TINYINT			SQL_TINYINT# define SQL_SIGNED_OFFSET		(-20)# define SQL_UNSIGNED_OFFSET		(-22)# 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)# define SQL_C_BOOKMARK			SQL_C_ULONG 			# if defined(SQL_TYPE_MIN)#   undef  SQL_TYPE_MIN  #   define SQL_TYPE_MIN			SQL_BIT	/* Note:If SQL_BIT uses SQL3 value (i.e. 14) then,  *	SQL_TYPE_MIN need to be defined as SQL_TINYINT  *	(i.e. -6). */# endif# define SQL_ALL_TYPES			0/* SQLDriverConnect flag values */# define SQL_DRIVER_NOPROMPT		0# define SQL_DRIVER_COMPLETE		1# define SQL_DRIVER_PROMPT		2# define SQL_DRIVER_COMPLETE_REQUIRED	3/* SQLSetParam extensions */# define SQL_DEFAULT_PARAM		(-5)# define SQL_IGNORE			(-6)/* function number for SQLGetFunctions and _iodbcdm_getproc */# define SQL_API_SQLALLOCCONNECT	1   # 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_NUM_FUNCTIONS		23# define SQL_EXT_API_START		40# define SQL_API_SQLCOLUMNS		40# 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# 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# define SQL_API_SQLBINDPARAMETER	72# define SQL_EXT_API_LAST		SQL_API_SQLBINDPARAMETER#define SQL_NUM_EXTENSIONS	(SQL_EXT_API_LAST - SQL_EXT_API_START + 1)# define SQL_API_ALL_FUNCTIONS		0/* SQLGetInfo infor number */# define SQL_INFO_FIRST			0# define SQL_DRIVER_HDBC		3# define SQL_DRIVER_HENV		4# define SQL_DRIVER_HSTMT		5# define SQL_DRIVER_NAME		6# define SQL_ODBC_VER			10# define SQL_CURSOR_COMMIT_BEHAVIOR	23# define SQL_CURSOR_ROLLBACK_BEHAVIOR	24# define SQL_DEFAULT_TXN_ISOLATION	26# define SQL_TXN_ISOLATION_OPTION	72# define SQL_NON_NULLABLE_COLUMNS	75# define SQL_DRIVER_HLIB		76# define SQL_DRIVER_ODBC_VER		77# define SQL_QUALIFIER_LOCATION		114# define SQL_INFO_LAST			SQL_QUALIFIER_LOCATION# define SQL_INFO_DRIVER_START		1000/* 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/* 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/* options for SQLGetStmtOption/SQLSetStmtOption */# define SQL_QUERY_TIMEOUT		0# define SQL_MAX_ROWS			1# define SQL_NOSCAN			2# define SQL_MAX_LENGTH			3# define SQL_ASYNC_ENABLE		4# define SQL_BIND_TYPE			5# define SQL_CURSOR_TYPE 		6# define SQL_CONCURRENCY 		7# define SQL_KEYSET_SIZE 		8# define SQL_ROWSET_SIZE 		9# define SQL_SIMULATE_CURSOR 		10# define SQL_RETRIEVE_DATA		11# define SQL_USE_BOOKMARKS		12# define SQL_GET_BOOKMARK		13	/* GetStmtOption Only */# define SQL_ROW_NUMBER			14	/* GetStmtOption Only */# define SQL_STMT_OPT_MAX		SQL_ROW_NUMBER# define SQL_STMT_OPT_MIN		SQL_QUERY_TIMEOUT/* * ODBC 3.0 renames the above to SQL_ATTR_ values. At this time I don't * know if they have also been renumbered or not, I will assume not. */# define SQL_ATTR_QUERY_TIMEOUT		0# define SQL_ATTR_MAX_ROWS		1# define SQL_ATTR_NOSCAN		2# define SQL_ATTR_MAX_LENGTH		3# define SQL_ATTR_ASYNC_ENABLE		4# define SQL_ATTR_BIND_TYPE		5# define SQL_ATTR_CURSOR_TYPE 		6# define SQL_ATTR_CONCURRENCY 		7# define SQL_ATTR_KEYSET_SIZE 		8# define SQL_ATTR_ROWSET_SIZE 		9# define SQL_ATTR_SIMULATE_CURSOR 	10# define SQL_ATTR_RETRIEVE_DATA		11# define SQL_ATTR_USE_BOOKMARKS		12# define SQL_ATTR_GET_BOOKMARK		13	/* GetStmtOption Only */# define SQL_ATTR_ROW_NUMBER		14	/* GetStmtOption Only *//* New in ODBC 3.0	*/#define SQL_ATTR_APP_PARAM_DESC		15#define SQL_ATTR_APP_ROW_DESC		16#define SQL_ATTR_CURSOR_SCROLLABLE	17#define SQL_ATTR_CURSOR_SENSITITY	18#define SQL_ATTR_ENABLE_AUTO_IPD	19#define SQL_ATTR_FETCH_BOOKMARK_PTR	20#define SQL_ATTR_IMP_PARAM_DESC		21#define SQL_ATTR_IMP_ROW_DESC		22#define SQL_ATTR_METADATA_ID		23#define SQL_ATTR_PARAM_BIND_OFFSET_PTR	24#define SQL_ATTR_PARAM_BIND_TYPE	25#define SQL_ATTR_PARAM_OPERATION_PTR	26#define SQL_ATTR_PARAM_STATUS_PTR	27#define SQL_ATTR_PARAMS_PROCESSED_PTR	28#define SQL_ATTR_PARAMSET_SIZE		29#define SQL_ATTR_ROW_ARRAY_SIZE		30#define SQL_ATTR_ROW_BIND_OFFSET_PTR	31#define SQL_ATTR_ROW_OPERATION_PTR	32#define SQL_ATTR_ROW_STATUS_PTR		33#define SQL_ATTR_ROWS_FETCHED_PTR	34#define SQL_STMT_ATTR_MIN		SQL_ATTR_QUERY_TIMEOUT#define SQL_STMT_ATTR_MAX		SQL_ATTR_ROWS_FETCHED_PTR/* SQL_QUERY_TIMEOUT options */# define SQL_QUERY_TIMEOUT_DEFAULT	0UL/* SQL_MAX_ROWS options */# define SQL_MAX_ROWS_DEFAULT		0UL/* SQL_MAX_LENGTH options */# define SQL_MAX_LENGTH_DEFAULT		0UL/* SQL_CONCURRENCY options */# define SQL_CONCUR_READ_ONLY		1# define SQL_CONCUR_LOCK 		2# define SQL_CONCUR_ROWVER		3# define SQL_CONCUR_VALUES		4/* options for SQLSetConnectOption/SQLGetConnectOption */# define SQL_ACCESS_MODE 		101# define SQL_AUTOCOMMIT			102# define SQL_LOGIN_TIMEOUT		103# define SQL_OPT_TRACE			104# define SQL_OPT_TRACEFILE		105# define SQL_TRANSLATE_DLL		106# define SQL_TRANSLATE_OPTION		107# define SQL_TXN_ISOLATION		108# define SQL_CURRENT_QUALIFIER		109# define SQL_ODBC_CURSORS		110# define SQL_QUIET_MODE			111# define SQL_PACKET_SIZE 		112# define SQL_CONN_OPT_MAX		SQL_PACKET_SIZE# define SQL_CONNECT_OPT_DRVR_START	1000# define SQL_CONN_OPT_MIN		SQL_ACCESS_MODE/* SQL_ACCESS_MODE options */# define SQL_MODE_READ_WRITE 		0UL# define SQL_MODE_READ_ONLY		1UL# define SQL_MODE_DEFAULT		SQL_MODE_READ_WRITE/* SQL_AUTOCOMMIT options */# define SQL_AUTOCOMMIT_OFF		0UL# define SQL_AUTOCOMMIT_ON		1UL# define SQL_AUTOCOMMIT_DEFAULT		SQL_AUTOCOMMIT_ON/* SQL_LOGIN_TIMEOUT options */# define SQL_LOGIN_TIMEOUT_DEFAULT	15UL/* SQL_OPT_TRACE options */# define SQL_OPT_TRACE_OFF		0UL# define SQL_OPT_TRACE_ON		1UL# define SQL_OPT_TRACE_DEFAULT		SQL_OPT_TRACE_OFF# define SQL_OPT_TRACE_FILE_DEFAULT	"odbc.log"/* SQL_ODBC_CURSORS options */# define SQL_CUR_USE_IF_NEEDED		0UL# define SQL_CUR_USE_ODBC		1UL# define SQL_CUR_USE_DRIVER		2UL# define SQL_CUR_DEFAULT 		SQL_CUR_USE_DRIVER/* Column types and scopes in SQLSpecialColumns. */# define SQL_BEST_ROWID			1# define SQL_ROWVER			2# define SQL_SCOPE_CURROW		0# define SQL_SCOPE_TRANSACTION		1# define SQL_SCOPE_SESSION		2/* SQLExtendedFetch flag values */# define SQL_FETCH_NEXT			1# define SQL_FETCH_FIRST 		2# define SQL_FETCH_LAST			3# define SQL_FETCH_PRIOR		4# define SQL_FETCH_ABSOLUTE		5# define SQL_FETCH_RELATIVE		6# define SQL_FETCH_BOOKMARK		8/* Defines for SQLBindParameter/SQLProcedureColumns */#define SQL_PARAM_TYPE_UNKNOWN		0#define SQL_PARAM_INPUT			1#define SQL_PARAM_INPUT_OUTPUT		2#define SQL_RESULT_COL			3#define SQL_PARAM_OUTPUT		4#define SQL_RETURN_VALUE		5/* Defines used by Driver Manager for mapping SQLSetParam to SQLBindParameter */# define SQL_PARAM_TYPE_DEFAULT		SQL_PARAM_INPUT_OUTPUT# define SQL_SETPARAM_VALUE_MAX		(-1L)/* SQLStatistics flag values */# define SQL_INDEX_UNIQUE		0# define SQL_INDEX_ALL			1# define SQL_QUICK			0# define SQL_ENSURE			1/* SQLSetScrollOption flag values */# define SQL_SCROLL_FORWARD_ONLY	0L# define SQL_SCROLL_KEYSET_DRIVEN	(-1L)# define SQL_SCROLL_DYNAMIC		(-2L)# define SQL_SCROLL_STATIC		(-3L) /* Everything below has been added to the original isqlext.h that comes * with iodbc.*/#define SCHAR	signed char#define FLOAT	float#define DOUBLE	double/* SQL DATA TYPES */typedef	UCHAR	SQLCHAR;typedef SWORD	SQLSMALLINT;typedef UWORD	SQLUSMALLINT;typedef SDWORD	SQLINTEGER;typedef UDWORD	SQLUINTEGER;typedef FLOAT	SQLREAL;typedef DOUBLE	SQLDOUBLE;typedef DOUBLE	SQLFLOAT;typedef SCHAR	SQLSCHAR;typedef UDWORD	BOOKMARK;#ifdef GCC	/* Because I know GCC supports 64 bit ints */typedef long long int ODBCINT64;typedef unsigned ODBCINT64	SQLUBIGINT;typedef ODBCINT64		SQLBIGINT;#else		/* Used even on platforms with 64 bit ints but not GCC */typedef struct {	SQLUINTEGER dwLowWord;	SQLUINTEGER dwHighWord;} SQLUBIGINT;typedef struct {	SQLUINTEGER dwLowWord;	SQLINTEGER  dwHighWord;} SQLBIGINT;#endif /* GCC */typedef struct tagDATE_STRUCT {	SQLSMALLINT	year;	SQLUSMALLINT	month;	SQLUSMALLINT	day;} DATE_STRUCT,SQL_DATE_STRUCT;typedef struct tagTIME_STRUCT {	SQLUSMALLINT	hour;	SQLUSMALLINT	minute;	SQLUSMALLINT	second;} TIME_STRUCT,SQL_TIME_STRUCT;typedef struct tagTIMESTAMP_STRUCT {	SQLSMALLINT	year;	SQLUSMALLINT	month;	SQLUSMALLINT	day;	SQLUSMALLINT	hour;	SQLUSMALLINT	minute;	SQLUSMALLINT	second;	SQLUINTEGER	fraction;} TIMESTAMP_STRUCT,SQL_TIMESTAMP_STRUCT;/* postodbc doesn't use these but what the heck *//* Don't know what SQL_MAX_NUMERIC_LEN should be so I can't include this. It's * ODBC 3.0 anyway.typedef struct tagSQL_NUMERIC_STRUCT {	SQLCHAR		precision;	SQLSCHAR	scale;	SQLCHAR		sign;	SQLCHAR		val[SQL_MAX_NUMERIC_LEN];} SQL_NUMERIC_STRUCT;*/typedef struct tagSQLGUID {	DWORD	Data1;	WORD	Data2;	WORD	Data3;	BYTE	Data4[8];} SQLGUID;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;#define SQL_MAX_OPTION_STRING_LENGTH	256#define SQL_NUM_EXTENSIONS	(SQL_EXT_API_LAST - SQL_EXT_API_START + 1)/* defines for SQL datatypes *//*#define SQL_TYPE_DATE#define SQL_TYPE_TIME#define SQL_TYPE_TIMESTAMP#define SQL_CODE_DATE#define SQL_CODE_TIME#define SQL_CODE_TIMESTAMP#define SQL_CODE_MONTH#define SQL_CODE_YEAR#define SQL_CODE_YEAR_TO_MONTH#define SQL_CODE_DAY#define SQL_CODE_HOUR#define SQL_CODE_MINUTE#define SQL_CODE_SECOND#define SQL_CODE_DAY_TO_HOUR#define SQL_CODE_DAY_TO_MINUTE#define SQL_CODE_DAY_TO_SECOND#define SQL_CODE_HOUR_TO_MINUTE#define SQL_CODE_HOUR_TO_SECOND#define SQL_CODE_MINUTE_TO_SECOND*/#define SQL_INTERVAL_YEAR		(-80)#define SQL_INTERVAL_MONTH		(-81)#define SQL_INTERVAL_YEAR_TO_MONTH	(-82)#define SQL_INTERVAL_DAY		(-83)#define SQL_INTERVAL_HOUR		(-84)#define SQL_INTERVAL_MINUTE		(-85)#define SQL_INTERVAL_SECOND		(-86)#define SQL_INTERVAL_DAY_TO_HOUR	(-87)#define SQL_INTERVAL_DAY_TO_MINUTE	(-88)#define SQL_INTERVAL_DAY_TO_SECOND	(-89)#define SQL_INTERVAL_HOUR_TO_MINUTE	(-90)#define SQL_INTERVAL_HOUR_TO_SECOND	(-91)#define SQL_INTERVAL_MINUTE_TO_SECOND	(-92)#define SQL_UNICODE			(-95)#define SQL_UNICODE_VARCHAR		(-96)#define SQL_UNICODE_LONGVARCHAR		(-97)#define SQL_UNICODE_CHAR		SQL_UNICODE/* C to SQL data types *//*#define SQL_C_TYPE_DATE		SQL_TYPE_DATE#define SQL_C_TYPE_TIME		SQL_TYPE_TIME#define SQL_C_TYPE_TIMESTAMP	SQL_TYPE_TIMESTAMP#define SQL_C_GUID		SQLGUID*/#define SQL_C_INTERVAL_MONTH		SQL_INTERVAL_MONTH#define SQL_C_INTERVAL_YEAR		SQL_INTERVAL_YEAR#define SQL_C_INTERVAL_YEAR_TO_MONTH	SQL_INTERVAL_YEAR_TO_MONTH#define SQL_C_INTERVAL_DAY		SQL_INTERVAL_DAY#define SQL_C_INTERVAL_HOUR		SQL_INTERVAL_HOUR

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -