Office中国论坛/Access中国论坛

标题: ACCESS中,编辑记录集,一次赋值影响到多行 [打印本页]

作者: 望储公    时间: 2016-11-11 15:00
标题: ACCESS中,编辑记录集,一次赋值影响到多行
DIM R(0) AS ADODB.RECORDSET,S(0) AS STRING
S(0)="SELECT 表1.字段3 FROM 表1"
S(0)=S(0) & " WHERE 表1.字段1=‘BZRJH’ AND 表1.字段2=1"       '字段1和字段2构成表1的主键
CALL ADORcrdst(S(0),R(0))                                                     '自定义记录集打开的函数
WITH R(0)
    .FIELDS("字段3").VALUE="AADD"
    .UPDATE         '出错提示:-2147467259  键列信息不足或不正确。更新影响到多行
END WITH

记录集变量打开后,对该记录集变量的编辑,只对应一条记录,为什么会更改多行?
作者: roych    时间: 2016-11-12 00:51
1、发错版块被关注是比较少的。
2、我不知道你的自定义函数是怎么写的,从个人经验来看,自定义函数应当返回一个记录集,否则R(0)就是一个未被传递参数的对象。既然没有传递参数,with部分自然就出错。
3、没附件,没子函数,一般很难排查。

根据目前get到的信息,修改意见如下:

自定义函数部分:
Function ADORcrdst(ByVal strSQL As String)  AS ADODB.Recordset
………………
End Function

主体函数部分:
Set R(0)=ADORcrdst(S(0))   
With R(0)
………………
End With




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3