SQL kurz

SQL HOME Úvod do SQL Syntaxe SQL SQL Select SQL Select Distinct SQL Kde SQL A nebo ne Pořadí SQL podle SQL Vložit do Hodnoty SQL Null Aktualizace SQL SQL Odstranit SQL Select Top SQL Min a Max Počet SQL, průměr, součet SQL Like Zástupné znaky SQL SQL In SQL mezi Aliasy SQL SQL se připojí SQL Vnitřní spojení SQL Levé připojení SQL Right Join Plné připojení k SQL SQL Self Join SQL Union SQL Group By SQL mít SQL existuje SQL Any, All SQL Select Into SQL Vložit do výběru Případ SQL Funkce SQL Null SQL uložené procedury Komentáře SQL Operátoři SQL

SQL databáze

SQL Vytvořit DB SQL Drop DB SQL Backup DB Vytvořit tabulku SQL SQL Drop Table SQL Alter Table Omezení SQL SQL Not Null Jedinečný SQL Primární klíč SQL cizí klíč SQL Kontrola SQL Výchozí SQL SQL index Automatické zvýšení SQL SQL data SQL pohledy SQL Injection SQL Hosting SQL datové typy

SQL reference

Klíčová slova SQL Funkce MySQL Funkce serveru SQL Funkce MS Access SQL Quick Ref

Příklady SQL

Příklady SQL SQL kvíz SQL cvičení SQL certifikát

SQL uložené procedury pro SQL Server


Co je uložená procedura?

Uložená procedura je připravený kód SQL, který můžete uložit, takže kód lze znovu a znovu použít.

Pokud tedy máte dotaz SQL, který píšete znovu a znovu, uložte jej jako uloženou proceduru a poté jej pouze zavolejte, abyste jej provedli.

Parametry můžete také předat uložené proceduře, takže uložená procedura může jednat na základě hodnoty parametru, která je předána.

Syntaxe uložené procedury

CREATE PROCEDURE procedure_name
AS
sql_statement
GO;

Proveďte uloženou proceduru

EXEC procedure_name;

Demo databáze

Níže je uveden výběr z tabulky „Zákazníci“ v ukázkové databázi 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

Příklad uložené procedury

Následující příkaz SQL vytvoří uloženou proceduru s názvem "SelectAllCustomers", která vybere všechny záznamy z tabulky "Customers":

Příklad

CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO;

Výše uloženou proceduru proveďte takto:

Příklad

EXEC SelectAllCustomers;


Uložená procedura s jedním parametrem

Následující příkaz SQL vytvoří uloženou proceduru, která vybere zákazníky z určitého města z tabulky "Zákazníci":

Příklad

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

Výše uloženou proceduru proveďte takto:

Příklad

EXEC SelectAllCustomers @City = 'London';

Uložená procedura s více parametry

Nastavení více parametrů je velmi snadné. Stačí uvést každý parametr a typ dat oddělený čárkou, jak je uvedeno níže.

Následující příkaz SQL vytvoří uloženou proceduru, která vybere zákazníky z určitého města s konkrétním PSČ z tabulky "Zákazníci":

Příklad

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

Výše uloženou proceduru proveďte takto:

Příklad

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