我想获得MySql中存储过程所需的参数数量。这可能吗?
我的第一个想法是尝试
SELECT * FROM information_schema.ROUTINES;
但据我所知,其中没有关于论据数量的信息。接下来尝试
SHOW PROCEDURE STATUS;
但这似乎只是返回第一个查询的子集。
我的目标是能够在PHP中“空填充”一个sproc调用,以避免像
这样的错误"Incorrect number of arguments for PROCEDURE schema.table; expected nn, got mm
制作静态查找表当然可行,但肯定不是理想的。当然,可以解析返回的消息,更改查询并重试,但这似乎也不是很好。
提前致谢! /维克多
答案 0 :(得分:1)
您可以通过以下方式检索参数列表:
SELECT DISTINCT 名称, param_list 从 mysql.proc的 WHERE db = DATABASE();
答案 1 :(得分:0)
SHOW CREATE PROCEDURE< procedure_name>;
http://dev.mysql.com/doc/refman/5.0/en/show-create-procedure.html