ASP讲座之六:ASP与数据库(一)__教程 |
|
日期:2007-5-20 0:33:31 人气:77 [大 中 小] |
|
|
|
方法二: Set Cnn = Server.CreateObject("ADODB.Connection") StrCnn = "Driver={SQL Server};Server=ICBCZJP;UID=sa;PWD=;Database=pubs" Cnn.Open StrCnn
除了上述的两种方法之外,当然还可使用许多文章、资料中介绍的最经典的方法:使用ODBC生成连接。就是先在Web服务器控制面板的“ODBC Data Sources”中建立一个连接,然后在ASP中使用类似“StrCnn ="DSN=ADOCnn; UID = sa;PWD=;Database=pubs"”的连接字符串。这里不详细介绍,一来这不是最好的方法,二来其他资料都介绍了该方法。 另外,有兴趣可下载例程wuf42.asp看看如何使用Connection对象的ConnectionTimeout和ConnectionString属性。
二、 数据库从这里起步——检索数据库中已存在的数据 现在假定你已有最基本的数据库知识,知道如何使用Microsoft Access打开Northwind.mdb中的“运货商”表,看到表中储存的几条数据。现在问题是如何使用ASP在浏览器中显示这些数据,下面介绍三种方法。 特别提醒:如果你的数据库底子较薄,只要会使用第二种方法就行了,切不可贪多,以免走火入魔,切记!切记!
方法一:只使用 Connection 对象。例wuf43.asp <% @LANGUAGE = VBScript %> <% ' wuf43.asp Option Explicit '这一句是非常重要的, 它可以确保所看到的数据不是缓存在客户端的数据, '而是服务器端随时更新过的最新数据 Response.Expires = 0
'第一部分: 建立连接
Dim Cnn, StrCnn Set Cnn = Server.CreateObject("ADODB.Connection") StrCnn = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:\Inetpub\home\asp\Northwind.mdb" Cnn.Open StrCnn
'第二部分: 使用 Connection 对象的 Execute 方法得到记录集
Dim StrSQL, rsTest '下面是一句SQL语句(结构化查询语句), 本讲座不具体介绍 ‘建议找本书看看,基本使用还是比较简单的,一学就会 '这一句的意思是从 运货商 表中选出所有的数据 StrSQL = "Select * From 运货商" Set rsTest = Cnn.Execute(StrSQL) %> <HTML> <BODY> <% '第三部分: 将得到的记录集显示到浏览器上
'循环至记录末尾 - 一行一行、一条记录一条记录的显示 Do While Not rsTest.EOF
'下面这两行的作用是一样的, 即 rsTest("运货商ID") 等同于 rsTest(0) Response.Write rsTest("运货商ID") & " " & rsTest("公司名称") & " " & rsTest("电话") & " " & "<BR>" 'Response.Write rsTest(0) & " " & rsTest(1) & " " & rsTest(2) & " " & "<BR>"
'移到下一条记录 - 这一句可千万不能少 否则就陷入死循环 rsTest.MoveNext Loop
'第四部分: 打扫战场 Cnn.close Set rsTest = Nothing: Set Cnn = Nothing %> </BODY> </HTML> 这个例子是很简单的,第三部分显示数据是数据库典型的输出样式,你可以参照以前所学的知识加上表格和颜色美化输出结果。 非初级用户可以参考wuf44.asp看看Execute方法的完整使用。
方法二:通过创建 Recordset 对象——切记初学者只求掌握这种方法便够了。 例:wuf45.asp,其他部分同wuf43.asp,关键在于程序的第二部分。 '第二部分: 通过创建 RecordSet 对象得到记录集 Dim StrSQL, rsTest '创建 Recordset 对象 Set rsTest = Server.CreateObject("ADODB.Recordset")
StrSQL = "Select 运货商ID,电话,公司名称 From 运货商 Where 电话 = '(503) 555-9931'" '将 Recordset 对象附加到连接 Cnn Set rsTest.ActiveConnection = Cnn '使用 Recordset 对象的 Open 方法打开记录集 rsTest.Open StrSQL 现在让我们看看Recordset对象Open方法的完整用法,例wuf48.asp。 |
|
出处:本站原创 作者:佚名 |
|
|