18974 ullman230 (2)

18974 ullman230 (2)



400 7. SYSTEMOWE ASPEKTY JĘZYKA SQL

d)    Usuwanie z przykładu 5.29.

e)    Aktualizacja z przykładu 5.31.

f)    Więzy krotkowe z rys. 6.4.

g)    Ascrcja z przykładu 6.10.

^Ćwiczenie 7.4.2. Utworzyć diagram grant po wykonaniu czynności 4, 5 i 6 ciągu, który został przedstawiony na rys. 7.19. Należy założyć, że właścicielem relacji z prawami p jest użytkownik A.

Numer

czynności

Kio

Czynność

1

A

GRANT p TO B WITH GRANT OPTION

2

A

GRANT p TO C

3

B

GRANT p TO D WITH GRANT OPTION

4

D

GRANT p TO B, C, E WITH GRANT OPTION

5

B

REVOKE p FROM D CASCADE

6

A

REVOKE p FROM C CASCADE

RYSUNEK 7.19

Ciąg czynności do ćwiczenia 7.4.2

Ćwiczenie 7.4.3. Utworzyć diagram grant po wykonaniu czynności 5 i 6 ciągu, który został przedstawiony na ry s. 7.20. Należy założyć, że właścicielem relacji z prawami p jest użytkownika.

Numer

czynności

Kio

Czynność

1

A

GRANT p TO B, E WITH GRANT OPTION

2

B

GRANT p TO C WITH GRANT OPTION

3

C

GRANT p TO D WITH GRANT OPTION

4

E

GRANT p TO C

5

E

GRANT p 70 D WITH GRANT OPTION

6

A

REVOKE GRANT OPTION FOR p FROM B CASCADE

RYSUNEK 7.20

Ciąg czynności do ćw iczenia 7.4.3

IĆwiczenic 7.4.4. Należy' utworzyć diagram grant powstały w wyniku przetworzenia następującego ciągu instrukcji, przy założeniu, ze właścicielem relacji z prawami jest użytkownik A.

Nr czynności

Kto

Czynność

1

A

GRANTp TO B WITH GRANT OPTION

2

B

GRANT pTO B WITH GRANT OPTION

3

A

REYOKE p FOR FROM B CASCADE

7.5. Podsumowanie

♦    Osadzanie SQL (embedded SQL): Zamiast korzystać z interfejsu zapytań do uruchamiania zapytań i wprowadzania zmian w języku SQL, często jest efektywniej napisać program w standardowym języku programowania i wstawdć do niego instrukcje SQL.

♦    Niedopasowanie falowe (impedance mismalch): Model danych $QL rożni się zasadniczo od modeli danych w zwykłych językach programowania. Dlatego do komunikacji między instrukcjami SQL a programem zewnętrznym trzeba korzystać z tzw. zmiennych dzielonych, w których można przekazywać wartości składowych krotek.

♦    Kursory (cursors): Kursor jest zmienną SQL, która wskazuje krotkę w relacji. Kursory są dodatkowym mechanizmem SQL, który umożliwia połączenie języka podstawowego i SQL. a stosuje się je w połączeniu ze zmiennymi dzielonymi, do których zapisuje się wartości z krotki, wskazywanej w danej chwili przez kursor.

♦    Dynamiczny SQL {dynamie SQL): Zamiast wstaw iać fragmenty SQL do programu podstawowego może on generować teksty, które są interpretowane jako instrukcje SQL i wykonywane przez system SQL.

♦    Sterowanie współbieżnością (concicrrency control): W systemie SQL istnieją dwa mechanizmy, które pozwalają unikać konfliktów związanych z jednoczesnym przetwarzaniem: transakcje oraz ograniczenia w stosowaniu kursorów. Ograniczenia kursorów polegają na deklarowaniu kursora jako „niewrażliwego”, co oznacza, że zmiany dokonywane w relacji nie są widoczne.

♦    Transakcje. (transactions): Programista może grupować instrukcje w jednostki zwane transakcjami, które się zatw ierdza lub cofa (unieważnia). W tym drugim przypadku cofa się wszystkie zmiany powstałe w bazie danych.

♦    Poziomy izolacji (isolation levels)\ Transakcje w systemie SQL można określać na jednym z czterech poziomów' izolacji, które w kolejności od najbardziej do najmniej restrykcyjnego określa się jako: „sekwencyjny” (transakcja musi się wykonać zawsze w całości, zanim inna transakcja się zacznie lub po kompletnym zakończeniu innej transakcji), „odczyt powtarzalny” (każda krotka, która pojawiła się w wyniku zapytania, będzie pojawiała się w kolejnych odpowiedziach), „odczyt zatwierdzony” (tylko krotki powstałe w wyniku zatwierdzenia transakcji są dostępne dla innych transakcji) oraz „odczyt niczatwicrdzo-ny” (nie ma żadnych ograniczeń na dostęp do danych).

♦    Kursory i transakcje tyjko do odczytu (read-only cursors and transactions): Zarówno kursory, jak i transakcje można zadeklarować jako tylko do odczytu. Dzięki temu można uzyskać pewność, że kursor lub transakcja nie zmienią stanu bazy danych, a jednocześnie stanowi to informację dla systemu SQL o tym, że ten obiekt nie spowoduje naru-


Wyszukiwarka

Podobne podstrony:
ullman208 (2) 422 7. SYSTEMOWE ASPEKTY JĘZYKA SQL PRZYKŁAD 7.3 Przedstawimy tu funkcję C. która służ
51873 ullman225 (2) 430 7. SYSTEMOWE ASPEKTY JĘZYKA SQL Po pierwsze należy wiedzieć, że wszystkie el
42485 ullman206 (2) 41$ 7. SYSTEMOWE ASPEKTY JĘZYKA SQI.7.1.2. Interfejs między językiem SQL i
ullman231 (2) 7. SYSTEMOWI- ASPEKTY JEŻYKA SQL szenia nie wrażliwość i, sckwencyjności ani innych me
60359 ullman222 (2) *+_)U 7. SYSTEMOWE ASPEKTY JĘZYKA SQL. f Schemat bieżący można modyfikować,
63643 ullman207 (2) T 7. SYSTEMOWE ASPEKTY JĘZYKA SQL void podajStudio{ ) { 1)    EXS
17514 ullman224 (2) 454 7 SYSTEMOWE ASPEKTY JĘZYKA SQI.7.4. Bezpieczeństwo i autoryzacja użytkownika
47839 ullman216 (2) 438 7. SYSTEMOWE ASPEKTY JĘZYKA SQI. do. Wartości atrybutów określają więc numer

więcej podobnych podstron