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调用组件的方法连接数据库。这么做的好处是提高了安全性,但是问题是有能力这么做的人毕竟是少数。那么我的折衷方案是定义数据源。将库、用户、密码以及设置这些连接信息统统在数据源中定义,从很大程度简单化了实现的难度,而且也起到增强安全性的作用。当然,为了保证数据源可以在实际运作环境中被访问到,一定要定义为“系统数据源”,开发时定义为“用户数据源”或者“系统数据源”我倒觉得无伤大雅。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)