Lista 4 – PL/SQL, bloki anonimowe i funkcje/procedury nie

Transkrypt

Lista 4 – PL/SQL, bloki anonimowe i funkcje/procedury nie
Lista 4 – PL/SQL, bloki anonimowe i funkcje/procedury nie operujące na danych
Do wyświetlenia wartości z niektórych zadań należy w menu View program Oracle SQL
Developer włączyć wyświetlanie okna DBMS Output i dodać aktualne połączenie.
1. Stworzyć blok anonimowy w którym za pomocą
SYS_CONTEXT('USERENV','NLS_DATE_FORMAT')
pobierzemy (do zmiennej tekstowej) formatowanie daty, i za pomocą tego formatowania
wyświetlimy datę bieżącą (TO_CHAR, SYSDATE) – wykorzystać DBMS_OUTPUT.Put_line.
2. utworzyć funkcję która jako parametr wejściowy będzie miała podaną przez użytkownika datę
urodzenia i wyświetli najbliższą datę urodzin (patrz lista 1).
3. utworzyć funkcję, która usunie z podanego napisu „polskie” literki (zamieni je na literki bez
ogonków) – wykorzystać funkcje TRANSLATE.
4. utworzyć funkcję, która sprawdza, czy podany rok jest rokiem przestępnym (zwraca wartość 0
lub 1), a następnie drugą funkcję, która wylicza ostatni dzień miesiąca z podanej dany (bez
korzystania z funkcji LAST_DAY)
5. utworzyć funkcję, która z podanego czasu utworzy wartość liczbową określającą liczbę
sekund od północy – z podanego czasu należy wyciągnąć godziny, minuty i sekundy i
odpowiednio pomnożyć (EXTRACT( part FROM datetime) lub TO_CHAR(datetime,
‘mi/hh24/ss’).
6. Utworzyć funkcję, która będzie liczyła kolejne potęgi dwójki, korzystając z różnych rodzajów
pętli: LOOP, WHILE, FOR. Przed wykonaniem obliczeń sprawdzić podana wartość, czy
obliczenia są możliwe (max. 38 liczb znaczących dla typu number, podana wartość musi być
nieujemna).
7. Utworzyć funkcję, która sprawdza czy podana liczba jest pierwsza (standardowo poprzez
sprawdzenie dzielenia od 2 do liczba/2).

Podobne dokumenty