Med lagrad procedur kan du spara och anropa SQL-frågor, så du behöver inte skriva om eller ändra frågor om du behöver använda dem flera gånger. Så här skapar du lagrad procedur i MySQL.
Vad är lagrad procedur i MySQL?
Lagrad procedur är ett sätt att spara SQL-frågor som subrutinfunktioner i MySQL, som du kan ringa tillbaka senare vid behov. Den har ett namn, parameterlista och SQL-satser. Det är ett utmärkt alternativ om du behöver köra samma SQL-fråga flera gånger, utan några ändringar eller med mindre ändringar.
Bonus Läs:Hur man skapar en ny användare i MySQL
Hur man skapar lagrad procedur i MySQL
Här är stegen för att skapa en lagrad procedur i MySQL med MySQL CREATE PROCEDURE-satsen.
Här är syntaxen för att skapa lagrad procedur i MySQL.
DELIMITER // CREATE PROCEDURE procedure_name(optional_list_of_arguments) BEGIN sql_query; END // DELIMITER ;
I ovanstående fråga, procedurnamn är namnet på den lagrade proceduren som krävs för att anropa den senare. optional_list_of_arguments är listan med argument som du vanligtvis skickar till valfri funktion.
sql_query är SQL-frågan som ska köras när du anropar den lagrade proceduren. Listan med argument kan användas i SQL-frågan för att göra den dynamisk.
Bonus Läs:Hur man skapar en databas i MySQL
Här är en enkel SQL-fråga som returnerar alla poster från order bord.
mysql> select * from orders;
Här är ovanstående SQL-fråga insvept i en lagrad procedur get_orders
DELIMITER // CREATE PROCEDURE get_orders() BEGIN SELECT * FROM orders; END // DELIMITER ;
I ovanstående fråga har vi inte definierat några parametrar för vår lagrade procedur.
Bonus Läs:Hur man lägger till främmande nyckel i MySQL
Du måste använda CALL-satsen för att anropa en lagrad_procedur. Här är syntaxen för att anropa lagrad procedur.
CALL procedure_name(list of arguments);
Så här anropar du en lagrad procedur i 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 | +----+--------------+------------+-------+-------------+---------------------+
Förhoppningsvis kan du nu skapa en lagrad procedur i MySQL.
Bonus Läs:Hur man skapar lagrad procedur med parameter i MySQL
Ubiq gör det enkelt att visualisera data på några minuter och övervaka i realtidsinstrumentpaneler. Prova det idag!