Podstawowe informacje o procedurze przechowywanej
Stored procedures in Microsoft SQL Server are similar to procedures in other programming languages in that they can:
Akceptuje parametry wejściowe i zwracać wiele wartości w formularzu Parametry wyjściowe wywołania procedury lub partia.
Zawiera instrukcje programowania, które wykonuje operacje w bazie danych, włącznie z wywołaniem innych procedur.
Zwraca wartość stanu do wywołania procedury lub programu wsadowego oznacza sukces lub Niepowodzenie (i przyczynach niepowodzenia).
Można użyć Transact-SQL Instrukcja wykonać do uruchomienia procedura przechowywana. Procedury przechowywane różnią się od funkcji zwracały wartości zamiast ich nazw i nie można ich używać bezpośrednio w wyrażeniu.
Korzyści wynikające z używania procedur przechowywanych w SQL Server zamiast Transact-SQL programy przechowywane lokalnie na komputerach klienckich są:
Są one rejestrowane na serwerze.
Mogą one mieć atrybutów zabezpieczeń (takie jak uprawnienia) i tworzenie łańcucha własności i certyfikaty mogą być dołączane do nich.
Użytkownikom można udzielić uprawnienia do wykonać procedura przechowywana, bez konieczności bezpośredniego uprawnień dla obiektów, do którego odwołuje się procedura.
Mogą one zwiększenia bezpieczeństwa aplikacji.
Sparametryzowana procedury przechowywane mogą pomóc w zabezpieczeniu aplikacji przed atakami iniekcją SQL.Aby uzyskać więcej informacji, zobacz Iniekcją SQL.
Umożliwiają one modułowych programowania.
Raz utworzyć procedurę i wywoływać na dowolną liczbę razy w programie.Może to poprawić łatwość konserwacji aplikacji i umożliwiają aplikacjom dostęp do bazy danych w jednolity sposób.
Są one nazywane kodu, co pozwala na wiązanie opóźnione.
Zapewnia to poziom indirection dla rozwoju łatwe kodu.
Mogą one zmniejszyć ruch w sieci.
Operacje wymagające setki wierszy Transact-SQL Kod można przeprowadzić przy użyciu pojedynczej instrukcja, która wykonuje kod w procedurze, a nie wysyłając setki wiersze kodu za pośrednictwem sieci.