• 当前位置:首页>>网络编程>>Asp专区>>ASP后台快速调用Mysql 数据库
  • ASP后台快速调用Mysql 数据库
  •  MYSQL数据库以它短小、方便、速度快、免费等优点成为很多网站目前首选
    数据库,但一般都是用PHP+MYSQL相结合来开发各种动态页面,其实ASP也可以
    使用MYSQL数据库开发动态页面,小弟我也是刚刚学会,不敢独享,所以特写了
    这篇文章供大伙参考。
    我的环境是WINDOWS98+PWS4.0+mysql-3.23.32-win+PHP4
    必要的软件:PWS4.0(呵呵,废话)
    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呢?
  • 上一篇:利用ASP实现对表的分页浏览(上)
    下一篇:利用ASP将HTML格式数据传输给Excel(2)