unixODBC API 整理1. SQLAllocHandle
SQLRETURN
SQLAllocHandle(SQLSMALLINT HandleType,
SQLHANDLE InputHandle,
SQLHANDLE *OutputHandlePtr);
|
(1)功能
分配需要的句柄
(2)参数说明
@ HandleType: 定义通过该接口要分配的句柄类型,取值可能有四个,分别为
SQL_HANDLE_ENV,
SQL_HANDLE_DBC,SQL_HANDLE_STMT,SQL_HANDLE_DESC
@ InputHandle:
它定义分配新句柄时使用的上下文句柄, 它与 HandleType参数取值对应关系如下:
如果 HandleType 值为
SQL_HANDLE_ENV,则参数取 SQL_NULL_HANDLE;
如果 HandleType 值为
SQL_HANDLE_DBC,则参数取 SQL_HANDLE_ENV 类型的句柄;
如果 HandleType 值为
SQL_HANDLE_STMT,则参数取 SQL_HANDLE_DBC 类型的句柄;
如果 HandleType 值为
SQL_HANDLE_DESC,则参数取 SQL_HANDLE_DBC 类型的句柄
@
OutputHandlePtr:
存储分配的句柄
(3)返回值说明
可能的返回值: SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_INVALID_HANDLE,
SQL_ERROR
2.
SQLRETURN
SQLBindCol(SQLHSTMT StatementHandle,
SQLUSMALLINT ColumnNumber,
SQLSMALLINT TargetType,
SQLPOINTER TargetValuePtr,
SQLINTEGER BufferLength,
SQLINTEGER *StrLen_or_IndPtr);
|
(1)功能
绑定一个变量和结果及中的列
(2)参数说明
@ StatementHandle: 它必须是通过 SQLAllocHandle 接口分配句柄,它将用于存储SQL操作的
结果
@ ColumnNumber: 在结果集中的列序号,从 1 开始
@ TargetType: 列数据类型标识
@ TargetValuePtr: 指向存储列数据变量的指针
@ BufferLength: TargetValuePtr指针指向的内存的大小,以字节计算
@
StrLen_or_IndPtr:
在获取数据时,它可能取值有
- 返回的数据的长度
- SQL_NO_TOTAL
- SQL_NULL_DATA
(3)返回值
可能的返回值:
SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR
,
SQL_INVALID_HANDLE
3. SQLConnect
SQLRETURN
SQLConnect(SQLHDBC ConnectionHandle,
SQLCHAR *ServerName,
SQLSMALLINT NameLength1,
SQLCHAR *UserName,
SQLSMALLINT NameLength2,
SQLCHAR *Authentication,
SQLSMALLINT NameLength3);
|
(1)功能
连接数据源
(2)参数说明
@ ConnectionHandle: 连接句柄,必须是通过SQLAllocHandle分配的,它保存有连接信息
@ ServerName: 数据库服务器名
@ NameLength1: ServerName 参数值的长度, 或者取 SQL_NTS,表明参数是字符串,长度
由系统运行时决定
@ UserName: 登录服务器使用的用户名
@ NameLength2: UserName参数值的长度,或者取 SQL_NTS
@ Authentication: 用户密码
@ NameLength3: Authentication 参数值的长度
(3)返回值
可能的返回值:
SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR
,
SQL_INVALID_HANDLE
4.
SQLRETURN
SQLDataSources(SQLHENV EnvironmentHandle,
SQLUSMALLINT Direction,
SQLCHAR *ServerName,
SQLSMALLINT BufferLength1,
SQLSMALLINT *NameLength1Ptr,
SQLCHAR *Description,
SQLSMALLINT BufferLength2,
SQLSMALLINT *NameLength2Ptr);
|
(1)功能
取得可用的数据源
(2)参数说明
@ EnvironmentHandle: 环境句柄,必须是通过 SQLAllocHandle 已分配的
@ Direction: 指明获取哪一个DSN,可以取如下值之一:
- SQL_FETCH_FIRST 能找到的第一个数据源,无论是用户类型还是系统类型
- SQL_FETCH_FIRST_USER 第一个用户数据源
- SQL_FETCH_FIRST_SYSTEM 第一个系统数据源
- SQL_FETCH_NEXT 它的意义取决于之前使用的是前三个值中的哪一个,语义一致
@ ServerName: 返回的数据源名称
@ BufferLength1: 存数数据源名称内存的大小
@ NameLength1Ptr: 实际返回的数据源名称的长度
@ Description: 数据源描述信息
@ BufferLength2: 存储描述信息的内存大小
@ NameLength2Ptr:
实际返回的描述信息长度
(3)返回值
可能的返回值:
SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR
,
SQL_INVALID_HANDLE
,
SQL_NO_DATA
5.
SQLRETURN
SQLExecDirect(SQLHSTMT StatementHandle,
SQLCHAR *StatementText,
SQLINTEGER TextLength);
|
(1)功能
执行 SQL 语句
(2)参数说明
@ StatementHandle: 语句执行句柄, 必须是 SQLAllocHandle 分配过的
@ StatementText: 要执行的 SQL 语句
@ TextLength: SQL 语句长度, 或者 SQL_NTS
(3)返回值
可能的返回值:
SQL_SUCCESS, SQL_SUCCESS_WITH_INFO, SQL_ERROR
,
SQL_INVALID_HANDLE
阅读(3374) | 评论(1) | 转发(1) |