OTL通过MyODBC连接mysql需要用什么库

OTL通过MyODBC连接mysql需要用什么库,第1张

1.测试在Linux下使用otl,所以程序里对数据库没有多少 *** 作

testdb.cpp文件

#include <iostream>

using namespace std

//#define OTL_ODBC

#define OTL_ODBC_MYSQL

#define OTL_ODBC_UNIX

#include "./otlv4.h"

otl_connect db

int main()

{

// otl_connect::otl_initialize()

try

{

// db.rlogon("UID=rootPWD= DSN=testdb")

// cout<<"connect successful"<<endl

}

catch (...)

{

// cout<<"error!"<<endl

}

return 0

}

2.使用ace里面的mpc.pl工具,所以要写mpc文件

testdb.mpc文件

project (Test_DB):aceexe{

exename = Test_DB

Source_Files{

dbtest.cpp

}

Header_Files{

otlv4.h

}

}

1.使用mysql提供的api函数库。

很多有名的mysql客户端工具就是这样实现的,大名鼎鼎的winmysql工具就是这样的。这在大部分的开发工具中都可以实现。

比如vc,bcb,delphi,vb等,只要能调用第三方的api就能实现。但对程序员的要求很高,而且要熟悉一套mysql的api函数集,这不是对每个人都

很轻松的事。而且这种方法不能用于asp等程序,因为它不支持com对象。

2。第二种是使用myodbc驱动程序。

你可以到www.mysql.com下载myodbc驱动程序,然后照着下面的做就可以了

第一种选择是下载完全安装包,这种包很大,但对于我们来说有用的只有myodbc.dll这个文件,却要下载这么大的文件,不太合适。当然,如果你

很菜的话,我建议你选择这种方式,这样容易些,但不符合cfans的作风,是吧。

第二种是直接下载myodbc.dll文件,只有几百k,但不太容易使用,本人经过很久摸索才找到使用它的方法。

首先你将包解开,将myodbc.dll 文件放到windowssystem 或 winntsystem32目录下,这取决于你的系统是win9x还是winnt(win2k),你应该

知道吧。

然后打开一纯文本编辑器,如editplus,notpad之类,(取决于你的喜好)将下面一段话保存为一文件,扩展名为.reg,知道了吧,这是注册表文件,不要搞

错呀(不包括下面的一长串等号)

如果你用的是win2k请将第一行换成

Windows Registry Editor Version 5.00

==========================================================从下行开始

Windows Registry Editor Version 4.00

[HKEY_LOCAL_MACHINESOFTWAREODBCODBCINST.INImyodbc driver]

"UsageCount"=dword:00000002

"Driver"="C:\WINNT\System32\myodbc.dll"

"Setup"="C:\WINNT\System32\myodbc.dll"

"SQLLevel"="1"

"FileUsage"="0"

"DriverODBCVer"="02.50"

"ConnectFunctions"="YYY"

"APILevel"="1"

"CpTimeout"="120"

[HKEY_LOCAL_MACHINESOFTWAREODBCODBCINST.INIODBC Drivers]

"myodbc driver"="installed"

=======================================结束于上一行

保存后,双击刚才的文件,应该叫

xxx.reg 吧,然后选择确定,ok,搞定了。然后你打开odbc设置程序,建一新数据源,选择myodbc驱动程序,剩下的就看你自己了。============ ===================================================

MySQL只是众多解决方案中的一种,

MySQL的ODBC接口实现是通过安装MyODBC驱动,这个驱动程序是跨平台的。如果在Linux等

unix体系 *** 作系统下使用,需要先安装iodbc这些第三方ODBC标准支援平台。

简单的ASP示例代码:

<%

dim sql,mysql

set sql = server.createobject("adodb.connection")

mysql="driver={mysql odbc 3.51 driver}database=库server=主机uid=用户password

=密码" 'option = 设置

sql.open mysql

%>

上边这段代码是采用MyODBC开发版3.51连接的示例,使用开发版是因为一些新的特性和稳定性

2.x正式版所不具备的。

需要安装myodbc,具体的安装和设置请参阅:

使用DSN方式:

ConnectString='DSN=dlDESC=MySQL ODBC 3.51 Driver

DSNDATABASE=xxxxSERVER=chaodiquan.com .xxx.xxxUID=xxxxPASSWORD=xxxxPORT=3306SOCKET=OPTION=3STMT='

上边提到如果按照上边示例的方法一旦ASP文件的代码被骇客看到,那么数据库可能不保,然后引发一连串的问题,甚至被夺得管理权限。文章中顺便提到了解决方法,是通过编写com组件,然后由ASP调用组件的方法连接数据库。这么做的好处是提高了安全性,但是问题是有能力这么做的人毕竟是少数。那么我的折衷方案是定义数据源。将库、用户、密码以及设置这些连接信息统统在数据源中定义,从很大程度简单化了实现的难度,而且也起到增强安全性的作用。当然,为了保证数据源可以在实际运作环境中被访问到,一定要定义为“系统数据源”,开发时定义为“用户数据源”或者“系统数据源”我倒觉得无伤大雅。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6147151.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存