Door de volgende stappen te volgen, kunt u een opgeslagen procedure in MariaDB schrijven:
1. Start eerst je MariaDB-client.
2. Gebruik het CREATE PROCEDURE statement om een opgeslagen procedure te creëren. Hier is een eenvoudig voorbeeld:
```
DELIMITER //
CREATE PROCEDURE BestellingenPerKlant(IN klantID INT)
BEGIN
SELECT K.klantnaam, COUNT as Bestellingen
FROM Klanten K
JOIN Bestellingen B ON B.klantID = K.klantID
WHERE K.klantID = klantID
GROUP BY K.klantnaam;
END //
DELIMITER ;
```
In dit voorbeeld hebben we een opgeslagen procedure gemaakt met de naam ‘BestellingenPerKlant’. Deze procedure neemt een parameter ‘klantID’ en retourneert het aantal bestellingen dat door de klant is geplaatst.
Het keyword “DELIMITER” wordt gebruikt om aan MariaDB te vertellen dat het einde van de procedure is bereikt. Normaal gesproken is de standaard delimiter een semicolon (;), maar omdat de procedure zelf semicolons bevat, moeten we tijdelijk de delimiter veranderen om verwarring te voorkomen. Na het creëren van de procedure, wordt de delimiter teruggezet naar de standaard semicolon.
Het “CREATE PROCEDURE” commando wordt gebruikt om de procedure aan te maken, en het “BEGIN … END” blok wordt gebruikt om de body van de procedure te definiëren. De procedure body bevat de SQL commando’s die worden uitgevoerd wanneer de procedure wordt aangeroepen.
1. Om deze opgeslagen procedure later aan te roepen, kunt u het “CALL” statement gebruiken:
```
CALL BestellingenPerKlant(1);
```
Dit roept de procedure ‘BestellingenPerKlant’ aan met ‘1’ als de ‘klantID’ parameter.