Datenbank MySQL 9.0: Stored Procedures in JavaScript verfassen
MySQL 9.0 unterstützt erstmals Stored Procedures in JavaScript. Wir erklären die Vorteile und Nutzung der Funktion.

- Martin Gerhard Loschwitz
MySQL ist üblicherweise kein Thema, das einen Admin aus der Reserve lockt: Milliardenfach ist die Datenbank weltweit im freien Einsatz. Von Datensätzen popeliger Websites bis hin zu riesigen Enterprise-Anwendungen tragen MySQL-Datenbanken ein gutes Stück dazu bei, die Welt täglich am Laufen zu halten. In den Köpfen nicht weniger Administratoren gelten typische Standardkomponenten aber auch als innovationsarm und insgesamt sehr statisch in ihrer Entwicklung. Dass das nicht zwangsläufig der Fall ist, bewies Anfang Juli 2024 MySQL 9.0: Die neue Version bietet nämlich zentrale Neuerungen, die im MySQL-Universum bisher höchstens als kühne Ideen galten. Dazu gehört einerseits die Unterstützung für Vektoren in der Datenbank (interessant vor allem für KI-Anwendungen) und andererseits JavaScript-Support direkt in der Datenbank selbst.
Stored Procedures oder Stored Programs ermöglichen seit einiger Zeit die Definition fester Abläufe, beispielsweise wiederkehrender Querys, als Funktion mit eigenem Namen. Es genügt im Anschluss, diese Funktion aufzurufen, um die beschriebenen Querys nacheinander durchzuführen und mit dem Rückgabewert zu arbeiten. Dabei bieten Stored Procedures grundsätzlich auch eine Art Syntax an, die manchen Administrator wohl noch am ehesten an Shellskripte erinnert: If
- und Case
-Schlüsselwörter sind bei Stored Procedures nämlich ebenso möglich wie Schleifen und While
-Konstrukte.
- MySQL 9.0 bringt für Stored Procedures neben den schon lange unterstützten Sprachen wie R und Python mit JavaScript eine zusätzliche Sprache.
- Damit lassen sich Datenbankabfragen kĂĽnftig auch als JavaScript-Code direkt in MySQL formulieren und empfangene Daten weiterverarbeiten.
- Die Funktion ermöglicht sowohl das Speichern ganzer Programme samt ihrer Ausführung in MySQL als auch das Einbetten von SQL-Statements direkt im Quelltext.
- Die Besonderheit dabei: Der Code wird direkt in MySQL kompiliert und ausgefĂĽhrt, was laut Hersteller die Nutzung erleichtert und die Performance verbessert.
MySQL 9 baut das Prinzip weiter aus und liefert erstmals Unterstützung für eine echte Skriptsprache in den Stored Procedures: JavaScript. Künftig sind Entwickler folglich nicht mehr auf die eher rudimentären Funktionen der nativen Stored Functions in MySQL beschränkt. Stattdessen können sie ihren Programmtext in JavaScript beisteuern, aus diesem heraus nahtlos SQL-Abfragen starten oder JavaScript direkt in MySQL-Abfragen einbetten und mit den jeweiligen Antworten der Datenbanken sofort arbeiten.
Das war die Leseprobe unseres heise-Plus-Artikels "Datenbank MySQL 9.0: Stored Procedures in JavaScript verfassen". Mit einem heise-Plus-Abo können sie den ganzen Artikel lesen und anhören.