asp数据库问题,help~
刚学asp,用recordset添加记录和进行sql操作老是出错。。
我是这样写的:
Set dbconnection=Server.CREATEOBJECT("ADODB.CONNECTION")
dbconnection.Open"×××××××"
Dim StrSQL
StrSQL="select * from tablename"
Set rs = Server.CreateObject("ADODB.RecordSet")
rs.Open StrSQL,dbconnection,adOpenForwardOnly,adLockOptimistic
调试时在 rs.open这句显示出错,请问究竟是怎么回事?
recordset 的 open的参数 该怎么用?
谢谢
p.s: 我是用access做database的
问题点数:100、回复次数:8Top
1 楼freezwy(网络自由人)回复于 2002-05-23 17:32:38 得分 10
试试:
rs.open strsql,dbconnection,1,3Top
2 楼hhwlc(欧文)回复于 2002-05-23 17:40:33 得分 10
建议新手不要使用dbconnection,adOpenForwardOnly,adLockOptimistic 等参数。。Top
3 楼zcfmichael(eyedrop)回复于 2002-05-23 17:50:06 得分 0
我用过 rs.open tablename,dbconnection,2,2
然后用 rs.addnew
....
rs.update
添加记录,对过几次,后来都不行了,在rs.update出错
很奇怪,参数1,3也不行的说。
如果不用recordset,那该怎么添加记录?
谢谢Top
4 楼spgoal(敏捷的狗狗)回复于 2002-05-23 17:58:01 得分 10
试试rs.Open StrSQL,dbconnection,1,2
还有可能是StrSQL查询语句出错,或者是dbconnection有错误Top
5 楼funboy88(司令)回复于 2002-05-23 18:03:12 得分 20
<%
Set con = Server.CreateObject("ADODB.Connection")
DBPath = Server.MapPath("数据库相对路径")
con.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath & ";DriverId=25;FIL=MSAccess"
Set rs = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM 表名"
rs.Open SQL,Con,1,3
do while (not rs.eof)
respose.write rs("字段名")
rs.movenext
loop
rs.close
set rs=nothing
con.close
set con=nothing
%>
Top
6 楼spgoal(敏捷的狗狗)回复于 2002-05-23 18:04:19 得分 20
rs.open StrSQL,dbconnection,1,2
还有就是要查查rs是否没关闭,connection对象名是否正确,以及StrSQL是否没错
Top
7 楼popcode(枫.net)回复于 2002-05-23 18:22:30 得分 20
参数如下:
RS.OPEN SQL,CONN,A,B
A: ADOPENFORWARDONLY(=0) 只读,且当前数据记录只能向下移动
ADOPENSTATIC(=3) 只读,当前数据记录可自由移动
ADOPENKEYSET(=1) 可读写,当前数据记录可自由移动
ADOPENDYNAMIC(=2) 可读写,当前数据记录可自由移动,可看到新增记录
B: ADLOCKREADONLY(=1) 默认值,用来打开只读记录
ADLOCKPESSIMISTIC(=2) 悲观锁定
ADLOCKOPTIMISTIC(=3) 乐观锁定
ADLOCKBATCHOPTIMISTIC(=4) 批次乐观锁定Top
8 楼hhytsoft(雨中独行)回复于 2002-05-23 18:54:32 得分 10
1.你要用到游标的几个常量,需要事先声明方法有两个,第一个就是把ADO的所有常量都include进来,或者加这句
<!-- METADATA TYPE="typelib" FILE="c:\program files\common files\system\ado\msado15.dll"-->
(VB可以直接使用常量不用声明)
2。注意结果集的状态以及相应内容的变化,建议你看看ado方面的资料有好处你写程序Top
9 楼zcfmichael(eyedrop)回复于 2002-05-23 19:51:36 得分 0
谢谢各位,问题找到了。
1,由于我填的表格字段有的是空的,将空字段填入表中是非法的,错误就是这样造成的。
2,不小心把rs.close写到dbconnection.close去了,太马虎了。
我会送上分的,3Q~Top




