Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie man mysql Stored Procedure Parameter auflistet

Neuere Versionen von MySQL (5.5.3 und höher ) führte das Objekt information_schema.parameters ein, das Ihnen die benötigten Informationen liefern sollte;

SELECT * 
FROM information_schema.parameters 
WHERE SPECIFIC_NAME = 'your_procedure';

Frühere Versionen von MySql sind darauf angewiesen, Zugriff auf die Tabelle mysql.proc zu haben; Die Spalte 'param_list' enthält alle Parameterinformationen für die Prozedur mit dem Namen, an dem Sie interessiert sind. Die Informationen sind jedoch entschieden nicht normalisiert, da sie als kommagetrennte Zeichenfolge gespeichert werden:

SELECT param_list FROM mysql.proc WHERE db='your_database' AND name='your_procedure';

Ergibt:

IN param1 VARCHAR(32), IN param2 int, ... 

Dies erfordert etwas mehr Arbeit, um es in ein Präsentationsformat zu bringen; obwohl eine string.split-Funktion es zumindest aufräumen würde.