mysql数据库以它短小、方便、速度快、免费等优点成为很多网站目前首选
数据库,但一般都是用php+mysql相结合来开发各种动态页面,其实asp也可以
使用mysql数据库开发动态页面,小弟我也是刚刚学会,不敢独享,所以特写了
这篇文章供大伙参考。
我的环境是windows2000+iis5.0+mysql-3.23.32-win+php4
mysql-3.23.32-win(这个是最新版的)
myodbc-2.50.36-dll(这个是最重要的,mysql odbc的驱动程序,可以到www.mysql.com下载)
第一步:安装mysql odbd的驱动程序,将下载的myodbd-2.50.46-dll文件复制到windows\system目录下(windows2000是winnt/system32)
然后建立一新文件,扩展名为reg(就是注册表文件),将以下内容复制到该文件中。
regedit4
[hkey_local_machine\software\odbc\odbcinst.ini\myodbc driver]
"usagecount"=dword:00000002
"driver"="c:\\windows\\system\\myodbc.dll"
"setup"="c:\\windows\\system\\myodbc.dll"
"sqllevel"="1"
"fileusage"="0"
"driverodbcver"="02.50"
"connectfunctions"="yyy"
"apilevel"="1"
"cptimeout"="120"
[hkey_local_machine\software\odbc\odbcinst.ini\odbc drivers]
"myodbc driver"="installed"
保存后双击该文件,将上面代码注册到windows注册表中。
如果安装在windows2000中,则driver和setup主键的值要做相应改变,这里我想就不用多说了。
如果成功,在控制面板/odbd数据源的驱动程序里将看到myodbd driver这一项!
第二步:建立asp文件链接数据库。
这里有两种方法,一种是在odbc数据源中建立一个系统dsn。后来我发现不建立也可以在asp中使用mysql,方法在下文将讲道。
打开控制面板/odbd数据源,选择系统dsn,然后添加一个新的dsn,驱动程序选择myodbd driver,会出现一个对话框供输入mysql
相关信息。
windows dsn name: 所要建立dsn的名称
mysql host (name or ip):mysql服务器的名称或者是ip地址,通常填localhost
mysql database name:需要使用数据库的名称,数据库在mysql管理程序中建立。这里我们使用一个例子。数据库名:hc188
里面有数据表:user 数据表有两个字段分别是:username和password,随便插入几个数据。
user:链接数据库的用户名,我填的是root超级用户
password:链接数据库用户密码,如果没有,可以不填
port(if not 3306):mysql在服务器的端口,如果不填默认为3306
sql command on connect:使用sql命令链接数据库,这项可以不填
填写完毕后选择ok保存。
下面链接数据库的asp代码!
<%
strconnection = "dsn=hc188;driver={myodbd driver};server=localhost;uid=root;pwd=;database=hc188"
set adodataconn = server.createobject("adodb.connection")
adodataconn.open strconnection
strquery = "select * from user"
set rs = adodataconn.execute(strquery)
if not rs.bof then
%>
<table>
<tr>
<td<b>username</b></td>
<td><b>password</b></td>
</tr>
<%
do while not rs.eof
%>
<tr>
<td><%=rs("username")%></td>
<td><%=rs("password")%></td>
</tr>
<%
rs.movenext
loop
%>
</table>
<%
else
response.write("sorry, no data found.")
end if
rs.close
adodataconn.close
set adodataconn = nothing
set rsemaildata = nothing
%>
第二种方法:我在使用中想过如果不建立系统dsn,是否也可以使用mysql数据库呢?结果是可以的。
方法很简单,把上面asp代码第二行代码改为:
strconnection="defaultdir=;driver={myodbc driver};database=hc188"
我奇怪的发现,这种方法连用户名和密码都不需要就可以使用。是不是mysql的一个bug呢?
以上代码全部经测试通过!