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

📄 sqltypes.h

📁 通用的数据库中间库
💻 H
字号:
/* *  sqltypes.h * *  $Id: sqltypes.h,v 1.5 2001/06/11 12:34:06 source Exp $ * *  ODBC typedefs * *  The iODBC driver manager. *   *  Copyright (C) 1995 by Ke Jin <kejin@empress.com>  * *  This library is free software; you can redistribute it and/or *  modify it under the terms of the GNU Library General Public *  License as published by the Free Software Foundation; either *  version 2 of the License, or (at your option) any later version. * *  This library is distributed in the hope that it will be useful, *  but WITHOUT ANY WARRANTY; without even the implied warranty of *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU *  Library General Public License for more details. * *  You should have received a copy of the GNU Library General Public *  License along with this library; if not, write to the Free *  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */#ifndef _SQLTYPES_H#define _SQLTYPES_H/*  *  Set default specification to  ODBC 3.50  */#ifndef ODBCVER#define ODBCVER	0x0350#endif#ifdef __cplusplusextern "C" {#endif/* *  Environment specific definitions */#ifndef NEAR#define NEAR#endif#ifndef FAR#define FAR#endif#ifndef EXPORT#define EXPORT#endif#ifdef WIN32#define SQL_API	__stdcall#else#define SQL_API#endif/* *  Boolean support */#ifndef TRUE#define TRUE	1#endif#ifndef FALSE#define FALSE	0#endif#if !defined(__MWERKS__) && \    !defined(bool) && \    !defined(__cplusplus) && \    !defined(__APPLE__)enum bool { false, true };#endif/* * Windows style typedefs for UNIX machines */#ifndef WIN32typedef unsigned char BYTE;typedef unsigned short WORD;typedef unsigned long DWORD;typedef DWORD * LPDWORD;typedef char * LPSTR;typedef const char * LPCSTR;typedef	WORD WPARAM;typedef	DWORD LPARAM;#ifndef BOOLtypedef int BOOL;#endif#endif/*  *  SQL portable types for C  */typedef unsigned char           UCHAR;typedef signed char             SCHAR;typedef unsigned short          USHORT;typedef signed short            SSHORT;typedef unsigned long 		UDWORD;typedef signed long 		SDWORD;typedef unsigned short 		UWORD;typedef signed short 		SWORD;typedef unsigned long           ULONG;typedef signed long             SLONG;typedef float                   SFLOAT;typedef double                  SDOUBLE;typedef double            	LDOUBLE; /* *  API declaration data types */typedef unsigned char		SQLCHAR;typedef signed short		SQLSMALLINT;typedef unsigned short		SQLUSMALLINT;typedef signed long		SQLINTEGER;typedef unsigned long		SQLUINTEGER;#if (ODBCVER >= 0x0300)typedef signed char		SQLSCHAR;typedef unsigned char		SQLDATE;typedef unsigned char		SQLDECIMAL;typedef unsigned char		SQLNUMERIC;typedef double			SQLDOUBLE;typedef double			SQLFLOAT;typedef float			SQLREAL;typedef unsigned char		SQLTIME;typedef unsigned char		SQLTIMESTAMP;typedef unsigned char		SQLVARCHAR;#endif	/* ODBCVER >= 0x0300 *//* *  Generic pointer types */typedef void FAR *              PTR;typedef void FAR *              SQLPOINTER;typedef void FAR *		SQLHANDLE;/* typedef SQLINTEGER		SQLHANDLE; *//* *  Handles */typedef void FAR *		HENV;typedef void FAR *		HDBC;typedef void FAR *		HSTMT;typedef SQLHANDLE		SQLHENV;typedef SQLHANDLE		SQLHDBC;typedef SQLHANDLE		SQLHSTMT;#if (ODBCVER >= 0x0300)typedef SQLHANDLE		SQLHDESC;#endif	/* ODBCVER >= 0x0300 *//* *  Window Handle */#if defined(WIN32) || defined(OS2)typedef HWND			SQLHWND;#elif defined(macintosh)typedef WindowPtr		HWND;typedef HWND	 		SQLHWND;#elsetypedef SQLPOINTER		HWND;typedef SQLPOINTER		SQLHWND;#endif/* *  Return type for functions */typedef SQLSMALLINT           	RETCODE;typedef SQLSMALLINT            	SQLRETURN;/* *  SQL portable types for C - DATA, TIME, TIMESTAMP, and BOOKMARK */typedef unsigned long int BOOKMARK;typedef struct tagDATE_STRUCT  {    SQLSMALLINT year;    SQLUSMALLINT month;    SQLUSMALLINT day;  }DATE_STRUCT;#if (ODBCVER >= 0x0300)typedef DATE_STRUCT	SQL_DATE_STRUCT;#endif	/* ODBCVER >= 0x0300 */typedef struct tagTIME_STRUCT  {    SQLUSMALLINT hour;    SQLUSMALLINT minute;    SQLUSMALLINT second;  }TIME_STRUCT;#if (ODBCVER >= 0x0300)typedef TIME_STRUCT	SQL_TIME_STRUCT;#endif	/* ODBCVER >= 0x0300 */typedef struct tagTIMESTAMP_STRUCT  {    SQLSMALLINT year;    SQLUSMALLINT month;    SQLUSMALLINT day;    SQLUSMALLINT hour;    SQLUSMALLINT minute;    SQLUSMALLINT second;    SQLUINTEGER fraction;  }TIMESTAMP_STRUCT;#if (ODBCVER >= 0x0300)typedef TIMESTAMP_STRUCT	SQL_TIMESTAMP_STRUCT;#endif	/* ODBCVER >= 0x0300 *//* *  Enumeration for DATETIME_INTERVAL_SUBCODE values for interval data types *   *  These values are from SQL-92 */#if (ODBCVER >= 0x0300)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;#endif	/* ODBCVER >= 0x0300 *//*  *  The ODBC C types for SQL_C_SBIGINT and SQL_C_UBIGINT  */#if (ODBCVER >= 0x0300)#if (_MSC_VER >= 900)#  define ODBCINT64 	__int64#else#  define ODBCINT64	long long#endif#if defined (ODBCINT64)typedef signed   ODBCINT64	SQLBIGINT;typedef unsigned ODBCINT64	SQLUBIGINT;#endif#endif	/* ODBCVER >= 0x0300 *//* *  The internal representation of the numeric data type */#if (ODBCVER >= 0x0300)#define SQL_MAX_NUMERIC_LEN	16typedef struct tagSQL_NUMERIC_STRUCT  {    SQLCHAR precision;    SQLSCHAR scale;    SQLCHAR sign;		/* 0 for negative, 1 for positive */    SQLCHAR val[SQL_MAX_NUMERIC_LEN];  }SQL_NUMERIC_STRUCT;#endif	/* ODBCVER >= 0x0300 */#if (ODBCVER >= 0x0350)#ifdef GUID_DEFINEDtypedef GUID SQLGUID;#elsetypedef struct tagSQLGUID  {    DWORD Data1;    WORD Data2;    WORD Data3;    BYTE Data4[8];	/* BYTE */  }SQLGUID;#endif	/* GUID_DEFINED */#endif	/* ODBCVER >= 0x0350 */#ifdef __cplusplus}#endif#endif	/* _SQLTYPES_H */

⌨️ 快捷键说明

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