Zwracanie danych przy użyciu parametrów wyjście
Po określeniu słów kluczowych wyjście parametru w definicji procedury procedury przechowywanej może zwracać bieżącą wartość parametru do programu wywołującego, gdy procedura przechowywana kończy pracę.Aby zapisać wartość parametru w zmiennej używanej w programie wywołującego, program wywołujący musi użyć słowa kluczowego wyjście podczas wykonywania procedura przechowywana.
Przykłady
W poniższym przykładzie pokazano procedura przechowywana o dane wejściowe i parametru wyjściowego.Pierwszy parametr w procedurze przechowywanej @SalesPerson otrzyma wartość wejściowa określonym przez program wywołujący, a drugi parametr @SalesYTD jest używane do zwracania wartości do programu wywołującego. Korzysta z instrukcja SELECT @SalesPerson parametr do uzyskania odpowiedniego SalesYTD wartość i przypisuje wartość do @SalesYTD wyjściowe parametru.
Poniższe instrukcje wykonać procedura przechowywana o wartość parametru wejściowego i zapisuje wartość wyjścia z procedura przechowywana w @SalesYTD Zmienne lokalne do programu wywołującego.
Wartości wejściowych może być określony dla operacji OUTPUT parametrów, gdy procedura przechowywana jest wykonywane.Dzięki temu procedura przechowywana, aby program wywołujący wyświetlić wartość, zmienić lub wykonywać operacje z nim, a następnie powrócić do programu wywołującego nową wartość.W poprzednim przykładzie @SalesYTDBySalesPerson zmiennej można przypisać wartości przed wykonaniem procedura przechowywana. The @SalesYTD variable contains the value of the parameter in the body of the procedura przechowywana, and the value of the @SalesYTD variable is returned to the calling program when the procedura przechowywana exits. To jest często określane jako „ możliwość przekazywany przez odwołanie. „
Jeśli określisz wyjście dla parametru, podczas wykonywania procedura przechowywana i parametr nie jest zdefiniowany za pomocą wyjście w procedurze przechowywanej, zostanie wyświetlony komunikat o błędzie.Można wykonać procedura przechowywana z parametrami Wyjście i nie określać wyjście podczas wykonywania procedura przechowywana.Błąd nie jest zwracany, ale nie można używać wartości danych wyjściowych w programie wywołującym.