我用ado绑定的,有的帖子给出以下方法:
with msflexgrid
for i=1 to .row-1
strsql="insert into tablename(...) values(...)"
conn.execute strsql
next i
end with
但是我的问题不同,需要将几个隐藏的关键字跟每条记录一同保存到数据库,请问该怎么实现呢?多给思路,多给代码,谢谢!
with msflexgrid
for i=1 to .row-1
strsql="insert into tablename(...) values(...)"
conn.execute strsql
next i
end with
但是我的问题不同,需要将几个隐藏的关键字跟每条记录一同保存到数据库,请问该怎么实现呢?多给思路,多给代码,谢谢!
'.row表示当前行,.rows表示总行数
我的代码如下:
With yzhib.Recordset
For i = 1 To MSFlexGrid1.rows - 1
.AddNew
.Fields(0) = ppID
.Fields(1) = applyId
.Fields(2) = MSFlexGrid1.TextMatrix(i, 4)
.Fields(3) = MSFlexGrid1.TextMatrix(i, 2)
.Fields(4) = MSFlexGrid1.TextMatrix(i, 1)
.Fields(5) = MSFlexGrid1.TextMatrix(i, 3)
Next
.Update
End With
我想逐条写入数据库,结果:报错多步操作引发的错误,那位有思路啊?赐教
For i = 1 To MSFlexGrid1.rows - 1
.AddNew
.Fields(0) = ppID
.Fields(1) = applyId
.Fields(2) = MSFlexGrid1.TextMatrix(i, 4)
.Fields(3) = MSFlexGrid1.TextMatrix(i, 2)
.Fields(4) = MSFlexGrid1.TextMatrix(i, 1)
.Fields(5) = MSFlexGrid1.TextMatrix(i, 3)
.Update '放到这里看看
Next
End With
With yzhib.Recordset
For i = 1 To MSFlexGrid1.rows - 1
.AddNew
.Fields(0) = ppID
.Fields(1) = applyId
.Fields(2) = MSFlexGrid1.TextMatrix(i, 4)
.Fields(3) = MSFlexGrid1.TextMatrix(i, 2)
.Fields(4) = MSFlexGrid1.TextMatrix(i, 1)
.Fields(5) = MSFlexGrid1.TextMatrix(i, 3)
Next
.Update
End With 如果你要上述效果必须将记录集的打开方式设置为批更新模式:
rs.CursorLocation =adUseClient
rs.open sql,cnn,adOpenStatic,adLockBatchOptimstic