ASP访问数据库的实例 例26:与数据库建立连接,文件名为9-26.aspa Response. Write"数据库连接成功:"& Cnn. State&"<br 使用 Connection对象的 Close方法关闭连接 Cnn. close Response.Wrie"数据库已经关闭:"&Cnn. State 将 Connection对象从内存中删除,以释放资源 Set Cnn = Nothing ‰〉 运行结果如图
ASP访问数据库的实例 例 26:与数据库建立连接,文件名为 9-26.asp。 " Response.Write "数据库连接成功: " & Cnn.State & "" '使用 Connection 对象的 Close 方法关闭连接 Cnn.close Response.Write "数据库已经关闭: " & Cnn.State '将 Connection 对象从内存中删除,以释放资源 Set Cnn = Nothing %> 运行结果如图
E编辑查看(收藏” 如后退·→③回备③搜索 地址①·同235-1转到链援 国上网助手召暂停拦截〈清理 root bbs. mdb 据库 数据库 完毕□□□皚本地 Intranet 例9.27循环检索记录,文件名为9-27a.asp 和9-27basp。先注册文件数据源为Myaa.dsn,使 用的数据库为 northwind.mdb 9-27a.asp的内容如下: <% strDSN ="FILEDSNMyaa dsn Set cn = Server CreateObject ("ADODB Connection cn. Open strDSN //初始化 Recordset对象 Set rsCustomers= Server. CreateOb ject("ADODB. Recordset") strSQL=" SELECT联系人姓名,公司名称FROM客户WER客户 ID= FAMIA rsCustomers. Open strSQL, n //循环查询,并显示结果 Set ob jFirstName= rs Customers("联系人姓名") Set ob jLastName= rs Customers("公司名称") Do Until rs customers eOF esponse Write ob jFirstName objLastName
例 9.27 循环检索记录,文件名为 9-27a.asp 和 9-27b.asp。先注册文件数据源为 Myaa.dsn,使 用的数据库为 northwind.mdb。 9-27a.asp 的内容如下: <% strDSN = "FILEDSN=Myaa.dsn" Set cn = Server.CreateObject("ADODB.Connection") cn.Open strDSN //初始化 Recordset 对象 Set rsCustomers = Server.CreateObject("ADODB.Recordset") strSQL = "SELECT 联系人姓名, 公司名称 FROM 客户 WHERE 客户 ID= 'FAMIA' " rsCustomers.Open strSQL,cn //循环查询,并显示结果 Set objFirstName = rsCustomers("联系人姓名") Set objLastName = rsCustomers("公司名称") Do Until rsCustomers.EOF Response.Write objFirstName & "-------- " & objLastName
&" rs Customers. MoveNext Loop ‰〉 9-27b.asp的内容如下 rs Customers MoveNext Loop ‰〉 9-27a.asp和9-27a.asp的运行结果如图:
& "" rsCustomers.MoveNext Loop %> 9-27b.asp 的内容如下: " rsCustomers.MoveNext Loop %> 9-27a.asp 和 9-27a.asp 的运行结果如图:
描E查(收)工具”文件查看 ③没搜索收藏夹 后退·→·③的岱驶索收藏英 地·同物到接”地,到量 上同助手,暂停拦截清复 网助手·暂停拦酸洒理修复 Aria Cru Familia Ars □匚本烤欢陋完毕 □厂课本堵 Intranet 例9.30本例共有两个文件:test9-30.htm1 和9-30. aspo test9-30.htm1用来产生向用户收集 信息的表单,用户可以指定要查看“图书信息”或 “作者信息”。9-30.asp用来响应用户的请求。 test9-30.htm1的内容如下 查看客户信息请点击这里 查看产品信息请点击这里
例 9.30 本例共有两个文件:test9-30.html 和 9-30.asp。test9-30.html 用来产生向用户收集 信息的表单,用户可以指定要查看“图书信息”或 “作者信息” 。 9-30.asp 用来响应用户的请求。 test9-30.html 的内容如下: 查看客户信息请点击这里 查看产品信息请点击这里
9-30.asp的内容如下: <% const adOpenStatic=3 const adlockReadOnly=1 建立 Recordset对象 Set rs=Server CreateObject("ADODB. Recordset") 提取表单域“ button”的值 button=Request Form(button 设定光标类型为静态 CursorType=adopenStatic 设定锁定类型为只读 LockType=adLockReadOnly 如果用户选择“客户信息”则执行下面的代码 If button="客户信息"Then SoUrce=" select*from客户〃 active Connection="dsn=pubs rs. open source, activeConnection, CursorType, LockType end if 如果用户选择“产品信息”则执行下面的代码 If button="产品信息〃Then Source=" select*from产品 Active Connection="dsn=pubs
9-30.asp 的内容如下: <% const adOpenStatic=3 const adLockReadOnly=1 '建立 Recordset 对象 Set rs=Server.CreateObject("ADODB.Recordset") '提取表单域“button”的值 button=Request.Form("button") '设定光标类型为静态 CursorType=adOpenStatic '设定锁定类型为只读 LockType=adLockReadOnly '如果用户选择“客户信息”则执行下面的代码 If button="客户信息" Then source="select * from 客户" activeConnection="dsn=pubs" rs.open source,activeConnection,CursorType,LockType end if '如果用户选择“产品信息”则执行下面的代码 If button="产品信息" Then source="select * from 产品" ActiveConnection="dsn=pubs
rs. Open source, ActiveConnection, CursorType, Lock Type End if 查询结果以表格的形式输 Response. Write Response. Write""&Case(rs(i).Name)& Next Response Write" 输出表格内容 While not rs. eOF e sponse. Write""&rs(i). value& Next rs.Moⅴ eNext Response. Write"</tabl 取消连接 Set rs=nothing ‰〉 运行结果如图:
rs.Open source,ActiveConnection,CursorType,LockType End if '查询结果以表格的形式输 Response.Write "" Response.Write "" For i=0 to rs.Fields.Count-1 Response.Write ""&Ucase(rs(i).Name)&"" Next Response.Write "" '输出表格内容 While NOT rs.EOF Response.Write "" For i=0 to rs.Fields.Count-1 Response.Write ""&rs(i).Value&"" Next rs.MoveNext Wend Response.Write "" '取消连接 Set rs=nothing %> 运行结果如图:
文件(编辑1查看(收藏(4)工具①帮助H 中后退·→·③回备搜索收藏夹 地址①)·+即/shoe93ht转到链接 了上网助手·暂停拦截〈清理修复 查看客户信息请点击这里客户信息 查看产品信息请点击这里[产品信息 本地 Intranet ”上勤,暂数∮(复 D产名杯 一供应鸡工类D单位数量 单价萍存量量再购量中止 im时Ss 48-602Ja :le Bcb's Organis Dries Pe 1 Ib Ikus Mish Bobe Nity 12-200 nl jan 如 una ranchero La Fartera 40-50spk 2 kg box 3-50bax样[ 10 boxes x 12 pineta B 2 24比x4 pieces s InickebrM 河红如 entice 例9.31 Recordset访问数据库,文件名为 9-31.asp,数据库为 ntopsamp.mdb Set connl= Server CreateObject("ADODB Connection") connl.Open"DBQ=& Server MapPath("ntopsamp mdb")& Driver=Microsoft ccess Driver (* mdb)); DriverId=25; FIL=MS Access Set rs2= Server CreateObject("ADODB. Recordset") Sqlstr=" SELECT AVg(价格)As平均From产品
例9.31 Recordset访问数据库,文件名为 9-31.asp,数据库为ntopsamp.mdb。 <% Set conn1 = Server.CreateObject("ADODB.Connection") conn1.Open "DBQ=" & Server.MapPath("ntopsamp.mdb") & _ ";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;" Set rs2 = Server.CreateObject("ADODB.Recordset") SqlStr = "SELECT Avg(价格) As 平均 From 产品
rs2 Open sqlstr, connl, 1, 1 Response. Write" Count(价格):"&rs2(0) rs2. Close Sqlstr=" SELECT Count(*)FrOm产品” rs2 Open Sqlstr, connl, 1, 1 Response. Write"Count(*: &rs2(O) rs2. Close Sqlstr=" SELECT SUm(价格)From产品 2. Open Sqlstr, connl, 1,1 Response. Write"Sum: rs2(0) rs2. Close Sqlstr=" SELECT Min(价格)From产品 rs2 Open Sqlstr, connl, 1, 1 Response. Write"Min: rs2 (0) rs2. Close Sqlstr=" SELECT Max(价格)From产品 rs2 Open Sqlstr, conn, 1, 1 Response. Write"Max: &rs2(0)
rs2.Open SqlStr,conn1,1,1 Response.Write "Avg: " & rs2("平均") rs2.Close SqlStr = "SELECT Count(价格) From 产品" rs2.Open SqlStr,conn1,1,1 Response.Write "Count(价格): " & rs2(0) rs2.Close SqlStr = "SELECT Count(*) From 产品" rs2.Open SqlStr,conn1,1,1 Response.Write "Count(*): " & rs2(0) rs2.Close SqlStr = "SELECT Sum(价格) From 产品" rs2.Open SqlStr,conn1,1,1 Response.Write "Sum: " & rs2(0) rs2.Close SqlStr = "SELECT Min(价格) From 产品" rs2.Open SqlStr,conn1,1,1 Response.Write "Min: " & rs2(0) rs2.Close SqlStr = "SELECT Max(价格) From 产品" rs2.Open SqlStr,conn1,1,1 Response.Write "Max: " & rs2(0)
rs2. Close Sqlstr=" SELECT First(价格)From产品 rs2 Open Sqlstr, connl, 1, 1 Response. Write" First(价格):"&rs2(0) rs2. Close Sqlstr=" SELECT Last(价格)From产品 rs2 Open sqlstr, conn, 1, 1 Response. Write"StDev: rs2(0) rs2. Close Sqlstr=" SELECT Var(价格)From产品
rs2.Close SqlStr = "SELECT First(价格) From 产品" rs2.Open SqlStr,conn1,1,1 Response.Write "First(价格): " & rs2(0) rs2.Close SqlStr = "SELECT Last(价格) From 产品" rs2.Open SqlStr,conn1,1,1 Response.Write "Last(价格): " & rs2(0) rs2.Close SqlStr = "SELECT First(代号) From 产品" rs2.Open SqlStr,conn1,1,1 Response.Write "First(代号): " & rs2(0) rs2.Close SqlStr = "SELECT Last(代号) From 产品" rs2.Open SqlStr,conn1,1,1 Response.Write "Last(代号): " & rs2(0) rs2.Close SqlStr = "SELECT StDev(价格) From 产品" rs2.Open SqlStr,conn1,1,1 Response.Write "StDev: " & rs2(0) rs2.Close SqlStr = "SELECT Var(价格) From 产品
rs2 Open Sqlstr, connl, 1, 1 Response. Write"Var: rs2(0) rs2. Close conn. Close ‰〉 运行结果如图: rosoft Internet Explorer 编辑E)查看)收藏(A)工具(D帮助 ∴+③的△③索收夹守媒④· 地址()·>转到链接”上网助手·暂停拦截∮清理(修复 Avg:1075 oumt(价格):6 Sum:6450 First(价格):1000 rst Last(代号):006 Stay:1481.13132435986 Var:2193750 「本地 tranet 例9.32用户登录验证,文件名为9-32asp 和1 ogin. asp 使用的数据库为info.mdb,其中表: userinfo 包含 userid、psW、 logins、 pswnotice、 pswanswer、 email、qq、name、age、 education、 occupation、 city、 address、 rostrum字段。 ogin.asp的内容如下: htm1〉
rs2.Open SqlStr,conn1,1,1 Response.Write "Var: " & rs2(0) rs2.Close conn1.Close %> 运行结果如图: 例9.32 用户登录验证,文件名为9-32.asp 和login.asp。 使用的数据库为info.mdb,其中表:userinfo 包含userid、psw、logins、pswnotice、pswanswer、 email、qq、name、age、education、occupation、 city、address、postnum字段。 login.asp 的内容如下: