2012-06-11 6 views
6

Wie kann ich die Liste der benutzerdefinierten Funktionen in mysql-Datenbank mit phpmyadmin anzeigen.mysql Liste der benutzerdefinierten Funktionen in phpmyadmin anzeigen

Mysql-Datenbank wurde von einem Server auf einen anderen Server migriert und benutzerdefinierte benutzerdefinierte Funktionen funktionieren nicht. Ich muss die Liste der benutzerdefinierten Funktion anzeigen, um zu überprüfen, ob sie in der Datenbank vorhanden sind oder nicht.

Fatal error: db::execute() Could not execute: FUNCTION database.xxx does not exist (SQL: SELECT Function(field) FROM users in file.php on line xx 
+0

Welche MySQL-Version verwenden Sie? Ab Version 5.1 besagt die Dokumentation, dass die Tabelle "information_schema.routines" keine benutzerdefinierten Funktionen enthält. http://dev.mysql.com/doc/refman/5.1/en/routines-table.html Ich bin verwirrt. – octopusgrabbus

Antwort

19

Die folgende MySQL-Abfrage listet die benutzerdefinierten Routinen auf.

select * from information_schema.routines; 
+0

Docs für 5.1 sagen das Gegenteil davon. Ich bin verwirrt. http://dev.mysql.com/doc/refman/5.1/en/routines-table.html – octopusgrabbus

+0

Es ist die Definition von "benutzerdefinierten Funktionen", die zählt: Gespeicherte Procs wie in SQL deklariert sind dort, UDFs von einem externe Engine (MySQL-Plugin in kompilierter Form) nicht. –

+0

Danke für die Klärung. Ich war verwirrt. – octopusgrabbus

0

, dass Sie alle Informationen über Ihre benutzerdefinierten Funktionen/Prozeduren geben:

select specific_name, definer from information_schema.routines where definer not like '%mysql%'; 

hoffe, es hilft!

Verwandte Themen