有经验的人指点一下,执行完一个update的SQL语句后如何判断是否正确执行了

Soundboy 2005-03-30 04:34:05
Set conn = Server.CreateObject("ADODB.Connection")
strOpen = "Driver={SQL Server};Server="&HostName&";UID="&DBUser&";PWD="&DBPwd&";Database=E-RINGI"
conn.Open strOpen
sql = "SELECT * FROM RINGIMEISAI_TBL WHERE ID="&ringi_id
set rsUp = nothing
Set rsUp = Server.CreateObject("ADODB.Recordset")
rsUp.open sql,Conn,1,1


执行完这段代码后,数据库就更新了,可是有时候执行错误(比如 ringi_id 没有)如何知道执行错误呀
我发现 rsUp.State 永远都是0

说白了就是做数据库更新的错误处理。
...全文
216 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
hhjjhjhj 2005-03-30
  • 打赏
  • 举报
回复
response.write conn.errors.count
for each er in conn.errors
response.write er.Description
next
ares4u 2005-03-30
  • 打赏
  • 举报
回复
>打开数据库,进去看看有没有记录

寒啊~~~~-_-#
Aspclass 2005-03-30
  • 打赏
  • 举报
回复
该这样哦
Set conn = Server.CreateObject("ADODB.Connection")
strOpen = "Driver={SQL Server};Server="&HostName&";UID="&DBUser&";PWD="&DBPwd&";Database=E-RINGI"
conn.Open strOpen
sql = "SELECT * FROM RINGIMEISAI_TBL WHERE ID="&ringi_id
Set rsUp = Server.CreateObject("ADODB.Recordset")
rsUp.open sql,Conn,1,1
if ... then
update 语句
else
err.numberend if

你上面写的。set rsup=nothing
试问把rs的工作都停止了。。你下面的还有用不??

Soundboy 2005-03-30
  • 打赏
  • 举报
回复
谢谢各位的回复
问题还没有解决,
rsUp.recordcount 系统根本就不认,出错了不知道怎么回事

Err.number 始终是0,错误正确都是0

阿_浩 2005-03-30
  • 打赏
  • 举报
回复
判断Err.number
xiaozx 2005-03-30
  • 打赏
  • 举报
回复
可以用事务处理
ryuginka 2005-03-30
  • 打赏
  • 举报
回复
update语句 rsUp.recordcount肯定大于0
//
返回的是受影响的结果数,如果没有更新,就等于零
underone 2005-03-30
  • 打赏
  • 举报
回复
if rsUp.recordcount>0 then
'执行成功
end if
update语句 rsUp.recordcount肯定大于0
underone 2005-03-30
  • 打赏
  • 举报
回复
打开数据库,进去看看有没有记录
ryuginka 2005-03-30
  • 打赏
  • 举报
回复
你还可以用存储过程来做
ryuginka 2005-03-30
  • 打赏
  • 举报
回复
Set conn = Server.CreateObject("ADODB.Connection")
strOpen = "Driver={SQL Server};Server="&HostName&";UID="&DBUser&";PWD="&DBPwd&";Database=E-RINGI"
conn.Open strOpen
sql = "update RINGIMEISAI_TBL set 字段='dsfsd' " & " WHERE ID="&ringi_id
set rsUp = nothing
Set rsUp = Server.CreateObject("ADODB.Recordset")
rsUp.open sql,Conn,1,1
if rsUp.recordcount>0 then
'执行成功
end if
baikaishui_0825 2005-03-30
  • 打赏
  • 举报
回复
不知道你是不是这个意思?

On Error Resume Next
'更新语句
if Err.number>0 then
response.write("更新错误")
end if
Err.Clear

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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