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

📄 odbcapi.h

📁 通用的数据库中间库
💻 H
📖 第 1 页 / 共 2 页
字号:
// odbcAPI.h
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_ODBCAPI_H__11EAA72A_EFF5_4944_8B1F_44973D30EF73__INCLUDED_)
#define AFX_ODBCAPI_H__11EAA72A_EFF5_4944_8B1F_44973D30EF73__INCLUDED_

#include "SQLAPI.h"

// API header(s)
#ifdef LINUX
	#include "./odbc_linux/sql.h"
	#include "./odbc_linux/sqlext.h"
#endif
#ifdef WIN32
	#include "./odbc_win32/sql.h"
	#include "./odbc_win32/sqlext.h"
#endif

extern long g_nODBCDLLVersionLoaded;

extern void AddODBCSupport(const SAConnection *pCon);
extern void ReleaseODBCSupport();

typedef SQLRETURN  (SQL_API *SQLAllocConnect_t)(SQLHENV EnvironmentHandle,
           SQLHDBC *ConnectionHandle);
typedef SQLRETURN  (SQL_API *SQLAllocEnv_t)(SQLHENV *EnvironmentHandle);
typedef SQLRETURN  (SQL_API *SQLAllocHandle_t)(SQLSMALLINT HandleType,
           SQLHANDLE InputHandle, SQLHANDLE *OutputHandle);
typedef SQLRETURN  (SQL_API *SQLAllocStmt_t)(SQLHDBC ConnectionHandle,
           SQLHSTMT *StatementHandle);
typedef SQLRETURN  (SQL_API *SQLBindCol_t)(SQLHSTMT StatementHandle, 
		   SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, 
		   SQLPOINTER TargetValue, SQLINTEGER BufferLength, 
	   	   SQLINTEGER *StrLen_or_Ind);
typedef SQLRETURN (SQL_API *SQLBindParameter_t)(
    SQLHSTMT           hstmt,
    SQLUSMALLINT       ipar,
    SQLSMALLINT        fParamType,
    SQLSMALLINT        fCType,
    SQLSMALLINT        fSqlType,
    SQLUINTEGER        cbColDef,
    SQLSMALLINT        ibScale,
    SQLPOINTER         rgbValue,
    SQLINTEGER         cbValueMax,
    SQLINTEGER 		  *pcbValue);
typedef SQLRETURN (SQL_API *SQLBrowseConnect_t)(
    SQLHDBC            hdbc,
    SQLCHAR 		  *szConnStrIn,
    SQLSMALLINT        cbConnStrIn,
    SQLCHAR 		  *szConnStrOut,
    SQLSMALLINT        cbConnStrOutMax,
    SQLSMALLINT       *pcbConnStrOut);
typedef SQLRETURN	(SQL_API	*SQLBulkOperations_t)(
	SQLHSTMT			StatementHandle,
	SQLSMALLINT			Operation);
typedef SQLRETURN  (SQL_API *SQLCancel_t)(SQLHSTMT StatementHandle);
typedef SQLRETURN  (SQL_API *SQLCloseCursor_t)(SQLHSTMT StatementHandle);
typedef SQLRETURN  (SQL_API *SQLColAttribute_t)(SQLHSTMT StatementHandle,
           SQLUSMALLINT ColumnNumber, SQLUSMALLINT FieldIdentifier,
           SQLPOINTER CharacterAttribute, SQLSMALLINT BufferLength,
           SQLSMALLINT *StringLength, SQLPOINTER NumericAttribute);
typedef SQLRETURN (SQL_API *SQLColAttributes_t)(
    SQLHSTMT           hstmt,
    SQLUSMALLINT       icol,
    SQLUSMALLINT       fDescType,
    SQLPOINTER         rgbDesc,
    SQLSMALLINT        cbDescMax,
    SQLSMALLINT 	  *pcbDesc,
    SQLINTEGER 		  *pfDesc);
typedef SQLRETURN (SQL_API *SQLColumnPrivileges_t)(
    SQLHSTMT           hstmt,
    SQLCHAR 		  *szCatalogName,
    SQLSMALLINT        cbCatalogName,
    SQLCHAR 		  *szSchemaName,
    SQLSMALLINT        cbSchemaName,
    SQLCHAR 		  *szTableName,
    SQLSMALLINT        cbTableName,
    SQLCHAR 		  *szColumnName,
    SQLSMALLINT        cbColumnName);
typedef SQLRETURN  (SQL_API *SQLColumns_t)(SQLHSTMT StatementHandle,
           SQLCHAR *CatalogName, SQLSMALLINT NameLength1,
           SQLCHAR *SchemaName, SQLSMALLINT NameLength2,
           SQLCHAR *TableName, SQLSMALLINT NameLength3,
           SQLCHAR *ColumnName, SQLSMALLINT NameLength4);
