|
二次开发中,常常会调用平台事务保存数据,今天整理了标准格式的度量平台数据保存或SQL执行语句,格式如下:
- //获取要保存数据表的表结构
- Table table1 = service.GetTableStruct("default", "DELIT_TASK_LIST");
- Table table2 = service.GetTableStruct("default", "DELIT_RULES_IN_TASK");
- //配置好要在事务中执行的SQL语句
- string sql="DELETE FROM DELIT_TASK_LIST WHERE ID='123456'";
- //获取数据库
- Database db = service.GetDatabase("default");
- //创建连接
- DbConnection conn = db.CreateConnection();
- conn.Open();
- //创建事务
- DbTransaction tran = conn.BeginTransaction();
- //保存数据和执行语句
- service.SaveDataTable(db, tran, table1, taskDataTable, null);
- service.SaveDataTable(db, tran, table2, dt, null);
- int n = service.ExecuteNonQuery(db, tran, sql, null);
- try
- {
- //提交事务。
- tran.Commit();
- tran.Dispose();
- conn.Close();
- conn.Dispose();
- return true;
- }
- catch (Exception ex)
- {
- string errmsg;
- tran.Rollback();
- if (ex.InnerException != null)
- errmsg = ex.InnerException.Message;
- else
- errmsg = ex.Message;
- tran.Dispose();
- conn.Close();
- conn.Dispose();
- return false;
- }
复制代码
因为是服务端事务,如果在事务中执行ExecuteNonQuery,可以得到结果,并且可以根据结果选择提交还是放弃提交数据。
|
|