#region Verify_Execute
/// <summary>
/// 验证insert、update、delete执行
/// </summary>
/// <param name="tran">事务</param>
/// <param name="retrow">执行返回值</param>
/// <param name="inputmessage">提示信息</param>
/// <param name="errorMessage"></param>
/// <returns>-1执行错误;0执行成功影响行数为零;>0执行成功</returns>
protected int VerifyExecute(IDbTransaction tran, int retrow, string inputmessage,string warningmessage,string EventModel, ref string errorMessage)
{
if (!string.IsNullOrEmpty(errorMessage))
{
this.RollbackTransaction(tran);
return -1;
}
else if (retrow == 0)
{
TSYSLOGDao dao = new TSYSLOGDao();
dao.InsertRecord(new TSYSLOG()
{
EVENTTYPE = "warning",
EVENTCONTENT = warningmessage,
EVENTMODEL = EventModel,
USERID = CommonObjectsDA.USERID
}, ref errorMessage);
return 1;
// errorMessage = inputmessage + ",影响行数为0";
// this.RollbackTransaction(tran);
// return 0;
}
else
{
return retrow;
}
}
/// <summary>
/// 验证insert、update、delete执行
/// </summary>
/// <param name="tran">事务</param>
/// <param name="retrow">执行返回值</param>
/// <param name="inputmessage">提示信息</param>
/// <param name="errorMessage"></param>
/// <returns>-1执行错误;0执行成功影响行数为零;>0执行成功</returns>
protected int VerifyExecute(IDbTransaction tran, int retrow, string inputmessage, ref string errorMessage)
{
if (!string.IsNullOrEmpty(errorMessage))
{
this.RollbackTransaction(tran);
return -1;
}
//else if (retrow == 0)
//{

// errorMessage = inputmessage + ",影响行数为0";
// this.RollbackTransaction(tran);
// return 0;
//}
else
{
return retrow;
}
}
protected int VerifyExecute(IDbTransaction tran, ref string errorMessage)
{
if (!string.IsNullOrEmpty(errorMessage))
{
this.RollbackTransaction(tran);
return -1;
}
else
{
return 0;
}
}
/// <summary>
/// 验证select执行
/// </summary>
/// <param name="tran">事务</param>
/// <param name="retvalue">执行返回值(double、decimal、int、List.Count)</param>
/// <param name="inputmessage">提示信息</param>
/// <param name="_nullable">执行返回值可否为0或null;true可以</param>
/// <param name="errorMessage"></param>
/// <returns>-1执行错误;0返回行数为零;>0返回数据</returns>
protected int VerifyExecute(IDbTransaction tran, decimal retvalue, string inputmessage, bool _nullable, ref string errorMessage)
{
this.nullable = _nullable;
if (!string.IsNullOrEmpty(errorMessage))
{
this.RollbackTransaction(tran);
return -1;
}
else
{
if (!_nullable && retvalue == 0)
{
errorMessage = inputmessage;
this.RollbackTransaction(tran);
return 0;
}
return 1;
}
}

/// <summary>
/// 验证select执行
/// </summary>
/// <param name="tran">事务</param>
/// <param name="retvalue">执行返回值(string)</param>
/// <param name="inputmessage">提示信息</param>
/// <param name="_nullable">执行返回值可否为0或null;true可以</param>
/// <param name="errorMessage"></param>
/// <returns>-1执行错误;0返回行数为零;>0返回数据</returns>
protected int VerifyExecute(IDbTransaction tran, string retvalue, string inputmessage, bool _nullable, ref string errorMessage)
{
this.nullable = _nullable;
if (!string.IsNullOrEmpty(errorMessage))
{
this.RollbackTransaction(tran);
return -1;
}
else
{
if (!_nullable && retvalue == null)
{
errorMessage = inputmessage;
this.RollbackTransaction(tran);
return 0;
}
return 1;
}
}
#endregion

转载于:https://www.cnblogs.com/mapstar/p/10774453.html

