Mysql数据库如何查看某张表table被哪些存储过程procedure使用过 | 您所在的位置:网站首页 › mysql查看一张表 › Mysql数据库如何查看某张表table被哪些存储过程procedure使用过 |
一、摘要
由于代码重构,修改了表结构,开发人员修改完java后台代码并内测没问题后提交业务部门测试时发现,新客户取不到产品价格,原因是存储过程调用的还是旧数据表。为此,需要先找出哪些存储过程使用了这些表,然后修改。那么问题来了,mysql数据库如何查看哪些存储过程使用了这些数据表呢? 二、mysql数据库存储过程信息查看 1、show 命令 1) SHOW STATUS查看存储过程状态SHOW { PROCEDURE | FUNCTION } STATUS [ LIKE ‘pattern’ ] SHOW PROCEDURE STATUS LIKE ‘proc_%’ 查看服务器上以proc_开头的所有存储过程状态信息。 2) SHOW CREATE查看存储过程定义SHOW CREATE { PROCEDURE | FUNCTION } sp_name SHOW CREATE PROCEDURE xdd_tst.proc_get_client_funds_info; 查看xdd_tst库proc_get_client_funds_info的sql定义。 2、利用mysql库的proc表查询使用了表sale_client_goods的所有存储过程,sql如下: select * from mysql.proc where db = 'xdd_tst' and type = 'PROCEDURE' and body like '%sale_client_goods%'输出结果: 得到存储过程列表后,就逐个修改吧! 三、可能存在的问题 1、数据库访问权限问题 2、blob类型字段查看问题比如一开始使用mac电脑上的navicat查看proc表的blob类型字段就查看不了,后来使用sqlyog客户端工具就没任何问题,但是不影响sql查询。 |
CopyRight 2018-2019 实验室设备网 版权所有 |