请教下, ASP更新数据UPDATE时 WHERE语句的用法是怎么样的 ?

[复制链接]
查看11 | 回复3 | 2007-1-20 15:55:20 | 显示全部楼层 |阅读模式
改为
回复

使用道具 举报

千问 | 2007-1-20 15:55:20 | 显示全部楼层
看是否打印出sql字符串,不答应说明没有执行!否则把打印的代码拿到查询分析器执行一下看看另:更新字段多,建议用 rs.update
回复

使用道具 举报

千问 | 2007-1-20 15:55:20 | 显示全部楼层
数字没有'' 如果这样不行的话可以用Set rs=server.Createobject("adodb.recordset")sql="Select * [table] where 字段=1"rs.open sql,conn,1,3rs("字段")="数值"....rs.updaters.close 试试
回复

使用道具 举报

千问 | 2007-1-20 15:55:20 | 显示全部楼层
asp更新数据库时,可以用以下方式(我常用的,还有其他的方式):一、用recordset记录集的方式。rs.open "select * from tablename where id="&request("id"),conn,1,3rs("a")=request("a")rs("b")=request("b")rs.updaters.close用这种方式进行数据更新,有个好处就是当要更新的数据量非常大时,也可以很顺利的更新成功(比如备注型字段的数据,中间还包含了换行等等的)二、用sql的update语句:conn.execute("update tablename set a='"&request("a")&"',b='"&request("b")&"',c="&request("c")&" where id="&request("id"))用上面的方法更新数据时,如果是SQL数据库,而你要更新的数据内容里含有比如单引号['],双横线[--]之类的特殊字符,就会更新不成功的,因为这时候SQL会认为是非法字符,而把你的单引号给去掉的。而且当如果更新的是备注型字段,里面包含了换行等字符,也会显得很乱。但用这种方法更新,速度比用recordset的速度要快很多,因为毕竟这是直接更新数据库,而recordset是对update的封装形式。其实更新数据库,非常简单,如果你对字符串连接的单引号,双引号,&号的使用觉得很混乱,那就用recordset的方式进行,这样会很清晰,一点都不会有混乱的感觉的。而如果你能熟练的使用单引号,双引号,&号,那么你用update语句更新数据库,就大在的提交了速度(当然如果数据量小,我建议用recordset记录集的方式,因为这种方式一个字段对应一个值,一行一个,这样下来,很清晰,还可以对每行做个备注,以后改起来也方便。而用update的方式,所有的值和记录全部连在一块,老长的一串,看得人头都发麻,而且update还不能添加特殊字符,比如上面说的单引号等。。。)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行