W świecie tworzenia baz danych przywiązuje się dużą wagę do ponownego wykorzystania kodu. W tradycyjnych proceduralnych językach programowania, takich jak C czy Fortran, wartość programowania modułowego i jego zastosowanie w promowaniu ponownego wykorzystania kodu jest dobrze znana i rozumiana. Kiedy jednak pojawia się SQL, sytuacja staje się mniej jasna i nie ma zgody co do tego, jak najlepiej zastosować tradycyjną koncepcję modułowości.

Modularność

Modułowość zaczyna się od pomysłu, że złożony projekt można ogólnie podzielić na zestaw mniej złożonych modułów składowych, z którymi łatwiej się pracuje. Z punktu widzenia programowania długi technologiczne programu głównego zostałby podzielony na mniejsze podprogramy, z dużo krótszym programem głównym, który wywołuje podprogramy.

Z tego punktu wyjścia wyłania się możliwość ponownego wykorzystania kodu, przy czym dekompozycja na moduły ma na celu zidentyfikowanie wspólnej logiki, którą można umieścić w modułach generycznych i wywołać w wielu miejscach. Prostym tego przykładem mógłby być moduł rejestrujący błędy w PL / SQL, który zapisywałby wszelkie błędy Oracle w tabeli wraz z informacjami o stosie wywołań, które można by wywołać wszędzie tam, gdzie takie błędy muszą zostać złapane. Można to nazwać wzorcem rejestrowania błędów i jest oczywiste, że tego rodzaju ponowne wykorzystanie kodu może prowadzić do prostszych i łatwiejszych w utrzymaniu systemów.

SQL

Dzięki programowi, który dostępny jest pod adresem Szkolenie SQL poznasz praktyczne zasady pisania modularnego kodu SQL. Kursy prowadzimy między innymi w Warszawie w dedykowanym centrum szkoleniowym. Szkolenie organizowane jest na przygotowanych stacjach roboczych z zainstalowaną bazą danych. Każda z baz danych przygotowana jest do pisania kodu dzięki czemu poznasz zasady pisania optymalnego kodu. Sam język SQL jest zasadniczo językiem deklaratywnym, a nie proceduralnym, służącym do pobierania (i aktualizowania itp.) Danych z relacyjnych baz danych. Pierwotny pomysł polegał na tym, że programista określa tabele i kolumny, w których przechowywane są dane, a także sposób, w jaki tabele są powiązane za pomocą wartości kluczy, ale nie określa algorytmów pobierania danych: Algorytmy pobierania są wykonywane przez silnik SQL. Dlatego może się wydawać, że zakres modułowości w instrukcji wyboru języka SQL jest niewielki. Jednak nie jest to do końca prawdą z kilku powodów: Po pierwsze, ścieżki logiczne muszą być określone między tabelami, a ta sama ścieżka może wymagać określenia wiele razy z różnych punktów początkowych; na przykład ścieżka do adresów rozliczeniowych i wysyłkowych w zamówieniu sprzedaży zwykle obejmuje tę samą sekwencję kroków z różnych kolumn identyfikatora; po drugie, wraz z ewolucją języka SQL, dodano możliwości proceduralne, takie jak funkcje analityczne i rekurencja.