当前位置: 首页 > 图文教程 > 网络编程 > ASP > 如何在ASP中使用mySQL

ASP
防止网站被采集的理论分析以及十条方法对策
Asp 操作Access数据库时出现死锁.ldb的解决方法
asp HTTP_X_FORWARDED_FOR和REMOTE_ADDR
ASP 代码出现80040e14错误的解决方法
Asp 编码互转的研究和实现代码
asp fckeditor自定义上传文件的文件名
asp javascript picasa相册外链批量导出
asp MD5加密方式使用建议
asp javascript值的互相传递方法
ASP UTF-8编码下字符串截取和获取长度函数
asp vbcrlf是什么意思
ASP 相关文章或者相关产品
在Win2003 64位下ASP无法连接Access数据库
asp 得到动态数组中元素的个数
Session.TimeOut的最大取值是1440,超出会报错
Form Post提交容量大的数据
启动iis出现发生意外0x8ffe2740的解决方法
asp 实现当有新信息时播放语音提示的效果
asp 延时 页面延迟的三种方法
Asp 日期格式化问题

如何在ASP中使用mySQL


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

  Using A mySQL Databases
by Ben O'Neill


Databases are the best way to keep your web site up-to-date and dynamic. Databases are used these days by
thousands of web sites. They are used for storing news and general information. Web sites like the ASP
Index (www.aspin.com) are run on large databases. Databases make a web site easy to update and once you
have the base script, to add, remove and modify things in a database is very easy.



To start you need to know how to connect to a database. ASP can connect to virtually any type, from
Microsoft Access to SQL. In this example I'll be using mySQL and OLE DB to connect to it.



mySQL can be downloaded from the mySQL web site (www.mysql.com). You will also need the provider used to
connect to it, also available from the mySQL web site.



You may be asking what's OLE DB? I'm used to ODBC and DSN. OLE DB is faster and more stable. It's almost
exactly the same.



First we need to connect to the database, because it's a mySQL database you also need to supply a database
name. (in mySQL you can have mulitple databases on the same SQL server.)



<%

strConnection = "driver={MySQL};server=localhost;uid=benoneill;pwd=mypassword;database=databasename"



Set adoDataConn = Server.CreateObject("ADODB.Connection")

adoDataConn.Open strConnection

%>



And now we've connected. Let's pretend we've got a big list of lots and lots of email addresses, here's
the contents of our database, it allows me to show you how it works better.



Table Name: emailadds



name牋牋牋牋牋牋牋?牋牋牋牋牋?emailadd

------------------------------------------------------

Ben牋牋牋牋牋牋牋牋?牋牋牋牋牋[email protected]

Fred牋牋牋牋牋牋牋牋 牋牋牋牋牋[email protected]

Ben Harding牋牋 牋牋牋牋牋[email protected]

Dave Geralding 牋牋牋牋牋[email protected]



Now we have the database open let's run a query to list and output all the names and email address in a
nice easy to view table.



<%

?strQuery = "SELECT * FROM emailadds"



?Set rsEmailData = adoDataConn.Execute(strQuery)



?If Not rsEmailData.BOF Then

%>



<TABLE>



?/span><TR>

牋 <TD<b>Name</b></TD>

牋 <TD><b>Email Address</b></TD>

?/span></TR>



<%

?Do While Not rsEmailData.EOF

%>



?/span><TR>

牋 <TD><%=rsEmailData("name").Value %></TD>

牋 <TD><%=rsEmailData("emailadd").Value %></TD>

?/span></TR>



<%

牋?rsEmailData.MoveNext

?Loop



%>



</TABLE>



<%

?Else



牋? Response.Write("Sorry, no email addresses found.")



?End If

%>





There we go. If no records are found then it says "Sorry, no email addresses found".



That query is simple enough, it tells the database to get (SELECT) all the records and all the fields from
the table named emailadds.



How about we make it only show people with the name "ben" somewhere in their name, simple change the query
to this:



SELECT * FROM emailadds WHERE name LIKE '%ben%'


That query would return only 2 records, Ben and Ben Harding.



It's important you use single quotes ('), because double quotes won't work. You can also be very selective
and do:



SELECT * FROM emailadds WHERE name='Ben'


That query would only return Ben, not Fred or Ben Harding, or Dave Geralding.