如何在asp中连接mysql 数据库
明水轩工作室 cctv.net
2004-3-7,2004-4-2修正
折腾了一阵,总算把asp和mysql连接完成了,有感,特写此文与大家一同分享。
查了很多资料,asp和mysql连接目前有两种办法:一个是使用组件,比较有名是mysqlx,可惜要99美元。二就是使用myodbc 来连接,下面我们就来看看第二种方式。
试验的平台:
mysql 4.0 for radhat linux (也可以使用for windows)
windows 2003 standard edition windows xp english
一、安装myodbc
1.访问网站 www.mysql.com 并下载 myodbc ,我们使用的是3.51版本。
2.安装myodbc到windows中
运行下载回来的myodbc-3.51.06.exe(文件名因版本而异)
二、建立odbc连接
进入:控制面板-》odbc数据源
这时候,我们已经可以看到在用户dsn中已经存在一项:myodbc3-test,注意右边的driver{mysql odbc 3.51 driver}这个参数一会要一字不漏的作为asp和数据库连接的连接字(conection string)。
添加一个“系统dsn”
选择对话框中“系统dsn”栏,按下右边的“添加”按钮。这时候会让你选择一个数据源。选择 mysql odbc 3.51 driver。按“结束”。
这时候,会弹出一个配置对话框:
data source name 数据源名字:在程序中使用的dsn的标识符,可以随便命名。
host/server name (or ip)主机/服务器 名字 (或者ip 地址),如果是本机就填入localhost
database name 数据库名:你要在程序中使用的库名。
user 用户:登录mysql 使用的用户名,特别注意,root用户由于安全问题能在本机登录,当然啦,用户可以通过修改user表来去掉这个功能。
password 密钥:登录的密码
port 端口:使用默认值,最好不要改,除非你有把握。
全部设置好了以后,按下“测试数据源”会看到屏幕显示连接成功。
配置就全部搞定了!^_^
三、asp和数据库的连接
下面是我测试过的,连接mysql的源代码,连接的库名为mm,表名为my,表中有两个字段 name 和 sex。
<html>
<head>
<title>mysql连接测试</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
</head>
<body>
<%
strconnection="dsn=mysqltest;
driver={mysql odbc 3.51 driver};
server=填入服务器地址;uid=用户名;pwd=密
码;database=mm"
‘连接字符串,dsn就是我们设置的数据源标识符
注意driver我们刚才在设置系统dsn的时候提过。
试验发现,dsn=mysqltest;就已经可以正常连接数据库,原因很简单就是我们已经在odbc中完成了和mysql的各项连接工作了。
set conn = server.createobject("adodb.connection")
conn.open strconnection
sql = "select * from my" ‘sql查询语句
set rs = conn.execute(sql)
if not rs.bof then
%>
<table width="167">
<tr>
<td width="76"><b>name</b></td>
<td width="79"><b>sex</b></td>
</tr>
<%
do while not rs.eof
%>
<tr>
<td><%=rs("name")%></td> ‘name字段
<td><%=rs("sex")%></td> ‘sex字段
</tr>
<%
rs.movenext
loop
%>
</table>
<%
else
response.write("sorry, no data found.")
end if
rs.close
conn.close
set conn = nothing
set rs = nothing
%>
</body>
</html>
