O procedură stocată este structura programului cea mai des utilizată în baze de date, care este un script special proiectat (sau mai degrabă un pachet) care este stocat într-o bază de date, mai degrabă decât într-un fișier separat. Procedurile stocate diferă de scripturi prin faptul că permit utilizarea parametrilor de intrare și ieșire, precum și valori returnate care nu pot fi efectiv utilizate într-un scenariu normal.
O procedură stocată este pur și simplu un nume asociat cu codul de program T-SQL care este stocat și executat pe server. Poate conține aproape orice structură sau comandă, execuția cărora este acceptată în SQL Server. Procedurile pot fi folosite pentru a schimba datele, pentru a returna valorile scalare sau pentru seturile de rezultate întregi. Procedurile stocate sunt interfața principală pe care aplicațiile ar trebui să o utilizeze pentru a accesa orice date din baze de date. Procedurile stocate permit nu numai controlul accesului la baza de date, ci și izolarea codului bazei de date pentru a simplifica întreținerea. Ca programe server-side, procedurile stocate au mai multe avantaje.
Procedurile stocate sunt stocate într-o formă compilată, astfel încât acestea să ruleze mai repede decât pachetele sau interogările.
Efectuarea procesării datelor pe server, mai degrabă decât pe stația de lucru, reduce semnificativ încărcarea rețelei locale.
Procedurile stocate sunt modulare, astfel încât acestea sunt ușor de implementat și modificate. Dacă aplicația client solicită procedura stocată pentru a efectua o anumită operație, modificarea procedurii într-un singur loc afectează execuția acesteia pentru toți utilizatorii.
Procedurile stocate pot fi văzute ca o componentă importantă a sistemului de securitate al bazei de date. Dacă toți clienții accesează date utilizând proceduri stocate, accesul direct la tabele poate fi negat și toate acțiunile utilizatorilor vor fi controlate. Mai important, procedurile stocate ascund structura bazei de date de la utilizator și îi permit să efectueze numai operațiile care sunt programate în procedura stocată.
Administrarea procedurilor stocate Procedurile stocate sunt gestionate prin intermediul instrucțiunilor de limbaj de definire a datelor CREATE, ALTER și DROP (DDL). Sintaxa generală a codului T-SQL pentru crearea unei proceduri stocate este: