存库时出现'bof 或 eof 中有一个是“真”.'的有关问题!请帮忙看下吧~

存库时出现'bof 或 eof 中有一个是“真”...............'的问题!请帮忙看下吧~~
自己弄了简单的产品管理这类的东东,在 '修改产品信息 '这个模块出现了问题,

而且是在存库的时候,(因为我用JS写了个判断用户输入格式的验证),错误为:

错误类型:
ADODB.Recordset   (0x800A0BCD)
BOF   或   EOF   中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。
/kfedit/yx_xg.asp,   第   111   行

部份代码为:
set   rsyx=server.createobject( "adodb.recordset ")


sql= "select   *   from   yx_data     where   user_id= ' "   &user_id   &   " '   and   id=   "&id& "     "  
                rsyx.open   sql,conn,3,3        
                rsyx( "user_Unit ")                   =user_Unit      
                rsyx( "yx_htbh ")                       =yx_htbh
                rsyx( "yx_yxhz ")                       =yx_yxhz
                rsyx.update
                rsyx.close  

................

yx_data     为库中的一个表
user_id     为用户编号,此编号在库中是唯一的;
id     是自动编号的,在表中是唯一的;


/kfedit/yx_xg.asp,   第   111   行    
                                        这行即是:rsyx( "user_Unit ")                   =user_Unit      


  各位,帮忙看下吧~~   不知道我把问题说清楚了没有~~在线等,急~~


------解决方案--------------------
晕我看成插入操作了不好意思
你确信这条记录的存在吗?
------解决方案--------------------
你的字段名有错user_Unit,看数据库中的字段名叫什么吧
------解决方案--------------------
应该是没有找到符合条件的记录,你改这样,应该说不会报错
sql= "select * from yx_data where user_id= ' " &user_id & " ' and id= "&id& " "
rsyx.open sql,conn,3,3
if not(rsyx.eof and rsyx.eof) then
rsyx( "user_Unit ") =user_Unit
rsyx( "yx_htbh ") =yx_htbh
rsyx( "yx_yxhz ") =yx_yxhz
rsyx.update
end if
rsyx.close


------解决方案--------------------
sql= "select * from yx_data where user_id= ' " &user_id & " ' and id= "&id& " "
rsyx.open sql,conn,3,3
if not(rsyx.eof and rsyx.eof) then
rsyx( "user_Unit ") =user_Unit
rsyx( "yx_htbh ") =yx_htbh
rsyx( "yx_yxhz ") =yx_yxhz
rsyx.update
else
response.write( " <script> alert( '操作的记录不存在! ');history.go(-1); </script> ")
response.end
end if
rsyx.close
看看什么效果?????????

------解决方案--------------------
set rsyx = server.createobject( "adodb.recordset ")