1.ODBC定义
ODBC(Open Database Connectivity)开放式数据库互连是Microsoft提出的数据库访问接口标准,提供了一组对数据库访问的标准API。
Application<-->ODBC manager<-->ODBC Drivers<-->Data Sources
2.ODBC所需头文件
#include<windows.h>//否则sqltypes.h(137) : error C2146: syntax error : missing ';' before identifier 'SQLHWND'
#include<sql.h>
#include<sqlext.h>
#include<sqltypes.h>
#include<sqlucode.h>
#include<odbcss.h>
3.数据类型定义
C语言数据类型<——>ODBC数据类型<——>数据库SQL语言数据类型
由于ODBC的驱动程序调用自己的DBMS数据库访问接口时就会将ODBC数据类型转化为数据库SQL语言数据类型,所以我们只需了解C语言数据类型和ODBC数据类型的转换关系。在进行ODBC开发过程中不要使用C语言实际类型而应该使用ODBC数据类型。
表一
ODBC数据类型名称 |
SQL语言数据类型名称 |
SQL_CHAR |
CHAR(n) |
SQL_VARCHAR |
VARCHAR(n) |
SQL_LONGVARCHAR |
LONG VARCHAR |
SQL_WCHAR |
WCHAR(n) |
SQL_WVARCHAR |
VARWCHAR(n) |
SQL_WLONGVARCHAR |
LONGWVARCHAR |
SQL_DECIMAL |
DECIMAL(p,s) |
SQL_NUMERIC |
NUMERIC(p,s) |
SQL_SMALLINT |
SMALLINT |
SQL_INTEGER |
INTEGER |
SQL_REAL |
REAL |
SQL_FLOAT |
FLOAT(p) |