Office中国论坛/Access中国论坛

标题: 求助,循环添加记录时只显示N条最后一个记录 [打印本页]

作者: cbeny    时间: 2014-11-18 14:31
标题: 求助,循环添加记录时只显示N条最后一个记录
为了记录修改的日志,
将一个表中的数据(temp1),增加一个字段(text11.value)后添加到另一个表单(olog)中,
代码如下,
在运行时,添加进去的记录只有最后一条重复N次,
求教~~

Private Sub Command10_Click()
Dim rs As New ADODB.Recordset
Dim icount As Integer
Dim sql As String
Dim dbscurrent As Database

If Text11.Value = "" Then
  MsgBox "请输入修改时间"
  Exit Sub
End If


Set dbscurrent = CurrentDb
rs.Open "temp1", CurrentProject.Connection, adOpenKeyset, adLockOptimistic

rs.MoveFirst

icount = 0

For icount = 0 To rs.RecordCount - 1
sql = "insert into olog values(text11.value,配方,项目,值,修改后值)"
DoCmd.RunSQL sql
rs.MoveNext
Next icount


End Sub



作者: roych    时间: 2014-11-18 15:16
本帖最后由 roych 于 2014-11-18 15:22 编辑

应该是把runsql部分改为update 吧?
这样肯定是追加查询,自然会追加Recordcount条记录了。
作者: cbeny    时间: 2014-11-18 15:37
roych 发表于 2014-11-18 15:16
应该是把runsql部分改为update 吧?
这样肯定是追加查询,自然会追加Recordcount条记录了。

是要添加多条记录,
但是实际运行的时候只添加了多条一样的记录
作者: cbeny    时间: 2014-11-18 15:43
运行时的图片,
还有TEXT11为空的时候怎么也能记录了?

作者: roych    时间: 2014-11-18 16:08
本帖最后由 roych 于 2014-11-18 16:37 编辑

把sql语句改成:
sql = "insert into olog values('" & text11.value & "','" & rs("配方")& "','" & rs("项目)" & "','" & rs("值")& "','" & rs("修改后值")&"')"
再试试另外,空值最好用Null来判断。

作者: cbeny    时间: 2014-11-18 16:33
roych 发表于 2014-11-18 16:08
把sql语句改成:
sql = "insert into olog values('" & text11.value&"','" & rs("配方")& "','" & rs("项 ...

第一个逗号那提示“缺少:语句结束“
那几个引号试得我头晕眼花都搞不定。。。

那个文本框为空的问题我试了一下在FORM_LOAD设定text11.value=”“,
之后没问题了
作者: roych    时间: 2014-11-18 16:36
cbeny 发表于 2014-11-18 16:33
第一个逗号那提示“缺少:语句结束“
那几个引号试得我头晕眼花都搞不定。。。

传附件吧。当你的字段为文本时必须要加单引号(或者双引号)。
作者: cbeny    时间: 2014-11-18 16:38
roych 发表于 2014-11-18 16:08
把sql语句改成:
sql = "insert into olog values('" & text11.value & "','" & rs("配方")& "','" & rs(" ...

加多一个空格,可以了!!

谢谢!!
作者: cbeny    时间: 2014-11-18 16:40
roych 发表于 2014-11-18 16:08
把sql语句改成:
sql = "insert into olog values('" & text11.value & "','" & rs("配方")& "','" & rs(" ...

这个问题的原因是什么呢?我应该看哪方面的资料来学习,
请高手指点指点,多谢




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