qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          一個可以兼容各種數據庫事務的使用范例

            傳入實體執行(可添加 修改 刪除)事務。
          IDbHelper dbHelper = new OracleHelper(ConfigHelper.GetConfigString("BusinessDbConnection"));
          bool result = true;
          try
          {
          dbHelper.BeginTransaction();
          //主表
          TE_AREAManager manager = new TE_AREAManager(dbHelper, userInfo);
          TE_AREAEntity tE_AREAEntity = manager.GetObject(dbHelper.SqlSafe(eatxtAREA_ID));
          manager.Delete(tE_AREAEntity);
          //子表
          TE_AREA_SUBManager submanager = new TE_AREA_SUBManager(dbHelper, userInfo);
          TE_AREA_SUBEntity tE_AREA_SUBEntity = submanager.GetObject(dbHelper.SqlSafe(eatxtAREA_ID));
          submanager.Delete(tE_AREA_SUBEntity);
          //事務提交
          dbHelper.CommitTransaction();
          }
          catch(Exception ex)
          {
          //事務回滾
          dbHelper.RollbackTransaction();
          result=false;
          }
            可以傳入sql語句執行事務
          IDbHelper dbHelper = new OracleHelper(ConfigHelper.GetConfigString("BusinessDbConnection"));
          bool result = true;
          try
          {
          dbHelper.BeginTransaction();
          string   commandText = " DELETE FROM TE_AREA WHERE ID=" + dbHelper.SqlSafe(id);
          dbHelper.ExecuteNonQuery(sqlString);
          commandText = " DELETE FROM TE_AREA_SUB WHERE ID=" + dbHelper.SqlSafe(id);
          dbHelper.ExecuteNonQuery(commandText);
          dbHelper.CommitTransaction();
          }
          catch(Exception ex)
          {
          dbHelper.RollbackTransaction();
          result=false;
          }
           還可以同時傳入實體,SQL語句
          IDbHelper dbHelper = new OracleHelper(ConfigHelper.GetConfigString("BusinessDbConnection"));
          bool result = true;
          try
          {
          dbHelper.BeginTransaction();
          //主表
          TE_AREAManager manager = new TE_AREAManager(dbHelper, userInfo);
          TE_AREAEntity tE_AREAEntity = manager.GetObject(dbHelper.SqlSafe(eatxtAREA_ID));
          manager.Delete(tE_AREAEntity);
          //子表
          TE_AREA_SUBManager submanager = new TE_AREA_SUBManager(dbHelper, userInfo);
          TE_AREA_SUBEntity tE_AREA_SUBEntity = submanager.GetObject(dbHelper.SqlSafe(eatxtAREA_ID));
          submanager.Delete(tE_AREA_SUBEntity);
          //執行SQL語句
          string commandText = " DELETE FROM JINTIANDA WHERE ID=" + dbHelper.SqlSafe(id);
          dbHelper.ExecuteNonQuery(commandText);
          //事務提交
          dbHelper.CommitTransaction();
          }
          catch(Exception ex)
          {
          //事務回滾
          dbHelper.RollbackTransaction();
          result=false;
          }
            以上事務處理方法是基于吉日嘎拉通用權限管理組件底層的代碼上實現的,dbHelper,兼容各種數據庫事務處理,非常省心省事。
            歡迎大家提供自己的使用經驗,共同提高開發效率。

          posted on 2014-04-29 11:08 順其自然EVO 閱讀(156) 評論(0)  編輯  收藏 所屬分類: 數據庫

          <2014年4月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 卓资县| 马关县| 高尔夫| 子长县| 镇赉县| 长泰县| 吉木乃县| 贺兰县| 社会| 西平县| 阆中市| 湖州市| 广州市| 博湖县| 嘉义县| 临江市| 周口市| 曲阜市| 广州市| 桐乡市| 怀安县| 合作市| 阆中市| 南陵县| 扎鲁特旗| 阳泉市| 呼图壁县| 夏津县| 阳原县| 郁南县| 杨浦区| 自贡市| 西充县| 报价| 吉水县| 沙洋县| 木里| 三原县| 务川| 花莲县| 庄河市|