2017-02-09 10 views
0

In MySQL gespeicherten Prozeduren gibt es eine Möglichkeit, Eingabeparameter und ihre Werte zu erhalten? Ich kann die Parameternamen von information_schema.parameters erhalten. Aber ich möchte auch die Parameterwerte zur Laufzeit wissen. Der Grund, warum ich das bekommen möchte, ist, dass ich eine große Anzahl gespeicherter Prozeduren habe. Die erste Sache, die ich in jeder gespeicherten Prozedur tun möchte, ist Protokoll-Eingangsparameterwerte, die bestanden werden.mysql gespeicherte Prozedur Eingangsparameter Werte

Antwort

0

Sie können SELECT IN_VAR_PARAM verwenden. Dadurch werden die Eingabeparameter IN_VAR_PARAM auf dem Bildschirm gedruckt. Wenn mehrere Eingabeparameter vorhanden sind, können Sie sie mit derselben Anweisung verfolgen. ODER können Sie versuchen, mit Log-Tabelle. Erstellen Sie einfach LOG-Tabelle und machen Sie die Eingabe aller Eingangsparameter nacheinander. Nach vollständiger Ausführung der Prozedur können Sie den Wert aller Variablen in der LOG-Tabelle verfolgen.

+0

Dann was passiert ?? –

+0

Ich habe bereits eine Protokolltabelle und ich kann schreiben in log_table (log_comment) Werte schreiben (concat ('param1:', param1, 'param2:', param2 ....) Aber in diesem Fall muss ich die Anweisung schreiben in allen Verfahren, darauf achten, keine Parameter irgendwo zu verpassen.Wenn es eine Möglichkeit gibt, die Liste der Parameterwerte (wie argv [] in C) programmatisch zu kennen, kann es den Job einfacher und fehlerfrei machen – user7239725

+0

Ich denke das ist die einzige Möglichkeit, Storedprocedure und Function zu debuggen, noch einige andere Optionen sind verfügbar, dann weiß ich vielleicht nicht. –

Verwandte Themen