SQL -zelfstudie

SQL HOME SQL-intro SQL-syntaxis SQL-selectie SQL Select Distinct SQL waar SQL en, of, niet SQL-bestelling op SQL invoegen in SQL-nulwaarden SQL-update SQL verwijderen SQL Selecteer Top SQL Min en Max Aantal SQL, Gem, Som SQL Vind ik leuk SQL-jokertekens SQL In SQL Tussen SQL-aliassen SQL-joins SQL Inner Join SQL Left Join SQL juiste join Volledige deelname aan SQL Zelf lid worden van SQL SQL-unie SQL Groeperen op SQL hebben SQL bestaat SQL Alle, Alle SQL Selecteren in SQL invoegen in selecteren SQL-geval SQL Null-functies Op SQL opgeslagen procedures SQL-opmerkingen SQL-operators

SQL- database

SQL creëren DB SQL Drop-DB SQL back-up DB SQL-tabel maken SQL-droptabel SQL-wijzigingstabel SQL-beperkingen SQL niet null SQL Uniek Primaire SQL-sleutel SQL externe sleutel SQL-controle SQL-standaard SQL-index Automatische SQL-verhoging SQL-datums SQL-weergaven SQL injectie SQL-hosting SQL-gegevenstypen

SQL- verwijzingen

SQL-trefwoorden MySQL-functies SQL Server-functies MS Access-functies Snelle SQL-referentie

SQL- voorbeelden

SQL-voorbeelden SQL-quiz SQL-oefeningen SQL-certificaat

Op SQL opgeslagen procedures voor SQL Server


Wat is een opgeslagen procedure?

Een opgeslagen procedure is een voorbereide SQL-code die u kunt opslaan, zodat de code steeds opnieuw kan worden gebruikt.

Dus als je een SQL-query hebt die je steeds opnieuw schrijft, sla deze dan op als een opgeslagen procedure en roep hem dan op om hem uit te voeren.

U kunt ook parameters doorgeven aan een opgeslagen procedure, zodat de opgeslagen procedure kan werken op basis van de parameterwaarde(n) die wordt doorgegeven.

Opgeslagen proceduresyntaxis

CREATE PROCEDURE procedure_name
AS
sql_statement
GO;

Een opgeslagen procedure uitvoeren

EXEC procedure_name;

Demodatabase

Hieronder vindt u een selectie uit de tabel "Klanten" in de voorbeelddatabase van Northwind:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

Voorbeeld van opgeslagen procedure

Met de volgende SQL-instructie wordt een opgeslagen procedure gemaakt met de naam "SelectAllCustomers" die alle records uit de tabel "Customers" selecteert:

Voorbeeld

CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;

Voer de bovenstaande opgeslagen procedure als volgt uit:

Voorbeeld

EXEC SelectAllCustomers;


Opgeslagen procedure met één parameter

Met de volgende SQL-instructie wordt een opgeslagen procedure gemaakt die klanten uit een bepaalde stad selecteert in de tabel "Klanten":

Voorbeeld

CREATE PROCEDURE SelectAllCustomers @City nvarchar(30)
AS
SELECT * FROM Customers WHERE City = @City
GO;

Voer de bovenstaande opgeslagen procedure als volgt uit:

Voorbeeld

EXEC SelectAllCustomers @City = 'London';

Opgeslagen procedure met meerdere parameters

Het instellen van meerdere parameters is heel eenvoudig. Vermeld gewoon elke parameter en het gegevenstype, gescheiden door een komma, zoals hieronder wordt weergegeven.

De volgende SQL-instructie maakt een opgeslagen procedure aan die klanten selecteert uit een bepaalde stad met een bepaalde postcode uit de tabel "Klanten":

Voorbeeld

CREATE PROCEDURE SelectAllCustomers @City nvarchar(30), @PostalCode nvarchar(10)
AS
SELECT * FROM Customers WHERE City = @City AND PostalCode = @PostalCode
GO;

Voer de bovenstaande opgeslagen procedure als volgt uit:

Voorbeeld

EXEC SelectAllCustomers @City = 'London', @PostalCode = 'WA1 1DP';