注册 登录
编程论坛 ASP技术论坛

SQL更新

awke002 发布于 2008-10-06 16:58, 657 次点击
本意是想修改更新以后在添加到数据库里面,下面是代码:

Dim Conn,objRS,SQL
  
  '初始化数据库连接
  Set Conn = Server.CreateObject("ADODB.Connection")                          
  Conn.ConnectionString ="provider=sqloledb;data source=local;uid=sa;pwd= ;database=****"
              
  '打开数据库连接
  Conn.Open
        
  'SQL语句
  SQL = "SELECT * FROM sj_info Where  user_id=" &User_id

  
  '打开数据集
  Set RS = Server.CreateObject("ADODB.Recordset")
  RS.Open SQL, Conn,1,3

  
 RS.Update Array("sj_name", "sj_tel", "sj_di", "sj_hy", "sj_jf","sj_jj","sj_hd","sj_lx","sj_emali","sj_zp","sj_gg","sj_bh","sj_lb","sj_cd","sj_sy","sj_time"),Array(name, tel, di, hy, jf,jj,hd,lx,email,zp,gg,bh,lb,cd,sy,times)

报了下面的错误:
Description: 在对应所需名称或序数的集合中,未找到项目。

我都是按照着表中的列来填写的啊,数据库也打开了,测试sql语句也是正确的,但是就是在更新的时候报了上述的错误.
3 回复
#2
yms1232008-10-06 17:53
'打开数据集
  Set RS = Server.CreateObject("ADODB.Recordset")
  RS.Open SQL, Conn,1,3
Rs("sj_name")=name
Rs("sj_tel")=tel
Rs("sj_di")=di
Rs("sj_hy")=hy
Rs("sj_jf")=jf
Rs("sj_jj")=jj
Rs("sj_hd")=hd
Rs("sj_lx")=lx
Rs("sj_emali")=email
Rs("sj_zp")=zp
Rs("sj_gg")=gg
Rs("sj_bh")=bh
Rs("sj_lb")=lb
Rs("sj_cd")=cd
Rs("sj_sy")=sy
Rs("sj_time")=times
Rs.Update
#3
hmhz2008-10-06 17:59
楼上兄弟总喜欢这样来修改或添加信息,这样写法虽然不用考虑字段类型,但效率很低的

conn.execute "update 表名 set 字段1='"&变量名1&"',字段2='"&变量名2&"' where id="&id
#4
awke0022008-10-07 09:17
谢谢两位版主的帮忙!
搞定了,我是用了hmhz版主的方法,我是觉得hmhz版主的方法直观一点!
1