Met de opgeslagen procedure kunt u SQL-query's opslaan en oproepen, zodat u query's niet hoeft te herschrijven of wijzigen als u ze meerdere keren moet gebruiken. Hier leest u hoe u een opgeslagen procedure in MySQL maakt.
Wat is een opgeslagen procedure in MySQL?
Opgeslagen procedure is een manier om SQL-query's op te slaan als subroutinefuncties in MySQL, die u later, indien nodig, kunt terugroepen. Het heeft een naam, parameterlijst en SQL-instructies. Het is een geweldige optie als u dezelfde SQL-query meerdere keren moet uitvoeren, zonder enige wijziging of met kleine wijzigingen.
Bonus Lezen:Hoe maak je een nieuwe gebruiker aan in MySQL
Hoe een opgeslagen procedure in MySQL aan te maken
Hier zijn de stappen om een opgeslagen procedure in MySQL te maken met behulp van de MySQL CREATE PROCEDURE-instructie.
Hier is de syntaxis om een opgeslagen procedure in MySQL te maken.
DELIMITER // CREATE PROCEDURE procedure_name(optional_list_of_arguments) BEGIN sql_query; END // DELIMITER ;
In de bovenstaande zoekopdracht, procedure_name is de naam van de opgeslagen procedure die nodig is om deze later aan te roepen. optionele_list_of_arguments is de lijst met argumenten die u gewoonlijk aan een functie doorgeeft.
sql_query is de SQL-query die moet worden uitgevoerd wanneer u de opgeslagen procedure aanroept. De lijst met argumenten kan worden gebruikt in SQL-query's om deze dynamisch te maken.
Bonus Lezen:Database maken in MySQL
Hier is een eenvoudige SQL-query die alle records van orders retourneert tafel.
mysql> select * from orders;
Hier is de bovenstaande SQL-query verpakt in een opgeslagen procedure get_orders
DELIMITER // CREATE PROCEDURE get_orders() BEGIN SELECT * FROM orders; END // DELIMITER ;
In de bovenstaande vraag hebben we geen parameters gedefinieerd voor onze opgeslagen procedure.
Bonus Lezen:Hoe u een externe sleutel in MySQL kunt toevoegen
U moet de CALL-instructie gebruiken om een opgeslagen_procedure aan te roepen. Hier is de syntaxis om de opgeslagen procedure aan te roepen.
CALL procedure_name(list of arguments);
Zo roept u een opgeslagen procedure op in MySQL.
mysql> call get_orders(); +----+--------------+------------+-------+-------------+---------------------+ | id | product_name | order_date | price | description | created_at | +----+--------------+------------+-------+-------------+---------------------+ | 1 | A | 2020-07-01 | 150 | New product | 2020-06-01 00:00:00 | | 2 | B | 2020-07-01 | 235 | Old product | 2020-06-15 00:00:00 | +----+--------------+------------+-------+-------------+---------------------+
Hopelijk kun je nu een opgeslagen procedure maken in MySQL.
Bonus lezen:Opgeslagen procedure maken met parameter in MySQL
Ubiq maakt het gemakkelijk om gegevens binnen enkele minuten te visualiseren en in realtime dashboards te controleren. Probeer het vandaag nog!