Förbi Mary Gathoni

Lagrade procedurer: som funktioner för din SQL.

Läsare som du hjälper till att stödja MUO. När du gör ett köp med hjälp av länkar på vår webbplats kan vi tjäna en affiliate-provision. Läs mer.

En lagrad procedur är en grupp SQL-satser som skapas och lagras i en databas. Du kan återanvända en lagrad procedur om och om igen.

En lagrad procedur kan acceptera parametrar, köra en fråga och returnera resultat. Många användare kan anropa en lagrad procedur och olika applikationer kan anropa den med olika parametervärden.

Vilka är fördelarna med att använda lagrade procedurer?

Förutom att tillåta flera användare och applikationer att återanvända den, har en lagrad procedur andra fördelar.

  • Det är lätt att modifiera. Du kan ändra en lagrad procedur vid behov och dessa uppdateringar kommer att återspeglas för alla användare. Dessutom behöver du inte distribuera om din applikation när du ändrar den lagrade proceduren.
  • Det minskar nätverkstrafiken eftersom servern bara skickar procedurens namn över nätverket och inte hela frågan.
  • instagram viewer
  • Det förbättrar databassäkerheten eftersom användare inte har direkt tillgång till tabeller. För att göra ändringar måste de anropa den lagrade proceduren. Detta förhindrar SQL-injektionsattacker eftersom användare inte direkt kan skriva till de underliggande tabellerna.

En databasmotor som MySQL har många säkerhetsfunktioner du bör vara medveten om.

Syntax för att skapa en lagrad procedur i SQL Server

Syntaxen för att skapa en lagrad procedur är som följer:

SKAPAPROCEDUR procedure_name
SOM
sql_statement
GÅ;

Kör detta kommando för att utföra den lagrade proceduren.

EXEC procedurnamn;

Exempel på en enkel lagrad procedur i SQL Server

Här är ett exempel på en lagrad procedur som väljer alla artiklar från en artikeldatabas.

SKAPAPROCEDUR Alla_artiklar
SOM
VÄLJ * FRÅN Artikel
GÅ;

Detta är ett enkelt exempel, men du kan göra så mycket mer med lagrade procedurer som att acceptera parametrar och uppdatera poster.

Hur man skapar en lagrad procedur som accepterar parametrar

Ändra till exempel den enkla lagrade proceduren för att acceptera ett nummer som en parameter och använd den för att returnera inläggen med ett antal visningar som är högre än antalet.

SKAPAPROCEDUR Popular_Articles(@views int)
SOM
VÄLJ * FRÅN Artikel
WHERE views_count >= @visningar_räkna
GÅ;

Använd detta kommando för att utföra den lagrade proceduren med en parameter.

EXEC Popular_Articles 300;

Proceduren returnerar artiklar vars visningsantal är högre än 300.

Lär dig SQL först innan du använder lagrade procedurer

Med lagrade procedurer kan du återanvända en grupp SQL-satser. De förbättrar också databassäkerheten, minskar nätverkstrafiken och är lätta att ändra.

Att lära sig om lagrade procedurer är därför viktigt, men du måste först ha en gedigen förståelse för SQL.

Prenumerera på vårt nyhetsbrev

Kommentarer

Dela med sigTweetDela med sigDela med sigDela med sig
Kopiera
E-post
Dela med sig
Dela med sigTweetDela med sigDela med sigDela med sig
Kopiera
E-post

Länken har kopierats till urklipp

Relaterade ämnen

  • Programmering
  • SQL
  • databas

Om författaren

Mary Gathoni (75 publicerade artiklar)

Mary är personalskribent på MUO baserad i Nairobi. Hon har en kandidatexamen i tillämpad fysik och datavetenskap men tycker mer om att arbeta inom teknik. Hon har kodat och skrivit tekniska artiklar sedan 2020.