ASP数据库编程技巧(一)
来源:互联网 发布:js new york北京分店 编辑:程序博客网 时间:2024/05/18 18:16
一、 与数据库建立连接
我们常用的数据库一般为Microsoft Access或SQL Server,为了使用这两种数据库,我们通常需要先创建和配置ODBC数据源,但事实上,ASP脚本可以使用OLD DB的其他驱动程序直接把ADO绑定到数据库而不使用ODBC作为一个附加层,请看:
1. 与Microsoft Access数据库建立连接
Set Cnn = Server.CreateObject("ADODB.Connection")
Cnn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("/asp/data")
& "/example.mdb;"
在这里,Server对象的MapPath方法将指定的虚拟路径转换为真实的文件路径,最终结果类似:c:/InetPub/home/asp/data/example.mdb。
2. 与SQL Server数据库建立连接
Set Cnn = Server.CreateObject("ADODB.Connection")
strConn = "Provider=sqloledb; User ID=sa; Password=; Initial Catalog=pubs; Data
Source=16.62.5.8"
Cnn.Open strConn
Initial Catalog后指定数据库名,Data Source后为机器名或IP地址。
二、 从ASP脚本中访问数据库的两种方法
1. 通过SQL语句来访问数据库
1) 若需要返回 Recordset 对象引用(如查询操作)先要建立一个名为Cnn的连接
strQry = "SELECT * FROM authors"
Set rsTest = Cnn.Execute(strQry)
然后可以通过循环显示记录集rsTest中的有关数据。
2) 若不需要返回数据(如增加、修改、删除操作)
strQ = "INSERT INTO Shippers (CompanyName, Phone) VALUES ('O''Conner Delivery', '(503)
555-0201')"
Cnn.Execute strQ
2. 通过Recordset对象的Open、AddNew、Delete、Update和UpdateBatch方法访问数据库
Set rsTest = Server.CreateObject("ADODB.Recordset") '创建Recordset对象
rsTest.CursorLocation = adUseServer '使用服务器端游标
rsTest.CursorType = adOpenForwardOnly '使用仅向前游标类型
rsTest.LockType = adLockOptimistic '开放式记录锁定(逐条)
rsTest.Open "SELECT * FROM Shippers WHERE CompanyName = 'United Package'", Cnn, , ,
adCmdText
' 第五个参数:adCmdText指示数据源是一个SQL语句。
rsTest("Phone") = "(503) 555-8888"
rsTest.Update
Response.Write "更新单个记录 " & objRS("Phone") & ".<BR>"
为了更好的理解ADO的数据库编程,下面提供一个完整的实例(NorthWind.mdb是Microsoft Access97自带的一个数据库,文件adovbs.inc可在C:/Program Files/Common Files/System/ADO下找到):
<% @LANGUAGE = VBScript %>
<!--#include file="adovbs.inc"-->
<%
Response.Expires = 0
Dim StrCnn,Cnn,objRS, strOut, ID
Set Cnn = Server.CreateObject("ADODB.Connection")
StrCnn="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" &
Server.MapPath("/asp24") & "/NorthWind.mdb;"
Cnn.Open StrCnn
Response.Write StrCnn & "<Br>" '看看输出的结果
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.CursorLocation = adUseServer
objRS.CursorType = adOpenKeyset
objRS.LockType = adLockOptimistic
objRS.Open "运货商", Cnn, , , adCmdTable
objRS.AddNew
objRS("公司名称") = "吴丰"
objRS("电话") = "571-7227298"
objRS.Update
ID = objRS("运货商ID")
Response.Write "新增记录运货商ID为 "
Response.Write ID & ".<BR><BR>"
objRS.Close
objRS.CursorLocation = adUseClient
objRS.CursorType = adOpenForwardOnly
objRS.LockType = adLockReadOnly
objRS.Open "运货商", Cnn, , , adCmdTable
%>
<HTML><BODY>
下面为显示信息部分-运货商ID: 公司名称 电话<BR><BR>
<%
While Not objRS.EOF
strOut = objRS("运货商ID") & ": " & objRS("公司名称")
strOut = strOut & " " & objRS("电话")
Response.Write Server.HTMLEncode(strOut) & "<BR>"
objRS.MoveNext
Wend
objRS.close : Cnn.close
Set objRS = Nothing : Set Cnn = Nothing
%>
</BODY></HTML>
- ASP数据库编程技巧(一)
- ASP数据库编程技巧
- ASP数据库编程技巧
- ASP编程入门进阶(十二):ASP技巧累加(一)
- Matlab编程技巧(一)
- ASP编程十大技巧(基础)
- ASP编程十大技巧(基础)
- ASP编程技巧大全
- ASP.NET编程技巧
- ASP编程入门进阶(廿一):DAO SQL之建立数据库表
- ASP编程入门进阶(廿一):DAO SQL之建立数据库表
- ado数据库编程(一)
- Delphi数据库编程技巧
- 数据库设计技巧(一)
- Delphi编程技巧(一)内存管理
- .net编程中的一些技巧(一)
- MFC 编程小技巧日积月累 ( 一 )
- 一些编程的小技巧(一)
- 新教师不能不读的三个故事
- 如何从多个项目创建 ASP.NET 应用程序以进行组开发(转贴)
- 测试
- 质疑AJAX的七宗罪
- C++ Design Patterns : Template + Factory Method
- ASP数据库编程技巧(一)
- 数据库操作 —— 查询语句小结
- Windows2003系统用户密码丢失的解决办法
- 寂寞不是出轨的理由
- 真正喜欢你的男孩
- 过程改进是否一定提高软件质量?
- 历届世界杯冠军队伍介绍
- CMNET和CMWAP
- 感激之心