Verify_Execute 验证SQL语句执行结果相关推荐

  1. MySQL探秘(二):SQL语句执行过程详解

    只有更加全面地了解SQL语句执行的每个过程,才能更好的进行SQL的设计和优化.  当希望MySQL能够以更高的性能运行查询时,最好的办法就是弄清楚MySQL是如何优化和执行查询的.一旦理解了这一点,很 ...

  2. mysql sql执行过程_MySQL探秘(二):SQL语句执行过程详解

    昔日庖丁解牛,未见全牛,所赖者是其对牛内部骨架结构的了解,对于MySQL亦是如此,只有更加全面地了解SQL语句执行的每个过程,才能更好的进行SQL的设计和优化. 当希望MySQL能够以更高的性能运行查 ...

  3. 详解MySQL的逻辑架构和SQL语句执行流程

    文章目录 1. 逻辑架构 1.1 连接层 1.2 服务层 1.3 引擎层 1.3.1 InnoDB 存储引擎 1.3.2 MyISAM 存储引擎 1.3.3 其他存储引擎 1.4 存储层 3. SQL ...

  4. 数据库索引--SQL语句执行效率、分析及优化

    数据库表中字段上创建的索引,在写SQL语句进行查询时,索引可能会被使用到,也肯能因为SQL语句导致索引在此条SQL语句执行时索引无效. 聚簇索引的顺序就是数据的物理存储顺序,而对非聚簇索引的解释是:索 ...

  5. Oracle sql语句执行过程图文分析

    这个可以算是学习笔记吧, 是参照甲骨论老相老师的视频做的: http://www.jiagulun.com/thread-2674-1-1.html 1.数据库文件 Oracle 数据库文件大概可分为 ...

  6. EXPLAIN PLAN获取SQL语句执行计划

    一.获取SQL语句执行计划的方式 1. 使用explain plan 将执行计划加载到表plan_table,然后查询该表来获取预估的执行计划 2. 启用执行计划跟踪功能,即autotrace功能 3 ...

  7. mysql oracle 查询语句执行顺序_MySQL sql语句执行顺序

    (8)     DISTINCT (1)     FROM (3)      JOIN (2)     ON (4)     WHERE (5)     GROUP BY (6)     HAVING ...

  8. 25、Sql语句执行顺序

    sql语句定义和执行顺序 摘自<MySQL技术内幕:SQL编程> sql语句定义的顺序 (1) SELECT (2)DISTINCT<select_list> (3) FROM ...

  9. Oracle 查看sql语句执行计划方法

    注意这篇文章只介绍查看sql语句执行计划的方法, 并不是说明如何看懂执行计划. 一般来讲, 直接在sqlplus 执行 set autotrace on; 就可以了 其前提是登陆用户必须有视图  v_ ...

最新文章

  1. matlab肌电信号平滑滤波_BCIduino 滤波和频谱计算操作
  2. oracle hr样本模式,Oracle 样本模式 HR
  3. java maven调用hbase
  4. two sum python_Python | Leetcode 之 Two Sum
  5. 嗨淘点赞运营版完整源码/刷单/手动派单版本
  6. 【Spark大数据处理】动手写WordCount
  7. python获取计算机信息系统数据罪_使用 python 收集获取 Linux 系统主机信息
  8. android 服务端 servlet webservice,Tomcat 上如何部署Servlet及Android中如何与服务器通信(12页)-原创力文档...
  9. javascript一些基础知识
  10. 冒泡排序+查找打印——上海大学C语言考试
  11. SoapUI接口测试之实战运用操作(五)
  12. python代码加密
  13. 科学研究设计五:实验设计
  14. excel自动求和_Excel教程:3个按条件定位的小技巧
  15. 全智通A+常见问题汇总解答—A+修正维修详情页面打印派工清单和领料清单按钮无效
  16. 【Android Camera2】玩转图像数据 -- NV21图像旋转,镜像,转rgba代码分析,性能优化
  17. Vue3.x-bate + Antd2.x 项目搭建报错
  18. 因果卷积(causal)与扩展卷积(dilated)
  19. 为此计算机上所有用户安装此加载项,win7打开特定网站提示“控件无法安装,windows已阻止此软件因为无法验证发行者”怎么办...
  20. 万字长文,Java接地气日常编码技巧

热门文章

  1. kohonen | SOM:自组织映射聚类法(1)
  2. python qt listview如何显示图片_python如何导入图片
  3. linux内存和flash区别,嵌入式Linux概念NOR/NAND Flash的差别
  4. 前端程序员怎么面试找工作?前端面试技巧分享
  5. 排序算法java快速排序_快速排序算法--Java实现
  6. eclipse里source的快捷方法_教你如何在Linux中设置快捷方式图标
  7. 如何更新Word文档的附图或附表序号
  8. c++和java哪个好学_【技术科普】C语言和java语言有些什么区别?
  9. STM8单片机低功耗---停机(Halt)模式实现
  10. C语言学习笔记---abs()函数和div()函数