你如何调试 MySQL 存储过程?

How do you debug MySQL stored procedures?(你如何调试 MySQL 存储过程?)
本文介绍了你如何调试 MySQL 存储过程?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我当前调试存储过程的过程非常简单.我创建了一个名为调试"的表,在其中插入存储过程运行时的变量值.这允许我在脚本中的给定点查看任何变量的值,但是有没有更好的方法来调试 MySQL 存储过程?

My current process for debugging stored procedures is very simple. I create a table called "debug" where I insert variable values from the stored procedure as it runs. This allows me to see the value of any variable at a given point in the script, but is there a better way to debug MySQL stored procedures?

推荐答案

我做了一些与你非常相似的事情.

I do something very similar to you.

我通常会包含一个默认为 false 的 DEBUG 参数,我可以在运行时设置为 true.然后将调试语句包装到If DEBUG"块中.

I'll usually include a DEBUG param that defaults to false and I can set to true at run time. Then wrap the debug statements into an "If DEBUG" block.

我还对我的许多工作使用了日志记录表,以便我可以查看流程和时间安排.我的调试代码也在那里得到输出.我包括调用参数名称、简要说明、受影响的行数(如果适用)、注释字段和时间戳.

I also use a logging table with many of my jobs so that I can review processes and timing. My Debug code gets output there as well. I include the calling param name, a brief description, row counts affected (if appropriate), a comments field and a time stamp.

好的调试工具是所有 SQL 平台的可悲失败之一.

Good debugging tools is one of the sad failings of all SQL platforms.

这篇关于你如何调试 MySQL 存储过程?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Hibernate reactive No Vert.x context active in aws rds(AWS RDS中的休眠反应性非Vert.x上下文处于活动状态)
Bulk insert with mysql2 and NodeJs throws 500(使用mysql2和NodeJS的大容量插入抛出500)
Flask + PyMySQL giving error no attribute #39;settimeout#39;(FlASK+PyMySQL给出错误,没有属性#39;setTimeout#39;)
auto_increment column for a group of rows?(一组行的AUTO_INCREMENT列?)
Sort by ID DESC(按ID代码排序)
SQL/MySQL: split a quantity value into multiple rows by date(SQL/MySQL:按日期将数量值拆分为多行)