Procedury to podprogramy, które można tworzyć i zapisywać w pliku jako obiekty bazy danych. Podobnie jak w innych językach, możesz tworzyć i upuszczać procedury SQL także. W tym artykule przyjrzyjmy się procedurom języka SQL wraz ze składnią i przykładami.
Tematy poruszane w artykule to:
wywołanie przez referencję c ++
Co to jest procedura w SQL?
Procedura w (często nazywana procedurą składowaną),jest jednostką wielokrotnego użytku, która hermetyzuje określoną logikę biznesową aplikacji. Procedura SQL to grupa instrukcji SQL i logiki, kompilowanych i przechowywanych razem w celu wykonania określonego zadania.
Poniżej wymienione są kluczowe cechy procedur SQL:
- Łatwe do wdrożenia, ponieważ używają bardzo prostegojęzyk wysokiego poziomu, z silną typografią
- Obsługuje trzy rodzaje parametrów, a mianowicie:parametry wejścia, wyjścia i wejścia-wyjścia.
- Bardziej niezawodny niż odpowiednikprocedury zewnętrzne.
- Procedury SQL sprzyjają możliwości ponownego wykorzystania i konserwacji.
- Obsługuje prosty, ale zaawansowany model obsługi warunków i błędów.
- Zwróć wartość statusu do procedury wywołującej lub partii, aby wskazać powodzenie lub niepowodzenie oraz przyczynę niepowodzenia.
Teraz, gdy już wiesz, czym są procedury i dlaczego są potrzebne, omówmy składnię i przykład procedury w języku SQL.
Składnia procedur w SQL
Poniżej przedstawiono podstawową składnię tworzenia procedury w języku SQL:
CREATE [OR REPLACE] PROCEDURE nazwa_procedury [(nazwa_parametru [IN | OUT | IN OUT] typ [])] IS BEGIN [sekcja_deklaracji] sekcja_wykonawcza // instrukcja SQL używana w procedurze składowanej END GO
Terminologie składniowe
Parametr
Parametr to zmienna, która posiada wartość anypoprawny typ danych SQL, przez który podprogram może wymieniać wartości z głównym kodem. Innymi słowy, sarametry służą do przekazywania wartości do procedury. Istnieją 3 różne typy parametrów, które są następujące:
- W : TJest to parametr domyślny, który zawsze otrzymuje wartości z programu wywołującego. Jest to zmienna tylko do odczytu wewnątrz podprogramów i jej wartości nie można zmienić wewnątrz podprogramu.
- NA ZEWNĄTRZ: To jestużywany do pobierania danych wyjściowych z podprogramów.
- WEJŚCIE: Tojest używany zarówno do podawania danych wejściowych, jak i do pobierania danych wyjściowych z podprogramów.
Inne terminologie
- nazwa-procedury określa nazwę procedury. Powinien być wyjątkowy.
- Opcja [OR REPLACE] umożliwia modyfikację istniejącej procedury.
- IS | Klauzula AS, ustawilikontekst do wykonania procedury składowanej.Różnica polega na tym, że słowo kluczowe „IS” jest używane, gdy procedura jest zagnieżdżona w innych blokach, a jeśli procedura jest samodzielna, używane jest słowo „AS”.
- Code_Block deklaruje instrukcje proceduralne, które obsługują całe przetwarzanie w ramach procedury składowanej. Zawartość code_block zależy od reguł i języka proceduralnego używanego przez Baza danych .
Procedura w języku SQL: przykłady
Przykład 1
Poniższy przykład tworzy prostą procedurę, która wyświetla komunikat powitalny na ekranie po wykonaniu. Następnie procedura będzie wyglądać następująco:
PROCEDURA TWORZENIA LUB WYMIANY welcome_msg (para1_name W VARCHAR2) JEST POCZĄTEK dbms_output.put_line ('Hello World!' || para1_name) END /
Wykonaj procedurę składowaną. Samodzielną procedurę można wywołać na dwa sposoby & minus
- Używając WYKONAĆ słowo kluczowe
- Wywołanie nazwy procedury z bloku SQL
Powyższą procedurę można wywołać za pomocą słowa kluczowego Execute w następujący sposób:
EXEC welcome_msg („Witamy w Edurece!”)
Wynik
Witaj świecie! Witamy w Edurece
Procedura jest wykonywana, a wiadomość jest drukowana jako „Hello World! Witamy w Edurece ”.
Przykład 2
Załóżmy, że masz tabelę ze szczegółami pracownika, na przykład EmployeId, Firstname, Lastname i DepartmentDetails.
Ten przykład tworzy procedurę SQL, która zwróci nazwisko pracownika, kiedy EmployeId jest podawany jako parametr wejściowy procedury składowanej. Następnie procedura będzie wyglądać następująco:
Utwórz PROCEDURĘ GetStudentName (@employeeID INT, - parametr wejściowy, identyfikator pracownika @employeName VARCHAR (50) OUT - parametr wyjściowy, nazwa pracownika AS BEGIN SELECT @ EmployeName = Firstname + '' + Lastname FROM Employee_Table WHERE EmployeId = @ EmployeID KONIEC
Kroki do wykonania:
rodzaje szkieletów w selenie
- Zadeklaruj @employeName jako nvarchar (50)
- EXEC GetStudentName 01, dane wyjściowe @employeName
- wybierz @employeName
Powyższa procedura dotycząca podania identyfikatora pracownika jako danych wejściowych zwraca nazwisko tego konkretnego pracownika. Załóżmy, że mamy parametr wyjściowy tkura najpierw musimy zadeklarować zmienną, aby zebrać wartości wyjściowe.Przyjrzyjmy się teraz zaletom procedury w SQL.
Zalety procedur w SQL
Głównym celem procedur składowanych w SQL jest bezpośrednie ukrycie Zapytania SQL z kodu i poprawić wydajność operacji bazy danych, takich jak wybieranie, aktualizowanie i usuwanie danych. Inne zalety procedury w SQL to:
- Zmniejsza ilość informacji wysyłanych do serwera bazy danych. Może to stać się ważniejszą korzyścią, gdy przepustowość sieci jest mniejsza.
- Włącza możliwość ponownego wykorzystania kodu
- Zwiększa bezpieczeństwo, ponieważ można udzielić użytkownikowi uprawnień do wykonywania procedury składowanej zamiast nadawać uprawnienia do tabel używanych w procedurze składowanej.
- Obsługa zagnieżdżonych wywołań procedur do innych procedur SQL lub procedur zaimplementowanych w innych językach.
Podsumowując, procedury w SQL (procedury składowane)nie tylko zwiększają możliwość ponownego wykorzystania kodu, ale także zwiększają wydajność bazy danych. W jaki sposób? Poprzez zmniejszenie ruchu w sieci poprzez zmniejszenie ilości informacji przesyłanych w sieci. W ten sposób dotarliśmy do końca tego artykułu.
Jeśli chcesz dowiedzieć się więcej o MySQL i poznaj tę relacyjną bazę danych typu open source, a następnie sprawdź naszą który obejmuje szkolenie na żywo prowadzone przez instruktora i rzeczywiste doświadczenie projektowe. To szkolenie pomoże ci dogłębnie zrozumieć MySQL i osiągnąć mistrzostwo w tym temacie.
Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy w tym artykule „Procedury w języku SQL”, a skontaktujemy się z Tobą.