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)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 古丈县| 庆城县| 双辽市| 东乡| 万全县| 马公市| 湖南省| 宜春市| 邢台县| 广德县| 米林县| 轮台县| 江山市| 鲁山县| 合川市| 焉耆| 昌吉市| 西乡县| 城步| 嘉义县| 博乐市| 疏附县| 巨野县| 新干县| 武乡县| 台北市| 中方县| 梅河口市| 丹东市| 无极县| 四会市| 海宁市| 襄垣县| 东海县| 岚皋县| 吉木乃县| 朝阳区| 开原市| 长海县| 海南省| 玉门市|