Eine benutzerdefinierte MySQL-Funktion erstellen?

8

Ich habe gerade begonnen, MySQL mit PHP zu verwenden, und ich würde gerne wissen, ob es möglich ist, eine benutzerdefinierte Funktion zu erstellen. Dieses Code-Snippet sollte veranschaulichen, was ich versuche zu tun.

%Vor%

Vielen Dank im Voraus für jede Hilfe!

    
Problematic 26.08.2011, 17:57
quelle

4 Antworten

12

Sie können diese MySQL-Funktion in Ihrer Anwendung deklarieren, und sie bleibt in der Datenbank, bis der Datenbankserver neu gestartet wird.

%Vor%

Dies verwendet die mathematischen Funktionen von MySQL. Das Abladen dieser Verarbeitung auf die Datenbank erfolgt schnell und effizient (die Daten müssen nicht über die Verbindung übertragen werden und Sie erhalten nur die gewünschten Ergebnisse).

Sobald Sie dies erklärt haben, können Sie es wie folgt verwenden:

%Vor%

Wenn Ihre Datenbank jedoch neu gestartet wird, gehen zuvor deklarierte Funktionen oder Prozeduren verloren. Es ist möglich, den MySQL-Fehler 1305 ( Function functionName does not exist ) ordnungsgemäß auf Anwendungsebene zu behandeln.

In Ihrem Datenbankfehlerhandler:

%Vor%     
Andy 26.08.2011, 18:13
quelle
1

Sie können dafür sicherlich eine MySQL-Funktion schreiben. Ich habe keine Zeit, jetzt eine zu schreiben, aber hier hast du angefangen:

Ссылка

    
Daniel Pereira 26.08.2011 17:59
quelle
1

Mysql hat Routinen Ссылка

gespeichert

Einige der Funktionen können verschieden sein, zum Beispiel ist die mysql-Entsprechung zu phps deg2rad die Funktion radians () von mysql. Ich denke, du solltest in der Lage sein, eine äquivalente Funktion zu erstellen. Bei diesem Ansatz sollten Sie sich darüber im Klaren sein, dass diese Abfragen jedes Mal die gesamte Postleitzahltabelle abfragen müssen.

    
gview 26.08.2011 18:10
quelle
0

Weil Funktionen nicht in Anführungszeichen funktionieren "oder" müssen Sie sie mit einem Punkt aufteilen. (.)

%Vor%

Hoffe das hilft:)

    
Anon2011 26.08.2011 18:06
quelle

Tags und Links