Uruchamianie procedur przechowywanych

Dotyczy:sql ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

Procedura przechowywana to obiekt wykonywalny przechowywany w bazie danych. SQL Server wspiera:

  • Procedury przechowywane:

    Jedna lub więcej instrukcji SQL wstępnie skompilowanych w jedną procedurę wykonywalną.

  • Rozszerzone procedury przechowywane:

    Biblioteki dynamicznych łącz C lub C++ (DLL) zapisane w API SQL Server Open Data Services dla rozszerzonych procedur przechowywanych. API Open Data Services rozszerza możliwości procedur przechowywanych o kod C lub C++.

Podczas wykonywania instrukcji, wywołanie procedury przechowywanej na źródle danych (zamiast bezpośredniego wykonania lub przygotowania instrukcji w aplikacji klienckiej) może zapewnić:

  • Wyższa wydajność

    Instrukcje SQL są parsowane i kompilowane podczas tworzenia procedur. Ten narzut jest następnie zapisywany podczas wykonywania procedur.

  • Zmniejszony narzut sieci

    Wykonanie procedury zamiast wysyłania złożonych zapytań przez sieć może zmniejszyć ruch sieciowy. Jeśli aplikacja ODBC używa składni ODBC { CALL } do wykonania procedury przechowywanej, sterownik ODBC wprowadza dodatkowe optymalizacje, eliminując konieczność konwersji danych parametrów.

  • Większa spójność

    Jeśli reguły organizacji są zaimplementowane w centralnym zasobie, takim jak procedura przechowywana, można je zakodować, przetestować i raz debugować. Poszczególni programiści mogą wtedy korzystać z testowanych procedur przechowywanych zamiast rozwijać własne implementacje.

  • Większa dokładność

    Ponieważ procedury przechowywane są zwykle rozwijane przez doświadczonych programistów, są one zwykle bardziej wydajne i zawierają mniej błędów niż kod tworzony wielokrotnie przez programistów o różnym poziomie umiejętności.

  • Dodane funkcje

    Rozszerzone procedury przechowywane mogą korzystać z funkcji C i C++, które nie są dostępne w Transact-SQL instrukcjach.

    Przykład, jak wywołać procedurę przechowywaną, można znaleźć w Process Return Codes and Output Parameters (ODBC).

W tej Sekcji