为什么用循环写出的insert语句不能循环插入数据

naliver 2003-05-15 11:40:33
源代码如下:
for i=1 to n
sql="insert user(username,password) values(xlsheet(i,1),xlsheet(i,2))"
rs.open sql,ado……
i=i+1
next i
xlsheet为一Excel工作表
数据库ado连接正常
试过分别把insert写两次,可以成功
...全文
113 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Quady515 2003-05-16
  • 打赏
  • 举报
回复
这种错误是不容易一眼看理出来哈.
xo2000 2003-05-16
  • 打赏
  • 举报
回复
同意xayzmb(行者) 的看法。
rs在处于打开状态时,若未被close或 set new的话,是不能再open的
lxcc 2003-05-16
  • 打赏
  • 举报
回复
呵呵!
naliver 2003-05-16
  • 打赏
  • 举报
回复
谢谢各位
其实我犯了一个低级错误,本来的for循环是执行一次递增一的,我还用了一个i=i+1,所以出现与循环次数不同的插入结果
自己写的时候确实是用的柱子的方法,提问时程序没带,笔误了,不好意思,^_^
同意行者的看法,其实对于不返回结果的操作,一般都用Execute方法
xayzmb 2003-05-16
  • 打赏
  • 举报
回复
执行insert 或 delete 等操做时
我觉得用connection或command更方便些
如果你一定要用recordset
在open之前加上这个
if rs.state<>0 then
rs.close
end if
Quady515 2003-05-15
  • 打赏
  • 举报
回复
sql="insert user(username,password) values('" & xlsheet(i,1) & "','" &
xlsheet(i,2) & "')"

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