编程论坛
注册
登录
编程论坛
→
VB6论坛
循环的一个问题
ykk1106
发布于 2018-02-05 19:48, 1537 次点击
怎么把循环中msgbox每次得到的一组数据共(共i*j组),放入到sql的语句中写入数据库。
现在执行只能取到循环完成后的最后一组数据,执行了一次sql语句,怎么执行(i*j)次,循环插入数据库中??
只有本站会员才能查看附件,请
登录
只有本站会员才能查看附件,请
登录
4 回复
#2
风吹过b
2018-02-05 20:33
每次生成 SQL 命令后,调用执行过程 执行一下 。
#3
wds1
2018-02-06 08:17
你的sql循环赋值后,没有执行查询程序。
你把查询放到循环体内,否则只能执行最后赋值的sql查询。
#4
ZHRXJR
2018-02-06 09:22
回复 楼主 ykk1106
我认为你的这个有问题,1、s是动态数组,使用 split(Text1.Text,vbCrLf) 分割应该没有问题。
2、你的sql语句应该有问题,没有添加数据的字段名,数据不知道应该添加在那里?
3、在二层循环中使用Msgbox语句想得到全部循环内容,是不可能的,因为在循环中每次均更新Msgbox的值,直至退出循环时的值,因此,显示的是最后一条。
解决办法:
你可以在循环外声明一个字符变量(例如:XHzfc As String),在循环体中
XHzfc = XHzfc & "每次循环的值" & vbCrLf
最后循环结束后,在循环体外 Msgbox = XHzfc 将可以了。
4、现在你仅仅是sql语句,没有对数据表进行更新,因此数据表不会添加记录的!
#5
ykk1106
2018-02-07 13:35
谢谢大家的指点
我把rs.Open Trim(sql), mycon, adOpenKeyset, adLockOptimistic 这条语句拿到循环内放在sql的后面 ,
数据就可以全部取到了
1