Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Wprowadzenie do funkcji PL/SQL w bazie danych Oracle

Dla każdego, kto kiedykolwiek studiował języki programowania, takie jak C, C++ czy Java, koncepcja funkcji nie jest nowa. Funkcje to nic innego jak grupa instrukcji wykonywalnych. Korzystając z funkcji, możesz oszczędzić sobie ponownego pisania tej samej logiki programowania. Jak więc możemy zdefiniować funkcję w Oracle PL/SQL?

Co to są funkcje PL/SQL w bazie danych Oracle?

W Oracle Database możemy zdefiniować funkcję PL/SQL jako samodzielny podprogram, który ma wykonać określone, dobrze zdefiniowane zadanie. Funkcje są nazywane blokami PL/SQL, co oznacza, że ​​mogą być przechowywane w bazie danych jako obiekt bazy danych i mogą być ponownie użyte. Jest to również powód, dla którego niektóre książki nazywają funkcje PL/SQL funkcjami przechowywanymi.

Typy funkcji PL/SQL w bazie danych Oracle

W Oracle Database istnieją dwa typy funkcji PL/SQL, są to

  1. Funkcje przekazywania według wartości i
  2. Funkcje przekazywania przez referencję

W Oracle Database oba typy funkcji powinny zwracać pewne wartości, a te wartości powinny być prawidłowym typem danych SQL lub PL/SQL.

Składnia funkcji PL/SQL w bazie danych Oracle

CREATE [OR REPLACE] FUNCTION function_name
(Parameter 1, Parameter 2…)
RETURN datatype
IS
	Declare variable, constant etc.  
BEGIN
	Executable Statements
	Return (Return Value);
END;

Omówiłem składnię funkcji PL/SQL wiersz po wierszu w samouczku wideo na moim kanale YouTube na ten sam temat. Sugeruję, abyś raz sprawdził ten samouczek.

Metoda wykonywania funkcji

W zależności od Twojej kreatywności i umiejętności programowania, funkcję PL/SQL można wywołać na wiele sposobów. Oto kilka ogólnych sposobów wywoływania funkcji PL/SQL w bazie danych Oracle

  1. Możesz użyć narzędzia SQL*Plus bazy danych Oracle do wywołania funkcji PL/SQL, która może być wywołana z PL/SQL jako instrukcja proceduralna.
  2. Anonimowy blok PL/SQL może być również użyty do wywołania funkcji.
  3. Możesz nawet wywołać funkcję bezpośrednio w instrukcji SELECT lub DML.

Bądź na bieżąco, omówimy każdą z tych metod wykonywania funkcji PL/SQL w następnym samouczku.

Ograniczenia w wywoływaniu funkcji

  1. Funkcja zwracająca typ danych SQL może być używana wewnątrz instrukcji SQL, a funkcja PL/SQL zwracająca typ danych PL/SQL działa tylko wewnątrz bloków PL/SQL. Wyjątkiem od tej reguły jest to, że nie można wywołać funkcji zawierającej operację DML w zapytaniu SQL. Możesz jednak wywołać funkcję, która wykonuje operację DML wewnątrz INSERT, UPDATE i DELETE.
  2. Funkcja wywołana z instrukcji UPDATE lub DELETE w tabeli nie może wysyłać zapytań (SELECT) ani wykonywać transakcji (DML) w tej samej tabeli.
  3. Funkcja wywoływana z wyrażeń SQL nie może zawierać polecenia TCL (COMMIT lub ROLLBACK) ani polecenia DDL (CREATE lub ALTER)

To wszystko w tym samouczku dotyczącym wprowadzenia do funkcji PL/SQL w bazie danych Oracle. Koniecznie sprawdź następny samouczek, w którym zademonstruję tworzenie funkcji PL/SQL na bardzo prostym przykładzie.

Upewnij się również, że udostępnisz tego bloga w swoich mediach społecznościowych, ponieważ co miesiąc rozdaję gadżety RebellionRider jednemu z losowo wybranych zwycięzców. Aby uzyskać dalsze aktualizacje, śledź mnie na moim Facebooku i Twitterze.

Dziękujemy za przeczytanie i życzę miłego dnia!


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle:wydajność zbierania zbiorczego

  2. ORA-12170:TNS:Przekroczono limit czasu połączenia

  3. Konwertuj ciąg znaków oddzielonych przecinkami na tablicę w PL/SQL

  4. Uzyskaj wartość na podstawie maks. innej kolumny pogrupowanej według innej kolumny

  5. Jak mogę uzyskać dostęp do Oracle z Pythona?