使用ODBC API之前要用到的头文件和LIB库
#include "sql.h" // This is the the main include for ODBC Core functions.
#include "sqlext.h" // This is the include for applications using the Microsoft SQL Extensions
#include "sqltypes.h" // This file defines the types used in ODBC
#include "sqlucode.h" // This is the the unicode include for ODBC Core functions
#include "odbcss.h" // This is the application include file for the SQL Server driver specific defines.
#pragma coment(lib, "odbc32.lib")
ODBC API的返回值
ODBC API的返回值定义为:SQLRETURN。在成功时返回值为:SQL_SUCCESS, SQL_SUCCESS_WITH_INFO;在失败时返回错误代码。一点需要注意的是如果ODBC返回值为:SQL_SUCCESS_WITH_INFO并不表明执行完全成功,而是表明执行成功但是带有一定错误信息。当执行错误时ODBC返回的是一个错误信息的结果集,你需要遍历结果集合中所有行,这点和后面讲到的查询SQL语句执行结果集的思路很类似。
SQLAllocHandle 创建ODBC句柄
SQLRETURN SQLAllocHandle (
SQL SMALLINT HandleType, // 需要申请的句柄类型
SQLHANDLE InputHandle, // 输入句柄
SQLHANDLE * OutputHandlePtr); // 输出句柄,即在第一参数指定需要申请的句柄
第一参数HandleType的取值可以为:
1. SQL_HANDLE_ENV
2. SQL_HANDLE_DBC
3. SQL_HANDLE_STMT
SQLConnect 连接数据库
SQLRETURN SQLConnect (
SQLHDBC ConnectionHandle, // DBC句柄,hdbc
SQLCHAR * ServerName, // 为ODBC的DSN名称
SQLSMALLINT NameLength1, // 指明参数ServerName的长度(可以用SQL_NTS)
SQLCHAR * UserName, // 数据库用户名
SQLSMALLINT NameLength2, // 指明参数UserName的长度(可以用SQL_NTS)
SQLCHAR