日期:2014-05-16  浏览次数:20748 次

关于MySQL中的ODBC与C语言的API的一些问题
我刚开始接触数据库,要在web网页中连接数据库并查询和返回结果。我看了一些资料,O
DBC是一种开放式数据库连接性(ODBC)是广泛接受的用于数据库访问的应用程序编程接口
(API)————我的理解是ODBC是应用程序与数据库之间的中间层,ODBC封装的数据库的
细节,这样应用程序在访问数据库时不用关心怎样连接、数据库设置类型、怎样查询的细
节,我的想法对吗?
但是MySQL中也提供了C的API,也能够直接连接访问数据库,得到查询结果。
我的疑惑是odbc和C的API是啥关系?使用ODBC还要安装配置,而且最终还是要调用API
似乎不如直接使用C的API方便啊。

实际上我在做这样一个东西:ATL   Server提供web服务,但是我在页面的标签函数里直接使
用C的API,比如mysql_real_connect()等等,结果程序编译连接通过,但是不能访问网页
,firefox提示   Invalid   access   to   memory   location.
IE下提示   网站程序有错误    

实际上我要实现的功能很简单,就是查询数据库并把结果显示给用户,结果在网页的标签
函数里用了MySQL的C的API就由上面说的错误。

ATL   Server中的示例里有这么一句话:Provider=SQLOLEDB,难道这是OLEDB连接?当然微
软的例子一定用的是SQL   Server了

------解决方案--------------------
用微软的东西还是直接用ado比较好,兼容性好,不那么容易出现问题。