typedef SQLRETURN  (SQL_API *SQLConnect_t)(SQLHDBC ConnectionHandle,
           SQLCHAR *ServerName, SQLSMALLINT NameLength1,
           SQLCHAR *UserName, SQLSMALLINT NameLength2,
           SQLCHAR *Authentication, SQLSMALLINT NameLength3);
typedef SQLRETURN  (SQL_API *SQLCopyDesc_t)(SQLHDESC SourceDescHandle,
           SQLHDESC TargetDescHandle);
typedef SQLRETURN  (SQL_API *SQLDataSources_t)(SQLHENV EnvironmentHandle,
           SQLUSMALLINT Direction, SQLCHAR *ServerName,
           SQLSMALLINT BufferLength1, SQLSMALLINT *NameLength1,
           SQLCHAR *Description, SQLSMALLINT BufferLength2,
           SQLSMALLINT *NameLength2);
typedef SQLRETURN  (SQL_API *SQLDescribeCol_t)(SQLHSTMT StatementHandle,
           SQLUSMALLINT ColumnNumber, SQLCHAR *ColumnName,
           SQLSMALLINT BufferLength, SQLSMALLINT *NameLength,
           SQLSMALLINT *DataType, SQLUINTEGER *ColumnSize,
           SQLSMALLINT *DecimalDigits, SQLSMALLINT *Nullable);
typedef SQLRETURN (SQL_API *SQLDescribeParam_t)(
    SQLHSTMT           hstmt,
    SQLUSMALLINT       ipar,
    SQLSMALLINT 	  *pfSqlType,
    SQLUINTEGER 	  *pcbParamDef,
    SQLSMALLINT 	  *pibScale,
    SQLSMALLINT 	  *pfNullable);
typedef SQLRETURN  (SQL_API *SQLDisconnect_t)(SQLHDBC ConnectionHandle);
typedef SQLRETURN (SQL_API *SQLDriverConnect_t)(
    SQLHDBC            hdbc,
    SQLHWND            hwnd,
    SQLCHAR 		  *szConnStrIn,
    SQLSMALLINT        cbConnStrIn,
    SQLCHAR           *szConnStrOut,
    SQLSMALLINT        cbConnStrOutMax,
    SQLSMALLINT 	  *pcbConnStrOut,
    SQLUSMALLINT       fDriverCompletion);
typedef SQLRETURN (SQL_API *SQLDrivers_t)(
    SQLHENV            henv,
    SQLUSMALLINT       fDirection,
    SQLCHAR 		  *szDriverDesc,
    SQLSMALLINT        cbDriverDescMax,
    SQLSMALLINT 	  *pcbDriverDesc,
    SQLCHAR 		  *szDriverAttributes,
    SQLSMALLINT        cbDrvrAttrMax,
    SQLSMALLINT 	  *pcbDrvrAttr);
typedef SQLRETURN  (SQL_API *SQLEndTran_t)(SQLSMALLINT HandleType, SQLHANDLE Handle,
           SQLSMALLINT CompletionType);
typedef SQLRETURN  (SQL_API *SQLError_t)(SQLHENV EnvironmentHandle,
           SQLHDBC ConnectionHandle, SQLHSTMT StatementHandle,
           SQLCHAR *Sqlstate, SQLINTEGER *NativeError,
           SQLCHAR *MessageText, SQLSMALLINT BufferLength,
           SQLSMALLINT *TextLength);
typedef SQLRETURN  (SQL_API *SQLExecDirect_t)(SQLHSTMT StatementHandle,
           SQLCHAR *StatementText, SQLINTEGER TextLength);
typedef SQLRETURN  (SQL_API *SQLExecute_t)(SQLHSTMT StatementHandle);
typedef SQLRETURN (SQL_API *SQLExtendedFetch_t)(
    SQLHSTMT           hstmt,
    SQLUSMALLINT       fFetchType,
    SQLINTEGER         irow,
    SQLUINTEGER 	  *pcrow,
    SQLUSMALLINT 	  *rgfRowStatus);
typedef SQLRETURN  (SQL_API *SQLFetch_t)(SQLHSTMT StatementHandle);
typedef SQLRETURN  (SQL_API *SQLFetchScroll_t)(SQLHSTMT StatementHandle,
           SQLSMALLINT FetchOrientation, SQLINTEGER FetchOffset);
typedef SQLRETURN (SQL_API *SQLForeignKeys_t)(
    SQLHSTMT           hstmt,
    SQLCHAR 		  *szPkCatalogName,
    SQLSMALLINT        cbPkCatalogName,
    SQLCHAR 		  *szPkSchemaName,
    SQLSMALLINT        cbPkSchemaName,
    SQLCHAR 		  *szPkTableName,
    SQLSMALLINT        cbPkTableName,
    SQLCHAR 		  *szFkCatalogName,
    SQLSMALLINT        cbFkCatalogName,
    SQLCHAR 		  *szFkSchemaName,
    SQLSMALLINT        cbFkSchemaName,
    SQLCHAR 		  *szFkTableName,
    SQLSMALLINT        cbFkTableName);
