首页 > 数据库 > mysql教程 > 数据库事务使用范例

数据库事务使用范例

WBOY
发布: 2016-06-07 15:55:45
原创
1108 人浏览过

传入实体执行(可添加 修改 删除)事务。 IDbHelper dbHelper = new OracleHelper(ConfigHelper.GetConfigString( BusinessDbConnection )); bool result = true ; try { dbHelper.BeginTransaction(); //主表 TE_AREAManager manager = new TE_AREAManager(

传入实体执行(可添加 修改 删除)事务。

<code class="csharp plain">IDbHelper dbHelper = <code class="csharp keyword">new <code class="csharp plain">OracleHelper(ConfigHelper.GetConfigString(<code class="csharp string">"BusinessDbConnection"<code class="csharp plain">)); <code class="csharp spaces"> <code class="csharp keyword">bool <code class="csharp plain">result = <code class="csharp keyword">true<code class="csharp plain">; <code class="csharp spaces"> <code class="csharp keyword">try <code class="csharp spaces"> <code class="csharp plain">{ <code class="csharp spaces"> <code class="csharp plain">dbHelper.BeginTransaction(); <code class="csharp spaces"> <code class="csharp comments">//主表 <code class="csharp spaces"> <code class="csharp plain">TE_AREAManager manager = <code class="csharp keyword">new <code class="csharp plain">TE_AREAManager(dbHelper, userInfo); <code class="csharp spaces"> <code class="csharp plain">TE_AREAEntity tE_AREAEntity = manager.GetObject(dbHelper.SqlSafe(eatxtAREA_ID)); <code class="csharp spaces"> <code class="csharp plain">manager.Delete(tE_AREAEntity); <code class="csharp comments">//子表 <code class="csharp spaces"> <code class="csharp plain">TE_AREA_SUBManager submanager = <code class="csharp keyword">new <code class="csharp plain">TE_AREA_SUBManager(dbHelper, userInfo); <code class="csharp spaces"> <code class="csharp plain">TE_AREA_SUBEntity tE_AREA_SUBEntity = submanager.GetObject(dbHelper.SqlSafe(eatxtAREA_ID)); <code class="csharp spaces"> <code class="csharp plain">submanager.Delete(tE_AREA_SUBEntity); <code class="csharp comments">//事务提交  <code class="csharp spaces"> <code class="csharp plain">dbHelper.CommitTransaction(); <code class="csharp spaces"> <code class="csharp plain">} <code class="csharp spaces"> <code class="csharp keyword">catch<code class="csharp plain">(Exception ex) <code class="csharp spaces"> <code class="csharp plain">{ <code class="csharp comments">//事务回滚 <code class="csharp spaces"> <code class="csharp plain">dbHelper.RollbackTransaction(); <code class="csharp spaces"> <code class="csharp plain">result=<code class="csharp keyword">false<code class="csharp plain">; <code class="csharp spaces"> <code class="csharp plain">} <code class="csharp plain"> <code class="csharp plain"><strong>可以传入sql语句执行事务</strong> <code class="csharp plain"> <code class="csharp plain">IDbHelper dbHelper = <code class="csharp keyword">new <code class="csharp plain">OracleHelper(ConfigHelper.GetConfigString(<code class="csharp string">"BusinessDbConnection"<code class="csharp plain">)); <code class="csharp spaces"> <code class="csharp keyword">bool <code class="csharp plain">result = <code class="csharp keyword">true<code class="csharp plain">; <code class="csharp spaces"> <code class="csharp keyword">try <code class="csharp spaces"> <code class="csharp plain">{ <code class="csharp spaces"> <code class="csharp plain">dbHelper.BeginTransaction(); <code class="csharp spaces"> <code class="csharp keyword">string <code class="csharp plain">commandText = <code class="csharp string">" DELETE FROM TE_AREA WHERE ID=" <code class="csharp plain">+ dbHelper.SqlSafe(id); <code class="csharp spaces"> <code class="csharp plain">dbHelper.ExecuteNonQuery(sqlString); <code class="csharp spaces"> <code class="csharp plain">commandText = <code class="csharp string">" DELETE FROM TE_AREA_SUB WHERE ID=" <code class="csharp plain">+ dbHelper.SqlSafe(id); <code class="csharp spaces"> <code class="csharp plain">dbHelper.ExecuteNonQuery(commandText); <code class="csharp spaces"> <code class="csharp plain">dbHelper.CommitTransaction(); <code class="csharp spaces"> <code class="csharp plain">} <code class="csharp spaces"> <code class="csharp keyword">catch<code class="csharp plain">(Exception ex) <code class="csharp spaces"> <code class="csharp plain">{ <code class="csharp spaces"> <code class="csharp plain">dbHelper.RollbackTransaction(); <code class="csharp spaces"> <code class="csharp plain">result=<code class="csharp keyword">false<code class="csharp plain">; <code class="csharp spaces"> <code class="csharp plain">} <code class="csharp plain"><strong> 还可以同时传入实体,SQL语句</strong> <code class="csharp plain"> <code class="csharp plain">IDbHelper dbHelper = <code class="csharp keyword">new <code class="csharp plain">OracleHelper(ConfigHelper.GetConfigString(<code class="csharp string">"BusinessDbConnection"<code class="csharp plain">)); <code class="csharp spaces"> <code class="csharp keyword">bool <code class="csharp plain">result = <code class="csharp keyword">true<code class="csharp plain">; <code class="csharp spaces"> <code class="csharp keyword">try <code class="csharp spaces"> <code class="csharp plain">{ <code class="csharp spaces"> <code class="csharp plain">dbHelper.BeginTransaction(); <code class="csharp plain">              <code class="csharp comments">//主表 <code class="csharp spaces"> <code class="csharp plain">TE_AREAManager manager = <code class="csharp keyword">new <code class="csharp plain">TE_AREAManager(dbHelper, userInfo); <code class="csharp spaces"> <code class="csharp plain">TE_AREAEntity tE_AREAEntity = manager.GetObject(dbHelper.SqlSafe(eatxtAREA_ID)); <code class="csharp spaces"> <code class="csharp plain">manager.Delete(tE_AREAEntity); <code class="csharp plain">              <code class="csharp comments">//子表 <code class="csharp spaces"> <code class="csharp plain">TE_AREA_SUBManager submanager = <code class="csharp keyword">new <code class="csharp plain">TE_AREA_SUBManager(dbHelper, userInfo); <code class="csharp spaces"> <code class="csharp plain">TE_AREA_SUBEntity tE_AREA_SUBEntity = submanager.GetObject(dbHelper.SqlSafe(eatxtAREA_ID)); <code class="csharp spaces"> <code class="csharp plain">submanager.Delete(tE_AREA_SUBEntity); <code class="csharp plain">               <code class="csharp plain">              <code class="csharp comments">//执行SQL语句 <code class="csharp plain">              <code class="csharp keyword">string <code class="csharp plain">commandText = <code class="csharp string">" DELETE FROM JINTIANDA WHERE ID=" <code class="csharp plain">+ dbHelper.SqlSafe(id); <code class="csharp plain">              dbHelper.ExecuteNonQuery(commandText); <code class="csharp plain">              <code class="csharp comments">//事务提交  <code class="csharp spaces"> <code class="csharp plain">dbHelper.CommitTransaction(); <code class="csharp spaces"> <code class="csharp plain">} <code class="csharp spaces"> <code class="csharp keyword">catch<code class="csharp plain">(Exception ex) <code class="csharp spaces"> <code class="csharp plain">{ <code class="csharp plain">             <code class="csharp comments">//事务回滚 <code class="csharp spaces"> <code class="csharp plain">dbHelper.RollbackTransaction(); <code class="csharp spaces"> <code class="csharp plain">result=<code class="csharp keyword">false<code class="csharp plain">; <code class="csharp spaces"> <code class="csharp plain">}
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板