日期:2014-05-17  浏览次数:20744 次

asp+sql的问题
asp代码如下:
......
set   rs=   Server.CreateObject( "ADODB.Recordset ")  
sql= "select   *   from   table1   where   id=1 "
rs.open   sql,conn,1,3
rs( "abc ")=1
rs.update
......

打开页面后,在SQL   Server   Profiler跟踪结果出现相应的操作:
......
exec   sp_cursor   180150007,33,1,N ' ',@abc=1
......

但table1的abc没有update成功

请问是什么原因,谢谢!

------解决方案--------------------
rs.open sql,conn,1,3前加上 rs.cursorlocation=3

或将
set rs= Server.CreateObject( "ADODB.Recordset ")
sql= "select * from table1 where id=1 "
rs.open sql,conn,1,3
rs( "abc ")=1
rs.update
直接改成:
conn.execute( "update table1 set abc=1 where id=1 ")

另外,确保abc为数字型字段,若是字符型,用abc= '1 '