typedef SQLRETURN  (SQL_API *SQLFreeConnect_t)(SQLHDBC ConnectionHandle);
typedef SQLRETURN  (SQL_API *SQLFreeEnv_t)(SQLHENV EnvironmentHandle);
typedef SQLRETURN  (SQL_API *SQLFreeHandle_t)(SQLSMALLINT HandleType, SQLHANDLE Handle);
typedef SQLRETURN  (SQL_API *SQLFreeStmt_t)(SQLHSTMT StatementHandle,
           SQLUSMALLINT Option);
typedef SQLRETURN  (SQL_API *SQLGetConnectAttr_t)(SQLHDBC ConnectionHandle,
           SQLINTEGER Attribute, SQLPOINTER Value,
           SQLINTEGER BufferLength, SQLINTEGER *StringLength);
typedef SQLRETURN  (SQL_API *SQLGetConnectOption_t)(SQLHDBC ConnectionHandle,
           SQLUSMALLINT Option, SQLPOINTER Value);
typedef SQLRETURN  (SQL_API *SQLGetCursorName_t)(SQLHSTMT StatementHandle,
           SQLCHAR *CursorName, SQLSMALLINT BufferLength,
           SQLSMALLINT *NameLength);
typedef SQLRETURN  (SQL_API *SQLGetData_t)(SQLHSTMT StatementHandle,
           SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType,
           SQLPOINTER TargetValue, SQLINTEGER BufferLength,
           SQLINTEGER *StrLen_or_Ind);
typedef SQLRETURN  (SQL_API *SQLGetDescField_t)(SQLHDESC DescriptorHandle,
           SQLSMALLINT RecNumber, SQLSMALLINT FieldIdentifier,
           SQLPOINTER Value, SQLINTEGER BufferLength,
           SQLINTEGER *StringLength);
typedef SQLRETURN  (SQL_API *SQLGetDescRec_t)(SQLHDESC DescriptorHandle,
           SQLSMALLINT RecNumber, SQLCHAR *Name,
           SQLSMALLINT BufferLength, SQLSMALLINT *StringLength,
           SQLSMALLINT *Type, SQLSMALLINT *SubType, 
           SQLINTEGER *Length, SQLSMALLINT *Precision, 
           SQLSMALLINT *Scale, SQLSMALLINT *Nullable);
typedef SQLRETURN  (SQL_API *SQLGetDiagRec_t)(SQLSMALLINT HandleType, SQLHANDLE Handle,
           SQLSMALLINT RecNumber, SQLCHAR *Sqlstate,
           SQLINTEGER *NativeError, SQLCHAR *MessageText,
           SQLSMALLINT BufferLength, SQLSMALLINT *TextLength);
typedef SQLRETURN  (SQL_API *SQLGetDiagField_t)(SQLSMALLINT HandleType, SQLHANDLE Handle,
           SQLSMALLINT RecNumber, SQLSMALLINT DiagIdentifier,
           SQLPOINTER DiagInfo, SQLSMALLINT BufferLength,
           SQLSMALLINT *StringLength);
typedef SQLRETURN  (SQL_API *SQLGetEnvAttr_t)(SQLHENV EnvironmentHandle,
           SQLINTEGER Attribute, SQLPOINTER Value,
           SQLINTEGER BufferLength, SQLINTEGER *StringLength);
typedef SQLRETURN  (SQL_API *SQLGetFunctions_t)(SQLHDBC ConnectionHandle,
           SQLUSMALLINT FunctionId, SQLUSMALLINT *Supported);
typedef SQLRETURN  (SQL_API *SQLGetInfo_t)(SQLHDBC ConnectionHandle,
           SQLUSMALLINT InfoType, SQLPOINTER InfoValue,
           SQLSMALLINT BufferLength, SQLSMALLINT *StringLength);
typedef SQLRETURN  (SQL_API *SQLGetStmtAttr_t)(SQLHSTMT StatementHandle,
           SQLINTEGER Attribute, SQLPOINTER Value,
           SQLINTEGER BufferLength, SQLINTEGER *StringLength);
typedef SQLRETURN  (SQL_API *SQLGetStmtOption_t)(SQLHSTMT StatementHandle,
           SQLUSMALLINT Option, SQLPOINTER Value);
typedef SQLRETURN  (SQL_API *SQLGetTypeInfo_t)(SQLHSTMT StatementHandle,
           SQLSMALLINT DataType);
typedef SQLRETURN (SQL_API *SQLMoreResults_t)(
    SQLHSTMT           hstmt);
typedef SQLRETURN (SQL_API *SQLNativeSql_t)(
    SQLHDBC            hdbc,
    SQLCHAR 		  *szSqlStrIn,
    SQLINTEGER         cbSqlStrIn,
    SQLCHAR 		  *szSqlStr,

⌨️ 快捷键说明

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