ASP连接数据库

这篇博客介绍了如何使用ASP通过ADO组件连接并操作SQL Server和Access数据库,包括定义数据源、打开数据库、执行SQL命令、处理RecordSet以及事务处理的步骤。同时,文章提供了遇到错误时的解决方案,例如权限问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ASP访问数据库步骤

  在ASP中,使用ADO组件访问后台数据库,可通过以下步骤进行:

  1. 定义数据源

  在WEB服务器上打开“控制面板”,选中“ODBC”,在“系统DSN”下选“添加”,选定你希望的数据库种类、名称、位置等。本文定义“SQL SERVER”,数据源为“HT”,数据库名称为“HTDATA”,脚本语言采用Jscript。

  2,使用ADO组件查询WEB数据库

  1) 调用Server.CreateObject方法取得“ADODB.Connection”的实例,再使用Open方法打开数据库:

  conn = Server.CreateObject(“ADODB.Connection”)

  conn.Open(“HT”)

  2) 指定要执行的SQL命令

  连接数据库后,可对数据库操作,如查询,修改,删除等,这些都是通过SQL指令来完成的,如要在数据表signaltab中查询代码中含有“X”的记录

  sqlStr = “select * from signaltab where code like ‘%X%’”

  rs = conn.Execute(sqlStr)

  3) 使用RecordSet属性和方法,并显示结果

  为了更精确地跟踪数据,要用RecordSet组件创建包含数据的游标,游标就是储存在内存中的数据。

  rs = Server.CreateObject(“ADODB.RecordSet”)
  rs.Open(sqlStr,conn,1,A)
  注:A=1读取
  A=3 新增、修改、删除
  在RecordSet组件中,常用的属性和方法有:
  rs.Fields.Count: RecordSet对象的字段数。
  rs(i).Name: 第i个字段的名称,i为0至rs.Fields.Count-1
  rs(i): 第i个字段的数据,i为0至rs.Fields.Count-1
  rs("字段名"): 指定字段的数据。
  rs.Record.Count:游标中的数据记录总数。
  rs.EOF: 是否最后一条记录。
  rs.MoveFirst: 指向第一条记录。
  rs.MoveLast: 指向最后一条记录。
  rs.MovePrev: 指向上一条记录。
  rs.MoveNext: 指向下一条记录。
  rs.GetRows: 将数据放入数组中。
  rs.Properties.Count:ADO的ResultSet或Connection的属性个数。
  rs.Properties(item).Name:ADO的ResultSet或Connection的名称。
  rs.Properties: ADO的ResultSet或Connection的值。
  rs.close(): 关闭连接。

  4) 关闭数据库

  conn.close()

ASP中数据库连接方法

http://hi.baidu.com/yakoo%5F/blog/item/82950a33114524f91a4cff9d.html

在access中连接时可以按如下方式:

database="../chap06/DataBase.mdb"
strConn="provider=Microsoft.jet.oledb.4.0;data source="&Server.MapPath(database)
set conn=server.CreateObject("ADODB.Connection")
conn.open strConn

事物处理

database="../chap06/DataBase.mdb"
strconn="provider=Microsoft.jet.oledb.4.0;data source="&server.MapPath(database)
set conn=server.CreateObject("ADODB.connection")
conn.open strconn

conn.begintrans()    '开始事物处理
conn.execute("update user_info set uname='abc' where uid=1")
conn.execute("update user_info set uname='abc' where uid=2")
conn.committrans()    '结束事物处理
conn.close

在执行sql语句中当有涉及到修改语句的时候,当出现错误不能删除或者没有权限等情况(0x80004005)

解决方法总结:

1.现示文件的“安全”选项标签:

控制面板——>文件夹选项——>查看——>不勾选“使用简单文件夹共享”——>应用确定

2.将数据库文件的权限修改:(修改和写入)

获取数据库中数据例

set rs=server.CreateObject("adodb.recordset")
rs.open "select * from user_info",myconn,1,1
response.Write("<table border=1>")
response.Write("<tr><td>编号</td><td>用户名</td><td>密码</td></tr>")
do while not rs.eof
response.Write("<tr><td>"&rs("uid")&"</td><td>"&rs("uname")&"</td><td>"&rs("upassword")&"</td></tr>")
rs.movenext
loop
response.Write("</table>")
rs.close

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值