当前位置: 首页 > 图文教程 > 网络编程 > ASP > 在ASP中连接MySQL数据库的方法,最好的通过ODBC方法

ASP
asp实现取得数组中的最大值的代码
asp 将日期格式化为需要的格式
asp 下产生任意位数随机密码的代码
asp下返回以千分位显示数字格式化的数值
asp重定向页面的方法总结
asp下去除数组中重复的项的方法
asp下实现 重新排序数字数组的代码
asp 验证输入网址是否有效并可以访问 与正则验证输入网址
asp验证Ip格式的函数
asp实现生成由数字,大写字母,小写字母指定位数的随机数
asp 格式化sql中的like字符串
asp 实现显示所有的服务器变量值的函数
asp 取得用户真实IP,对代理地址仍然有效的函数
asp 通用数据库连接过程函数
asp 字符串截取函数
asp下实现格式化文件大小以MB显示的函数
asp 下用正则表达式检测邮箱格式的函数
asp 实现检测字符串是否为纯字母和数字组合的函数
asp代码实现检测组件是否安装的函数
asp通过JMAIL实现通用发送函数

在ASP中连接MySQL数据库的方法,最好的通过ODBC方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 51 ::
收藏到网摘: n/a

折腾了一阵,总算把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=系统DSN的名字;driver={MYSQL ODBC 3.51 driver};server=服务器IP地址;uid=连接数据库的用户名;pwd=密码;database=数据库名"
'lybykw test for 2006年08月21日 星期一 8:49:44
'连接字符串,dsn就是我们设置的数据源标识符注意driver我们刚才在设置系统DSN的时候提过。
set conn = server.createobject("adodb.connection")
conn.open strconnection
sql = "select * from test" 'SQL查询语句
set rs = conn.execute(sql)
if not rs.bof then
%>
<table width=600 border=1>
<tr>
<td width=""><b>name</b></td>
<td width=""><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>
<%
rs.close
else
response.write("对不起,没有找到数据。")
end if
set rs = nothing
conn.close
set conn = nothing
%>
</body>
</html>