Maison > base de données > tutoriel mysql > 关于存储过程中包含复杂业务的调试方法积累

关于存储过程中包含复杂业务的调试方法积累

WBOY
Libérer: 2016-06-07 17:44:54
original
1027 Les gens l'ont consulté

我从2008年到今天已经走过了程序员生涯的5个春夏秋冬,酸甜苦辣百种滋味我相信只有走过这段路的程序才最有体会,不说废话了,就我知道的几种调试包含复杂业务的存储过程的方法列举如下:(备注:调试的方法源自一位老大【雪上加霜】,方法供大家学习指正) 本人使用

我从2008年到今天已经走过了程序员生涯的5个春夏秋冬,酸甜苦辣百种滋味我相信只有走过这段路的程序才最有体会,不说废话了,就我知道的几种调试包含复杂业务的存储过程的方法列举如下:(备注:调试的方法源自一位老大【雪上加霜】,方法供大家学习指正)

本人使用的变成工具是Delphi 2010+SQL2008

背景介绍:

    本人调试一个500行的存储过程,美国服务器,调试的原因是程序中调用存储过程,获得时间很长导致Delphi 的前台报出ERROR"超时已过期",最终找到存储过程执行效率低下,利用脚本重新建立各表的索引后仍然无效后,开始了漫长的查询效率低下原因查找中

 

    方法一:存储构成中包含复杂的业务时无法重复执行,在查询分析器中增加事物回滚 begin tran exec usp_xx_xxxxxxx rollback tran

    方法二:在存储过程中某一段后增加select 1 return或者 select "T"  return   查询存储过程中的某一段是否效率低下

    方法三:  当遇到存储过程中存在,存储过程调用存储过程时可注释掉对应的存储过程,看存储的查询效率

    方法四:  当遇到存储过程中遇到使用游标的可采用在游标的后面加上where 1=2 过滤该游标,看是否提高了查询效率

    当最终查询到某一条SQL语句查询效率低下后,根据实际情况处理,免备案空间,建立表索引或者优化SQL语句或者日表倒年表,网站空间,或者采用其他的方式

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal