Cum se creează proceduri stocate în SQL?



Acest articol despre procedurile din SQL vă va ajuta să înțelegeți ce sunt procedurile și cum acestea cresc performanța unei baze de date atunci când sunt implementate.

Procedurile sunt subprogramele care pot fi create și salvate în ca obiecte de baze de date. Așa cum poți în alte limbi, poți crea și renunța la proceduri SQL de asemenea. În acest articol, să explorăm procedurile în SQL cu sintaxă și exemple.

Subiectele discutate în articol sunt:





Ce este o procedură în SQL?

O procedură în (adesea denumită procedură stocată),este o unitate reutilizabilă care încapsulează logica de afaceri specifică a aplicației. O procedură SQL este un grup de instrucțiuni și logică SQL, compilate și stocate împreună pentru a efectua o sarcină specifică.

Procedura SQL - Proceduri în SQL - Edureka



Mai jos sunt enumerate caracteristicile cheie ale procedurilor SQL:

cum se utilizează sprites css
  • Ușor de implementat, deoarece utilizează un instrument foarte simplulimbaj de nivel înalt, puternic tastat
  • Suportă trei tipuri de parametri, și anume,parametrii de intrare, ieșire și intrare-ieșire.
  • Mai fiabil decât echivalentproceduri externe.
  • Procedurile SQL promovează reutilizarea și mentenabilitatea.
  • Suportă o stare simplă, dar puternică și un model de gestionare a erorilor.
  • Întoarceți o valoare de stare unei proceduri de apelare sau a unui lot pentru a indica succesul sau eșecul și motivul eșecului.

Acum, că știți ce sunt procedurile și de ce sunt necesare, să discutăm sintaxa și exemplul de procedură în SQL.

Sintaxa procedurilor în SQL

Următoarele ilustrează sintaxa de bază a creării unei proceduri în SQL:



CREAȚI [SAU ÎNLOCUIȚI] PROCEDURĂ nume_procedură [(nume_parametru [IN | OUT | IN OUT] tip [])] ESTE BEGIN [declarație_secțiune] secțiune_executabilă // Instrucțiune SQL utilizată în procedura stocată

Terminologii de sintaxă

Parametru

Un parametru este o variabilă care deține o valoare oricăreitip de date SQL valid prin care subprogramul poate schimba valorile cu codul principal. Cu alte cuvinte, parametrele sunt folosite pentru a transmite valori procedurii. Există 3 tipuri diferite de parametri, care sunt după cum urmează:

java cum se folosește iteratorul
  • ÎN : Tal său este Parametrul implicit, care primește întotdeauna valorile de la programul apelant. Este o variabilă numai în citire din subprograme și valoarea acesteia nu poate fi modificată în interiorul subprogramului.
  • OUT: Estefolosit pentru obținerea rezultatelor din subprograme.
  • ÎN AFARĂ: Acestparametrul este utilizat atât pentru a da intrare, cât și pentru a obține ieșire din subprograme.

Alte terminologii

  • nume-procedură specifică numele procedurii. Ar trebui să fie unic.
  • Opțiunea [SAU ÎNLOCUIRE] permite modificarea unei proceduri existente.
  • ESTE | Clauza AS, au stabilitcontext pentru a executa procedura stocată.Diferența este că cuvântul cheie „IS” este utilizat atunci când procedura este cuibărită în alte blocuri și dacă procedura este independentă, atunci se folosește „AS”.
  • Code_Block declară declarațiile procedurale care gestionează toate procesările din cadrul procedurii stocate. Conținutul codului_bloc depinde de regulile și limbajul procedural utilizat de Bază de date .

Procedură în SQL: Exemple

Exemplul 1

Următorul exemplu creează o procedură simplă care afișează mesajul de întâmpinare pe ecran când este executat. Apoi, procedura va fi:

CREAȚI SAU ÎNLOCUIȚI PROCEDURA welcome_msg (para1_name IN VARCHAR2) IS BEGIN dbms_output.put_line (‘Hello World!’ || para1_name) END /

Executați procedura stocată. O procedură independentă poate fi apelată în două moduri și minus

  • Folosind A EXECUTA cuvânt cheie
  • Apelarea numelui procedurii dintr-un bloc SQL

Procedura de mai sus poate fi apelată folosind cuvântul cheie Execute după cum urmează:

EXEC welcome_msg („Bun venit la Edureka!”)

Ieșire

Salut Lume! Bine ați venit la Edureka

Procedura este executată, iar mesajul este tipărit ca „Hello World! Bine ați venit la Edureka ”.

Exemplul 2

Să presupunem că aveți un tabel cu detalii Emplyoee, cum ar fi, EmployeId, Prenume, Prenume și DepartamentDetalii.

Acest exemplu creează o procedură SQL care va returna numele unui angajat atunci când Angajatul este dat ca parametru de intrare pentru procedura stocată. Apoi, procedura va fi:

Creați PROCEDURĂ GetStudentName (@employeeID INT, --Parametru de intrare, employeID al angajatului @employeName VARCHAR (50) OUT --Parametru de ieșire, angajatNume al angajatului AS BEGIN SELECT @ employeName = Prenume + '' + Nume din Employee_Table WHERE EmployeId = @ employeID SFÂRȘIT

Pași de executat:

  • Declarați @employeName ca nvarchar (50)
  • EXEC GetStudentName 01, ieșire @employeName
  • selectați @employeName

Procedura de mai sus pentru a da ID-ul angajatului ca intrare returnează numele acelui angajat. Să presupunem că dacă avem un parametru de ieșire tCând trebuie mai întâi să declarăm variabila pentru a colecta valorile de ieșire.Acum, să verificăm avantajele procedurii în SQL.

Avantajele procedurilor în SQL

Scopul principal al procedurilor stocate în SQL este de a ascunde direct Interogări SQL din cod și îmbunătăți performanța operațiunilor bazei de date, cum ar fi selectarea, actualizarea și ștergerea datelor. Alte avantaje ale procedurii în SQL sunt:

  • Reduce cantitatea de informații trimise către serverul bazei de date. Poate deveni un beneficiu mai important atunci când lățimea de bandă a rețelei este mai mică.
  • Permite reutilizarea codului
  • Îmbunătățește securitatea, deoarece puteți acorda permisiunea utilizatorului pentru executarea procedurii stocate în loc să acordați permisiunea pentru tabelele utilizate în procedura stocată.
  • Sprijiniți apelurile de proceduri imbricate către alte proceduri SQL sau proceduri implementate în alte limbi.

În concluzie, procedurile în SQL (procedurile stocate)nu numai că sporește posibilitatea reutilizării codului, ci și crește performanța bazei de date. Cum? Prin reducerea traficului rețelei prin reducerea cantității de informații trimise prin rețea. Cu aceasta, am ajuns la sfârșitul acestui articol.

Dacă doriți să aflați mai multe despre MySQL și cunoașteți această bază de date relațională open-source, apoi consultați-ne care vine cu instruire live condusă de instructor și experiență de proiect din viața reală. Această instruire vă va ajuta să înțelegeți în profunzime MySQL și vă va ajuta să obțineți stăpânirea asupra subiectului.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii a acestui articol „Proceduri în SQL” și vă vom răspunde.

ce este un spațiu de nume în c ++