【发布时间】:2015-06-19 22:37:18
【问题描述】:
我有两个记录集,它们想通过另一个值来更新其中一个。我确实喜欢这个
stSql = "SELECT dbo.tblCableProperty.CatalogCode FROM dbo.tblCable INNER JOIN " & _
" dbo.tblCableProperty ON dbo.tblCable.CablePcode = dbo.tblCableProperty.CablePcode" & _
" WHERE dbo.tblCable.prjsubcode=" & prjsubcode & " AND dbo.tblCable.Active=1 " & " And dbo.tblCable.Gtag='" & Gtag & "' And dbo.tblCable.TagNo=" & tagno & " And dbo.tblCable.NTag=" & NTag & " And dbo.tblCable.EndStr='" & EndStr & "'"
rs.Open stSql, cn, adOpenStatic, adLockOptimistic
catalogCode = rs!catalogCode
rs.Close
stSql = "SELECT *,'' as ShowNum FROM viwShowNum WHERE prjsubcode=" & prjsubcode & " AND Active=1 " & " And Gtag='" & Gtag & "' And TagNo=" & tagno & " And NTag=" & NTag & " And EndStr='" & EndStr & "' ORDER BY 8"
rs.Open stSql, cn, adOpenDynamic, adLockOptimistic
rs.MoveFirst
stSql = "Select * from tblCoreCode where CatalogCode=" & catalogCode
Set rsCoreCode = New ADODB.Recordset
rsCoreCode.CursorLocation = adUseClient
rsCoreCode.Open stSql, cn, adOpenStatic, adLockOptimistic
While Not rs.EOF
criteria = "RealNum='" & rs!CoreNo & "'"
rsCoreCode.Filter = criteria
rs!ShowNum = CStr(rsCoreCode!ShowNum)
rsCoreCode.Filter = adFilterNone
rs.MoveNext
Wend
我在这部分收到以下错误
rs!ShowNum = CStr(rsCoreCode!ShowNum)
multiple-step operation generated errors. check each status value
rsCoreCode!ShowNum 是 varchar(5)。我试图设置值
rs!ShowNum = "1"
但我又遇到了同样的错误。 问题出在哪里?
谢谢
【问题讨论】:
-
*,''部分在stSql = "SELECT *,'' as ShowNum FROM ...行中是什么意思? -
* 表示所有字段,'' as ShowNum 表示我将另一个字段添加到记录集中以稍后填充它
-
谢谢。可以使用
as为选定列分配别名。 msdn.microsoft.com/en-us/library/h09t6a82%28v=vs.80%29.aspx 是否创建新列? -
如何将字段附加到现有记录集?
-
我的问题是真正的问题。我一直在努力理解你的代码。再次感谢您的回复。添加新字段:msdn.microsoft.com/en-us/library/windows/desktop/… 可能是这样的:
rs.fields.append "ShowNum", adChar, 5, adFldUpdatable
标签: vb6