Oracle8 Programowanie w jezyku PL SQL.pdf
(
415 KB
)
Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TRE CI
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
Oracle8.
Programowanie
w jêzyku PL/SQL
Autor: Scott Urman
T³umaczenie: Tomasz Pêdziwiatr, Grzegorz Stawikowski,
Cezary Welsyng
ISBN: 83-7197-533-3
Tytu³ orygina³u:
Oracle8 PL/SQL Programming
Format: B5, stron: 762
Wykorzystanie wbudowanego w system Oracle jêzyka PL/SQL w znacz¹cy sposób
powiêksza potencja³ programisty systemów bazodanowych. PL/SQL ³¹czy w sobie du¿e
mo¿liwo ci i elastyczno æ jêzyka czwartej generacji (4GL) SQL z konstrukcjami
proceduralnymi jêzyka trzeciej generacji (3GL). Programy napisane w tym jêzyku
umo¿liwiaj¹ obs³ugê danych zarówno w samym systemie Oracle, jak i w zewnêtrznych
aplikacjach.
Ksi¹¿ka „Oracle8. Programowanie w jêzyku PL/SQL” to wyczerpuj¹ce omówienie jêzyka
PL/SQL. To doskona³a pozycja u³atwiaj¹ca naukê tego jêzyka, wietnie te¿ sprawdza
siê jako podrêczne kompendium wiedzy o PL/SQL, pomocne w codziennej pracy.
Liczne przyk³ady uzupe³niaj¹ informacje zawarte w ksi¹¿ce pokazuj¹c sprawdzone
metody rozwi¹zywania problemów, napotykanych przez programistów.
W ksi¹¿ce omówiono miêdzy innymi:
• Podstawy jêzyka PL/SQL: struktura programu, zmienne, typy, wyra¿enia
i operatory oraz instrukcje steruj¹ce
• Korzystanie z rekordów i tabel
• Korzystanie z SQL z poziomu PL/SQL, funkcje SQL dostêpne w PL/SQL
• Tworzenie i u¿ywanie kursorów
• Bloki w PL/SQL: podprogramy (procedury i funkcje), pakiety i wyzwalacze
• Metody obs³ugi b³êdów w PL/SQL
• Obiekty w PL/SQL, kolekcje
• Testowanie i wykrywanie b³êdów
• Zagadnienia zaawansowane: dynamiczny PL/SQL, komunikacja miêdzy sesjami,
kolejkowanie, obs³uga zadañ, procedury zewnêtrzne
• Optymalizacja aplikacji PL/SQL i metody zapewnienia maksymalnej wydajno ci
Ksi¹¿ka jest przeznaczona zarówno dla do wiadczonych programistów, jak i tych,
którzy jeszcze nie poznali innych jêzyków trzeciej generacji. Przydatna, choæ
niekonieczna, jest ogólna znajomo æ systemu Oracle (³¹czenie siê i korzystanie z bazy
danych, podstawy jêzyka SQL, itp.).
TWÓJ KOSZYK
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWO CIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
Spis treści
Wstęp ...................................................................................................17
Rozdział 1. Wprowadzenie do PL/SQL......................................................................23
Dlaczego język PL/SQL?..........................................................................................................23
Model klient-serwer............................................................................................................25
Normy .................................................................................................................................26
Właściwości języka PL/SQL ....................................................................................................26
Struktura bloku ...................................................................................................................26
Zmienne i typy danych .......................................................................................................27
Konstrukcje pętlowe ...........................................................................................................28
Konwencje stosowane w niniejszej ksią ce..............................................................................30
Wersje języka PL/SQL oraz bazy danych Oracle...............................................................30
Dokumentacja Oracle .........................................................................................................31
Kod dostępny na płycie CD................................................................................................32
Przykładowe tabele ...................................................................................................................32
Podsumowanie ..........................................................................................................................38
Rozdział 2. Podstawy języka PL/SQL .......................................................................39
Blok PL/SQL.............................................................................................................................39
Podstawowa struktura bloku...............................................................................................42
Jednostki leksykalne .................................................................................................................44
Identyfikatory .....................................................................................................................44
Ograniczniki .......................................................................................................................46
Literały................................................................................................................................48
Komentarze.........................................................................................................................49
Deklaracje zmiennych...............................................................................................................51
Składnia deklaracji..............................................................................................................51
Inicjowanie zmiennych.......................................................................................................52
Typy danych w języku PL/SQL................................................................................................53
Typy skalarne......................................................................................................................53
Typy zło one ......................................................................................................................60
Typy odwołania ..................................................................................................................60
Typy LOB...........................................................................................................................60
Wykorzystanie atrybutu %Type .........................................................................................61
Podtypy definiowane przez u ytkownika...........................................................................62
Konwersja pomiędzy typami danych..................................................................................62
Zakres i widoczność zmiennej............................................................................................64
Wyra enia i operatory...............................................................................................................65
Przypisanie..........................................................................................................................66
Wyra enia ...........................................................................................................................67
6
Oracle8. Programowanie w języku PL/SQL
Struktury sterowania PL/SQL...................................................................................................69
Instrukcja IF-THEN-ELSE.................................................................................................70
Pętle ....................................................................................................................................73
Instrukcje GOTO oraz etykiety ..........................................................................................77
Dyrektywy pragma .............................................................................................................80
Styl programowania w języku PL/SQL ....................................................................................80
Wprowadzanie komentarzy ................................................................................................81
Nazywanie zmiennych........................................................................................................82
Stosowanie du ych liter......................................................................................................82
Odstępy w kodzie programu...............................................................................................82
Ogólne uwagi dotyczące stylu programowania..................................................................83
Podsumowanie ..........................................................................................................................83
Rozdział 3. Rekordy i tabele ....................................................................................85
Rekordy w języku PL/SQL .......................................................................................................85
Przypisanie rekordu ............................................................................................................86
Stosowanie operatora %ROWTYPE ..................................................................................88
Tabele........................................................................................................................................88
Tabele a tablice ...................................................................................................................89
Atrybuty tabeli ....................................................................................................................91
Wytyczne stosowania tabel PL/SQL ..................................................................................94
Podsumowanie ..........................................................................................................................95
Rozdział 4. SQL w PL/SQL.......................................................................................97
Instrukcje SQL ..........................................................................................................................97
Wykorzystanie instrukcji SQL w języku PL/SQL..............................................................98
Stosowanie instrukcji DML w języku PL/SQL ........................................................................99
Instrukcja SELECT...........................................................................................................101
Instrukcja INSERT ...........................................................................................................102
Instrukcja UPDATE..........................................................................................................104
Instrukcja DELETE ..........................................................................................................104
Klauzula WHERE.............................................................................................................105
Odwołania do tabel ...........................................................................................................108
Powiązania bazy danych...................................................................................................109
Synonimy..........................................................................................................................110
Pseudokolumny.......................................................................................................................110
Pseudokolumny CURRVAL oraz NEXTVAL.................................................................110
Pseudokolumna LEVEL ...................................................................................................111
Pseudokolumna ROWID ..................................................................................................111
Pseudokolumna ROWNUM .............................................................................................112
Instrukcje GRANT i REVOKE. Uprawnienia........................................................................112
Uprawnienia obiektowe a uprawnienia systemowe..........................................................113
Instrukcje GRANT oraz REVOKE ..................................................................................113
Role...................................................................................................................................115
Sterowanie transakcjami .........................................................................................................116
Instrukcja COMMIT a instrukcja ROLLBACK...............................................................116
Punkty zachowania ...........................................................................................................118
Transakcje a bloki.............................................................................................................119
Podsumowanie ........................................................................................................................120
Rozdział 5. Wbudowane funkcje SQL......................................................................121
Wstęp ......................................................................................................................................121
Funkcje znakowe zwracające wartości znakowe ....................................................................122
CHR ..................................................................................................................................122
CONCAT..........................................................................................................................122
Spis treści
7
INITCAP...........................................................................................................................123
LOWER ............................................................................................................................123
LPAD................................................................................................................................124
LTRIM..............................................................................................................................125
NLS_INITCAP .................................................................................................................125
NLS_LOWER...................................................................................................................126
NLS_UPPER ....................................................................................................................126
REPLACE.........................................................................................................................127
RPAD................................................................................................................................128
RTRIM..............................................................................................................................128
SOUNDEX .......................................................................................................................129
SUBSTR ...........................................................................................................................130
SUBSTRB.........................................................................................................................131
TRANSLATE ...................................................................................................................131
UPPER..............................................................................................................................132
Funkcje znakowe zwracające wartości liczbowe....................................................................133
ASCII................................................................................................................................133
INSTR...............................................................................................................................133
INSTRB ............................................................................................................................134
LENGTH ..........................................................................................................................135
LENGTHB........................................................................................................................135
NLSSORT.........................................................................................................................136
Funkcje numeryczne ...............................................................................................................136
ABS...................................................................................................................................136
ACOS................................................................................................................................137
ASIN .................................................................................................................................137
ATAN ...............................................................................................................................138
ATAN2 .............................................................................................................................138
CEIL .................................................................................................................................139
COS...................................................................................................................................139
COSH................................................................................................................................140
EXP...................................................................................................................................140
FLOOR .............................................................................................................................140
LN .....................................................................................................................................141
LOG ..................................................................................................................................141
MOD .................................................................................................................................142
POWER ............................................................................................................................142
ROUND ............................................................................................................................143
SIGN .................................................................................................................................143
SIN....................................................................................................................................144
SINH .................................................................................................................................144
SQRT ................................................................................................................................144
TAN ..................................................................................................................................145
TANH ...............................................................................................................................145
TRUNC.............................................................................................................................146
Funkcje związane z datą .........................................................................................................146
ADD_MONTHS...............................................................................................................146
LAST_DAY......................................................................................................................147
MONTHS_BETWEEN ....................................................................................................147
NEW_TIME .....................................................................................................................148
NEXT_DAY .....................................................................................................................149
ROUND ............................................................................................................................149
SYSDATE ........................................................................................................................150
TRUNC.............................................................................................................................151
8
Oracle8. Programowanie w języku PL/SQL
Funkcje dokonujące konwersji................................................................................................152
CHARTOROWID ............................................................................................................152
CONVERT .......................................................................................................................153
HEXTORAW ...................................................................................................................153
RAWTOHEX ...................................................................................................................154
ROWIDTOCHAR ............................................................................................................154
TO_CHAR(daty) ..............................................................................................................155
TO_CHAR(etykiety) ........................................................................................................155
TO_CHAR(liczba)............................................................................................................157
TO_DATE ........................................................................................................................159
TO_LABEL ......................................................................................................................159
TO_MULTI_BYTE..........................................................................................................160
TO_NUMBER..................................................................................................................160
TO_SINGLE_BYTE ........................................................................................................161
Funkcje grupowe.....................................................................................................................161
AVG..................................................................................................................................161
COUNT.............................................................................................................................162
GLB ..................................................................................................................................163
LUB ..................................................................................................................................163
MAX .................................................................................................................................163
MIN...................................................................................................................................164
STDDEV...........................................................................................................................164
SUM..................................................................................................................................165
VARIANCE......................................................................................................................165
Inne funkcje.............................................................................................................................166
BFILENAME ...................................................................................................................166
DECODE ..........................................................................................................................166
DUMP...............................................................................................................................167
EMPTY_CLOB/EMPTY_BLOB.....................................................................................169
GREATEST......................................................................................................................169
GREATEST_LB...............................................................................................................170
LEAST..............................................................................................................................170
LEAST_UB ......................................................................................................................170
NVL ..................................................................................................................................171
UID ...................................................................................................................................171
USER ................................................................................................................................172
USERENV........................................................................................................................172
VSIZE ...............................................................................................................................173
PL/SQL w działaniu. Drukowanie liczb w postaci tekstowej.................................................174
Podsumowanie ........................................................................................................................180
Rozdział 6. Kursory ...............................................................................................181
Czym jest kursor?....................................................................................................................181
Przetwarzanie kursorów jawnych .....................................................................................182
Przetwarzanie kursorów niejawnych ................................................................................189
Pętle pobierania danych kursora .............................................................................................191
Pętle proste........................................................................................................................191
Pętle WHILE ....................................................................................................................193
Pętle FOR kursora.............................................................................................................194
Wyjątek NO_DATA_FOUND kontra atrybut %NOTFOUND .......................................195
Kursory z klauzulą FOR UPDATE instrukcji SELECT...................................................196
Zmienne kursora .....................................................................................................................199
Deklaracja zmiennej kursora ............................................................................................200
Przydzielenie obszaru pamięci dla zmiennych kursora ....................................................201
Otwieranie zmiennej kursora dla zapytania......................................................................202
Plik z chomika:
PDFator
Inne pliki z tego folderu:
Java Kompendium programisty Wydanie VIII.pdf
(729 KB)
Oracle Database 11g Podrecznik administratora baz danych.pdf
(484 KB)
Oracle Database 10g Podrecznik administratora baz danych.pdf
(1149 KB)
Oracle Database 10g Nowe mozliwosci.pdf
(350 KB)
Oracle Database 11g i SQL Programowanie.pdf
(575 KB)
Inne foldery tego chomika:
3ds max
50 zadań i zagadek szachowych
Access
Acrobat
Administracja
Zgłoś jeśli
naruszono regulamin