订阅本栏目 RSS您所在的位置: 深山工作室 > ASP > 正文

asp事务处理 for mssql

网络 2009/5/6 20:59:22 深山行者 字体: 浏览 6328

<%
'asp事务处理。
'测试数据库为sql server,服务器为本机,数据库名为test,表名为a,两个字段id(int)主键标识,num(int)
set conn=server.CreateObject("adodb.connection")
strConn="provider=sqloledb.1;persist security info=false;uid=sa;pwd=sa;Initial Catalog=test;Data Source=."
conn.Open strConn
'以上代码建立数据库连接
conn.BeginTrans '事务开始
strSql1="update a set num=1000 where id=24" '第一个sql语句为update。(语法正确)
strSql2="insert into a(num) values('a')" '第二个sql语句为错误的sql语句
strSql3="insert into a(num) values(33333)" '第三个sql语句为正确的sql语句


call conn.execute(strSql1)  
call conn.execute(strSql2)  
call conn.execute(strSql3)  


if conn.Errors.Count=0 then  
       conn.CommitTrans   '如果没有conn错误,则执行事务提交
else
       conn.RollbackTrans '否则回滚
end if
%>
以上代码经调试,可以正常的进行事务处理。但是有时候,我们并不想将编译错误显示给用户。
则我们需要在conn.BeginTrans后面加上On error resume next
但是因为用到了On error resume next。conn.Errors.Count只能获得最后一个数据库操作的conn返回的结果 。上面的三个sql语句,因为最后一个sql语句是正确的,则此事务处理就无效了。那我们需要对出错处理作出相对应的修改。
if conn.Errors.Count=0 then应该改为if err.number=0 then
这样,我们可以在数据库回滚后同时做出其他相对应的操作或者提示。修改后的代码如下:
<%
set conn=server.CreateObject("adodb.connection")
strConn="provider=sqloledb.1;persist security info=false;uid=sa;pwd=sa;Initial Catalog=test;Data Source=."
conn.Open strConn
'以上代码建立数据库连接
conn.BeginTrans '事务开始
on error resume next '增加的代码
strSql1="update a set num=1000 where id=24" '第一个sql语句为update。(语法正确)
strSql2="insert into a(num) values('a')" '第二个sql语句为错误的sql语句
strSql3="insert into a(num) values(33333)" '第三个sql语句为正确的sql语句


call conn.execute(strSql1)  
call conn.execute(strSql2)  
call conn.execute(strSql3)  


if err.number =0 then  
     conn.CommitTrans   '如果没有conn错误,则执行事务提交
else
     conn.RollbackTrans '否则回滚
     '回滚后的其他操作
     strerr=err.Description
     Response.Write "数据库错误!错误日志:<font color=red>"&strerr &"</font>"
     Response.End
end if


%>

相关阅读
CSS中word-wrap属性同word-break属性的两者在中英文混排时的区别
网页设计的十要十不要
凹陷文字
昆山旅游网
屏幕两种色彩左右像电影屏幕一样分开
利用asp正则功能去除网页中自定义HTML标记(来自eWebEditor)
利用javascript做的页内(详细页)搜索功能并将结果高亮突出显示
深山文章管理系统 v1.0 bulid 090418
共有0条关于《asp事务处理 for mssql》的评论
发表评论
正在加载评论......
返回顶部发表评论
呢 称:
表 情:
内 容:
评论内容:不能超过 1000 字,需审核,请自觉遵守互联网相关政策法规。
验证码: 验证码 
网友评论声明,请自觉遵守互联网相关政策法规。

您发布的评论即表示同意遵守以下条款:
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家、社会、集体和公民的合法权益;
二、不得发布国家法律、法规明令禁止的内容;互相尊重,对自己在本站的言论和行为负责;
三、本站对您所发布内容拥有处置权。

更多信息>>栏目类别选择
百度小程序开发
微信小程序开发
微信公众号开发
uni-app
asp函数库
ASP
DIV+CSS
HTML
python
更多>>同类信息
ASP中Utf-8与Gb2312编码转换乱码问题的解决方法页面编码声明
asp显示随机密码
通过阿里云服务接口获得ip地址详细信息
iis点开后任务栏上有显示,但是窗口看不到的解决办法
RSA加密解密插件
微软Encoder加密解密函数
更多>>最新添加文章
dw里面查找替换使用正则删除sqlserver里面的CONSTRAINT
Android移动端自动化测试:使用UIAutomatorViewer与Selenium定位元素
抖音直播音挂载小雪花 懂车帝小程序
javascript获取浏览器指纹可以用来做投票
火狐Mozilla Firefox出现:无法载入您的Firefox配置文件 它可能已经丢失 或是无法访问 问题解决集合处理办法
在Android、iOS、Windows、MacOS中微信小程序的文件存放路径
python通过代码修改pip下载源让下载库飞起
python里面requests.post返回的res.text还有其它的吗
更多>>随机抽取信息
旅行社手机网站模板10
uni-app微信小程序获得用户头像与名称
Dreamweaver错误:在onload运行_beforeSave.htm时,发生了一个JavaScript错误
uni-app判断输入内容是否符合要求
深山留言板(激情圣诞集合五套模板)v4.4
ASP实现不打开直接下载txt,jpg...类文件