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

ASP
ADO如何提供异动功能?(BIG5)
从数据库中动态选取下拉列表的方法
数 据 库 设 计 经 验 谈
用SQL实现分布式数据复制
NT4的ODBC与SQL7相连,不支持中文?
大部分ADO的错误码对应的含义
ASP+中取代ASP的RS(Remote Scripting)技术的Framework
利用Page.IsPostBack属性保持用户输入的Framework
用VB6读写数据库中的图片
VisualInterDev6.0七种实现分页显示的方法
利用ASP获得图象的实际尺寸的示例
5个实用的ASP网站功能(GIB5)
在ASP中用集合成批操作数据库
用asp管理sql server数据库
用asp处理access数据库
使用速度更快的OLEDB取代ODBC连结
对Query字段进行Encode操作的一点看法
用ASP语言实现对SQL SERVER 数据库的操作
Microsoft SQL Server 7.0 备份及恢复相关问题
Microsoft SQL Server 7.0数据库升级转换问题

如何在ASP中使用mySQL


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 30 ::
收藏到网摘: 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.