Plan wykładu BAZY DANYCH II WYKŁAD 8. Wyzwalacze. Wyzwalacze
|
|
- Edyta Szydłowska
- 8 lat temu
- Przeglądów:
Transkrypt
1 Plan wykładu BAZY DANYCH II WYKŁAD 8 Wyzwalacze: zalety, rodzaje, tworzenie, Wyzwalacze DML, Wyzwalacze zastępujące, Wyzwalacze systemowe, Tabele mutujące, Wyzwalacze złożone, Wyzwalacze a SQL Developer, dr inż. Agnieszka Bołtuć Wyzwalacze Wyzwalacze Są to nazwane bloki języka PL/SQL, Posiadają sekcje deklaracji, wykonawczą i obsługi wyjątków, Są przechowywane w bazie jako odrębne obiekty, Są jednak uruchamiane niejawnie w momencie gdy nastąpi wyzwalające zdarzenie, Nie posiadają argumentów. Wyzwalacze mogą być zdefiniowane na tabelach, widokach, schematach lub bazach danych, Zdarzeniem wyzwalającym może być operacja DML (DELETE, INSERT, UPDATE), zdarzenie systemowe (otwarcie lub zamknięcie bazy danych, wystąpienie błędu, logowanie lub wylogowanie użytkownika) lub określone operacje DDL (CREATE, ALTER, DROP), 1
2 Zalety używania wyzwalaczy Typy wyzwalaczy Zachowywanie złożonych ograniczeń integralnościowych, których nie można zapewnić za pomocą ograniczeń tworzonych podczas definicji tabeli, Kontrola informacji z tabel, rejestracja zmian i ich autorów, W razie wprowadzania zmian w tabeli automatyczne powiadamianie innych programów o konieczności wykonania niezbędnych operacji, Bezpieczne użytkownicy i aplikacje nie mogą ich ominąć, DML uruchamiane w wyniku wykonania instrukcji INSERT, UPDATE, DELETE, można je uruchamiać przed lub po operacji, mogą działać dla wybranych wierszy lub dla wszystkich, Zastępujące definiowane są jedynie dla widoków, są uruchamiane zamiast wywołujących je instrukcji DML, działają na poziome wierszy, Systemowe jest uruchamiany, gdy zajdzie zdarzenie systemowe lub operacja DDL. Tworzenie wyzwalaczy CREATE [OR REPLACE] TRIGGER nazwa {BEFORE AFTER INSTEAD OF} Zdarzenie ON obiekt [REFERENCING [OLD AS nazwa NEW AS nazwa]] [FOR EACH ROW] [WHEN warunek] [DECLARE] Ciało; [EXCEPTION ] Tworzenie wyzwalaczy Nazwa nazwa identyfikująca wyzwalacz, Zdarzenie zdarzenie, które uruchamia wyzwalacz, najczęściej na konkretnym obiekcie INSERT DELETE UPDATE UPDATE OF kolumny REFERENCING nadawanie innych nazw identyfikatorom korelacji, tylko wyzwalacze z poziomu wierszy, FOR EACH ROW określenie wyzwalacza z poziomu wierszy, WHEN warunek ciało wyzwalacza uruchamiane jest tylko wtedy, gdy podany warunek ma wartość TRUE, jest sprawdzane na samym początku, tylko wyzwalacze z poziomu wierszy, 2
3 Tworzenie wyzwalaczy Tworzenie wyzwalaczy DML Ciało wyzwalacza składa się z opcjonalnej sekcji deklaracji, wówczas rozpoczyna się ona słowem DECLARE, Sekcja wyjątków jest opcjonalna, Ciało wyzwalacza nie może być większe niż 32 KB, ze względu na to że jest często wywoływane musi być krótkie. Uruchamiane są dla instrukcji INSERT, UPDATE, DELETE, przed ich wykonaniem lub po, jeden raz dla każdego zmodyfikowanego wiersza lub instrukcji, W związku z różnymi trybami istnieje 28 typów wyzwalaczy DML 7 instrukcji wraz z kombinacjami * 2 momenty wykonania * 2 poziomy wykonania. Rodzaje wyzwalaczy DML Kategoria Instrukcja Wartości INSERT, UPDATE, DELETE Pojedyncze instrukcje powodujące uruchamianie wyzwalacza lub ich kombinacje Moment wykonania BEFORE, AFTER Wyzwalacz jest uruchamiany przed lub po wykonaniu instrukcji, Poziom wykonania Wiersze lub instrukcje Wyzwalacz działający dla wierszy uruchamia się raz dla każdego z nich użytego przez instrukcję ( za jego utworzenie odpowiada klauzula FOR EACH ROW), wyzwalacze z poziomu instrukcji są uruchamiane jeden raz przed lub po jego wykonaniu, Kolejność uruchamiania wyzwalaczy DML Wyzwalacze z poziomu instrukcji BEFORE, Dla każdego wiersza, którego dotyczy instrukcja: BEFORE z poziomu wiersza, Polecenie, AFTER z poziomu wiersza, Wyzwalacze z poziomu instrukcji typu AFTER. 3
4 Wyzwalacz z poziomu instrukcji - przykład CREATE OR REPLACE TRIGGER test BEFORE INSERT ON employees IF (TO_CHAR(SYSDATE, DY ) IN ( SO, N )) THEN RAISE_APPLICATION_ERROR(-20500, Nie wstawiaj do tabeli w weekend ); END IF; Wyzwalacz z poziomu wierszy - przykład CREATE OR REPLACE TRIGGER test BEFORE INSERT OR UPDATE ON employees FOR EACH ROW :new.job_id:=upper(:new.job_id); Identyfikatory :old i :new W wyzwalaczu z poziomu wiersza można uzyskać dostęp do danych tego wiersza, W tym celu używamy dwóch identyfikatorów korelacji :old i :new, które są specjalnymi zmiennymi powiązanymi, Są one traktowane jako rekord tabeli z którą powiązany jest wyzwalacz, Są one nazywane pseudorekordami, bo są one rekordami tylko w składni, nie można przypisywać ich jako całych rekordów. Identyfikatory :old i :new Instrukcja Stara wartość Nowa wartość INSERT NULL Wstawiane wartości UPDATE DELETE Wartości sprzed aktualizacji Wartości sprzed usuwania Odwołania do pól pseudorekordu :new.pole Wartości po aktualizacji NULL w Oracle mamy jeszcze dodatkowy identyfikator :parent związany z tabelami zagnieżdżonymi. 4
5 Identyfikatory - przykład Klauzula REFERENCING CREATE OR REPLACE TRIGGER Id BEFORE INSERT ON employees FOR EACH ROW SELECT employees_seq.nextval INTO :new.employee_id FROM employees; Służy do określenia innej nazwy identyfikatorów :old i :new, Po zdarzeniu wyzwalającym należy użyć składni: REFERENCING [OLD AS nazwa] [NEW AS nazwa] Wówczas w ciele wyzwalacza można używać nowych nazw dla pól pseudorekordu, Klauzula WHEN WHEN - przykład Używany dla wyzwalacza z poziomu wierszy, Ciało zostanie wykonane tylko dla wierszy, które spełniają warunek, Składnia: WHEN warunek; Warunek to wyrażenie logiczne, można w nim używać identyfikatorów :new i :old, bez dwukropka, CREATE OR REPLACE TRIGGER Id BEFORE INSERT OR UPDATE OF salary ON employees FOR EACH ROW WHEN (new.salary >20000) RAISE_APPLICATION_ERROR(-20202, Pracownik nie może zarabiać więcej niż ); 5
6 Predykaty wyzwalaczy Predykaty - przykład Dla wyzwalaczy w których używane są więcej niż jedna instrukcja DML można używać dodatkowych funkcji logicznych: INSERTING, DELETING, UPDATING, Każda z nich zwraca TRUE jeśli instrukcja wyzwalająca to ta która jest z nim powiązania, w przeciwnym przypadku zwraca FALSE, CREATE OR REPLACE TRIGGER pred BEFORE INSERT OR DELETE OR UPDATE ON employees IF (TO_CHAR(SYSDATE, DY ) IN ( SO, N )) THEN IF INSERTING THEN RAISE_APPLICATION_ERROR(-20500, Nie wstawiaj do tabeli w weekend ); END IF; IF DELETING THEN RAISE_APPLICATION_ERROR(-20500, Nie usuwaj z tabeli w weekend ); END IF; IF UPDATING THEN RAISE_APPLICATION_ERROR(-20500, Nie modyfikuj tabeli w weekend ); END IF; END IF; Status wyzwalacza Status wyzwalacza Od wersji Oracle 11g wyzwalacz może być w dwóch stanach: aktywny i nieaktywny, Wcześniej błąd w ciele wyzwalacza powodował niepowodzenie w wykonaniu instrukcji DML na tabeli, Można ustalić stan wyzwalacza na nieaktywny i przełączyć go tylko wtedy, gdy mamy pewność że wyzwalacz wykona się prawidłowo, Można także tymczasowo anulować aktywność wyzwalacza w przypadku gdy obiekt do którego się odnosi jest niedostępny, jeśli chcemy przetworzyć dużą porcję danych i nie chcemy tego poprzedzać działaniem wyzwalacza lub przetworzyć dane ponownie, Aby utworzyć nieaktywny wyzwalacz należy dodać w jego definicji przed słowem kluczowym słowo DISABLE, 6
7 Status wyzwalacza Zmiana statusu wyzwalacza ALTER TRIGGER nazwa ENABLE DISABLE; Zmiana statusu wyzwalaczy dla danej tabeli ALTER TABLE nazwa DISABLE ENABLE ALL TRIGGERS; Ponowna kompilacja wyzwalacza ALTER TRIGGER nazwa COMPILE; Usunięcie wyzwalacza DROP TRIGGER nazwa; Polecenia związane z wyzwalaczami User_triggers dane na temat wyzwalaczy: nazwa, tabela powiązana, czas kompilacji, itd., atrybuty dostępne po wywołaniu polecenia DESCRIBE user_triggers; SELECT trigger_name, trigger_body FROM user_triggers; User_errors informacje na temat błędów które nastąpiły w czasie kompilacji wyzwalacza, Wyzwalacz zastępujący Wyzwalacz zastępujący - przykład Wyzwalacza typu INSTEAD OF, Używany zamiast instrukcji DML i tylko dla widoków, Używamy w dwóch przypadkach: W celu dokonywania zmian w widoku, którego nie możemy w inny sposób modyfikować, W celu modyfikowania kolumn tabeli zagnieżdżonej w widoku, Wyzwalacze te działają na poziomie wierszy, CREATE OR REPLACE VIEW dzial AS SELECT department_name, COUNT(*) FROM employees NATURAL JOIN departments GROUP BY department_name; widok CREATE OR REPLACE TRIGGER widok INSTEAD OF INSERT ON dzial FOR EACH ROW INSERT INTO departments (department_id, department_name) VALUES (dzialyseq.nextval, :new.department_name); 7
8 Wyzwalacze systemowe Wywoływane dla zdarzeń DDL (CREATE, ALTER, DROP) oraz zdarzeń bazy danych (uruchomienie i zamknięcie serwera, logowanie i wylogowanie użytkownika, błędy serwera), Tworzenie wyzwalaczy systemowych CREATE [OR REPLACE] TRIGGER {BEFORE AFTER} {zdarzenia_ddl zdarzenia_bazy_danych} ON {DATABASE [schemat.]schema} [WHEN warunek] [DECLARE] Ciało; [EXCEPTION ] Tworzenie wyzwalaczy systemowych Wyzwalacze systemowe są powiązane jedynie z czasem wyzwalania BEFORE lub AFTER, Można je definiować z poziomu bazy danych lub schematu, te zdefiniowane z poziomu bazy są wykonywane przy każdym wystąpieniu zdarzenia, zaś te z poziomu schematu tylko wtedy gdy zdarzenie wystąpi w konkretnym schemacie, Domyślnie jest przyjmowany schemat do którego należy dany wyzwalacz, Zdarzenia DDL i bazy danych STARTUP AFTER wykonywane przy uruchamianiu egzemplarza bazy, SHUTDOWN BEFORE przy zamykaniu, z wyjątkiem nietypowego zamknięcia, SERVERERROR AFTER przy każdym wystąpieniu błędu, LOGON AFTER po zalogowaniu użytkownika, LOGOFF BEFORE przy wylogowywaniu użytkownika, 8
9 Zdarzenia DDL i bazy danych CREATE, DROP, ALTER, RENAME, DDL AFTER, BEFORE po lub przed utworzeniem, usunięciem, modyfikacją, zmianą nazwy obiektu schematu i po lub przed zgłoszeniem większości instrukcji DDL, Wyzwalacz systemowy - przykład CREATE OR REPLACE TRIGGER logow AFTER LOGON ON SCHEMA INSERT INTO logowania (user_id, log_date, dzialanie) VALUES (USER, SYSDATE, Logowanie ); Funkcje-atrybuty zdarzeń Pozwalają na pobieranie w ciele wyzwalacza informacji o zdarzeniu wyzwalającym. ORA_DICT_OBJ_TYPE zwraca VARCHAR2(20), związane z ALTER, CREATE, DDL, DROP, GRANT, RENAME, zwraca typ obiektu słownika dla którego zaszła operacja DDL ORA_IS_CREATING_NESTED_TABLE zwraca BOOLEAN, związane z CREATE, zwraca true jeśli zdarzenie tworzy tabelę zagnieżdżoną, ORA_IS_DROP_COLUMN (nazwa kolumny IN VARCHAR2) zwraca BOOLEAN, związane z DROP, zwraca true jeśli kolumna została usunięta, Funkcje-atrybuty zdarzeń ORA_IS_ALTER_COLUMN (nazwa kolumny IN VARCHAR2) zwraca BOOLEAN, związane z ALTER, zwraca true jeśli kolumna została zmodyfikowana przez zdarzenie, ORA_LOGIN_USER Zwraca VARCHAR2(20), związane ze wszystkimi zdarzeniami, zwraca nazwę zalogowanego użytkownika, ORA_SYSEVENT Zwraca VARCHAR2, związane ze wszystkimi zdarzeniami, zwraca nazwę zdarzenia systemowego uruchamiającego dany wyzwalacz, 9
10 Klauzula WHEN a wyzwalacze systemowe W wyzwalaczach systemowych można używać klauzuli WHEN uwzględniając pewne ograniczenia warunku: STARTUP i SHUTDOWN nie mogą mieć żadnych warunków, W SERVERERROR można sprawdzać wartość ERRNO, by uruchamiać wyzwalacze przy wystąpieniu określonych błędów, W LOGON i LOGOFF można sprawdzać nazwę i identyfikator użytkownika, Wyzwalacze DDL mogą sprawdzać typ i nazwę modyfikowanego obiektu oraz identyfikator i nazwę użytkownika. Wyzwalacze - informacje Przestrzeń nazw wyzwalaczy jest inna niż pozostałych podprogramów, Wyzwalacz (ani jego funkcje czy procedury) nie może wywoływać instrukcji kontrolnych (COMMIT, SAVEPOINT, etc.), nie można w nim także deklarować zmiennych typu LONG i LONG RAW, Ciało wyzwalacza nie może modyfikować wartości kolumn typu LOB, CALL w wyzwalaczach CALL w wyzwalaczach Od wersji Oracle 8i ciałem wyzwalacza może być instrukcja CALL, Wywołujemy procedurę, która jest napisana w PL/SQL, C lub Javie, Kod wywołania (brak średnika na końcu): CALL nazwa_procedury Jako parametry procedury można używać identyfikatory :new i :old, CREATE OR REPLACE TRIGGER pensja BEFORE UPDATE ON employees FOR EACH ROW CALL sprawdz_pensje(:new.salary) / 10
11 Wyzwalacze a uprawnienia Tabele mutujące CREATE TRIGGER pozwala na tworzenie wyzwalacza w swoim schemacie, CREATE ANY TRIGGER j.w., we wszystkich schematach, oprócz SYS, ALTER ANY TRIGGER pozwala włączać, wyłączać oraz kompilować wyzwalacze w dowolnym schemacie, DROP ANY TRIGGER pozwala na usuwanie wyzwalaczy z dowolnego schematu, ADMINISTER DATABASE TRIGGER pozwala na tworzenie i modyfikację wyzwalaczy systemowych bazy danych, Tabela mutująca tabela aktualnie modyfikowana przez instrukcje DML oraz tabela wymagająca aktualizacji ze względu na ograniczenia integralnościowe (DELETE CASCADE), Tabela ograniczająca należy ja wczytać ze względu na ograniczenie spójności odwołań, Tabele mutujące Instrukcje SQL w ciele wyzwalacza nie mogą: Pobierać i modyfikować danych z tabel mutujących, które są używane w instrukcjach wyzwalacza, także z samej tabeli wyzwalającej, Pobierać danych z kolumn z kluczem głównym, unikalnym ani zewnętrznym tabel ograniczających tabeli wyzwalającej, pozostałe kolumny można modyfikować, Odnosi się to do wyzwalaczy z poziomu wierszy, do wyzwalaczy z poziomu instrukcji tylko wtedy gdy wyzwalacz jest uruchomiony w wyniki instrukcji DELETE CASCADE, Tabele mutujące - przykład CREATE OR REPLACE TRIGGER pensja BEFORE INSERT OR UPDATE ON employees FOR EACH ROW DECLARE v_max employees.salary%type; BŁAD SELECT MAX(salary) INTO v_max ORA-4091, table is mutating FROM employees WHERE department_id=:new.department_id; IF :new.salary>v_max THEN RAISE_APPLICATION_ERROR( ); END IF; 11
12 Tabele mutujące - rozwiązanie Należy utworzyć dwa wyzwalacze z poziomu wierszy i poziomu instrukcji, W pierwszym można używać potrzebnych identyfikatorów korelacji (:new, :old), zaś w drugim można kierować zapytania do tabeli wyzwalającej, Należy jednak przekazać wartość identyfikatora z jednego wyzwalacza do drugiego, Tabele mutujące - rozwiązanie Jedno z rozwiązań polega na utworzeniu pakietu wraz z tabelą lub tabelami PL/SQL, W pakiecie zmienne, kolekcje są globalne, W tabelach można zapisać wiele wartości, Wartości są widziane w obu wyzwalaczach, które są zawarte w pakiecie jako jego podprogramy, Wyzwalacze złożone Pojawiły się w wersji Oracle 11g, Pozwalają na utworzenie jednego wyzwalacza dla czerech różnych momentów i poziomów wykonania, Mają sekcję deklaracji oraz sekcje dla każdego z czterech momentów i poziomów wykonania, Są rozwiązaniem problemu tabel mutujących, dużo bardziej wydajnym niż wykorzystywanie pakietów i tabel PL/SQL, Wyzwalacze złożone - sekcje Sekcje wyzwalacza złożonego to (w odpowiedniej kolejności): BEFORE STATEMENT AFTER STATEMENT BEFORE EACH ROW AFTER EACH ROW 12
13 Wyzwalacze złożone - schemat CREATE OR REPLACE TRIGGER nazwa FOR zdarzenie ON tabela COMPOUND TRIGGER sekcja deklaracji, podprogramów BEFORE STATEMENT IS ; AFTER STATEMENT IS ; BEFORE EACH ROW IS ; AFTER EACH ROW IS ; Ograniczenia wyzwalaczy złożonych Dotyczą wyzwalaczy DML na tabelach lub widokach, Ciało wyzwalacza to blok PL/SQL, Ciało nie ma sekcji wyjątków, Identyfikatorów korelacji nie można używać w części deklaracyjnej i sekcjach AFTER i BEFORE STATEMENT, FOLLOWS Tworzenie wyzwalaczy w SQL Developer Nowość w Oracle 11g, Pozwala na ustalenie kolejności wykonywania wyzwalaczy, Składnia: CREATE OR REPLACE TRIGGER nazwa BEFORE INSERT ON tabela FOR EACH ROW FOLLOWS nazwa1 wówczas wyzwalacz nazwa zostanie poprzedzony przez nazwa1 Okno programu SQL Developer 13
14 Obsługa wyzwalaczy w SQL Developer WYKORZYSTANA LITERATURA J. Price, Oracle Database 11g i SQL. Programowanie. Helion, S. Urman, R. Hardman, M. McLaughlin, Oracle Database 10g. Programowanie w języku PL/SQL. Helion, Okno programu SQL Developer 14
Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia
Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia Składowe wyzwalacza ( ECA ): określenie zdarzenia ( Event ) określenie
Bardziej szczegółowoProcedury wyzwalane. (c) Instytut Informatyki Politechniki Poznańskiej 1
Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie wyzwalaczami 1 Procedury wyzwalane
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wprowadzenie Definiowanie wyzwalaczy DML Metadane wyzwalaczy Inne zagadnienia, tabele mutujące Wyzwalacze INSTEAD OF Wyzwalacze
Bardziej szczegółowo1. Wyzwalacze BD (ang. triggers)
1. Wyzwalacze BD (ang. triggers) Wyzwalacz bazy danych jest procedurą składowaną w bazie powiązaną z jedną konkretną tablicą. Z pojedynczą tablicą może być związane wiele wyzwalaczy, natomiast pojedynczy
Bardziej szczegółowoProcedury wyzwalane. Rozdział 13. Procedury wyzwalane. Cele stosowania procedur wyzwalanych. Definiowanie procedury wyzwalanej DML
Procedury wyzwalane Rozdział 13 Procedury wyzwalane procedury wyzwalane, cel stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie
Bardziej szczegółowoJęzyk PL/SQL. Rozdział 6. Procedury wyzwalane
Język PL/SQL. Rozdział 6. Procedury wyzwalane Procedury wyzwalane, cele stosowania, typy wyzwalaczy, wyzwalacze na poleceniach DML i DDL, wyzwalacze typu INSTEAD OF, przykłady zastosowania, zarządzanie
Bardziej szczegółowoUżywany kiedy pełna treść instrukcji SQL jest nieznana przed uruchomieniem programu.
Plan wykładu Spis treści 1 Dynamiczny SQL 1 2 Wyzwalacze 2 3 Podsumowanie 9 4 Źródła 9 1 Dynamiczny SQL Dynamiczny SQL Dynamiczny SQL - technika programowania umożliwiająca generowanie instrukcji SQL dynamicznie
Bardziej szczegółowoInstrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.
Rodzaje triggerów Triggery DML na tabelach INSERT, UPDATE, DELETE Triggery na widokach INSTEAD OF Triggery DDL CREATE, ALTER, DROP Triggery na bazie danych SERVERERROR, LOGON, LOGOFF, STARTUP, SHUTDOWN
Bardziej szczegółowoPODSTAWY BAZ DANYCH 13. PL/SQL
PODSTAWY BAZ DANYCH 13. PL/SQL 1 Wprowadzenie do języka PL/SQL Język PL/SQL - rozszerzenie SQL o elementy programowania proceduralnego. Możliwość wykorzystywania: zmiennych i stałych, instrukcji sterujących
Bardziej szczegółowoWyzwalacze TWORZENIE WYZWALACZY
Wyzwalacze: podobnie jak procedury i funkcje, są nazwanymi blokami PL/SQL zawierającymi sekcje deklaracji, wykonania i obsługi wyjątków; nie akceptują argumentów; muszą być składowane jako samodzielne
Bardziej szczegółowoWyzwalacze. do automatycznego generowania wartości kluczy głównych. Składnia instrukcji tworzacej wyzwalacz
Wyzwalacze Wyzwalacze są specjalnymi procedurami składowanymi, uruchamianymi automatycznie w następstwie zaistnienia określonego typu zdarzenia. Ich główne zadanie polega na wymuszaniu integralności danych
Bardziej szczegółowoTworzenie widoku CREATE OR REPLACE VIEW [nazwa_widoku] AS SELECT [nazwy_kolumn] FROM [nazwa_tablicy];
Widoki/Perspektywy Podstawy Tworzenie widoku CREATE OR REPLACE VIEW [nazwa_widoku] AS SELECT [nazwy_kolumn] FROM [nazwa_tablicy]; Usuwanie widoku DROP VIEW [nazwa_widoku]; Przykład 1 Przykład najprostszego
Bardziej szczegółowoZaawansowane bazy danych i hurtownie danych semestr I
Podprogramy Wydział Informatyki Politechnika Białostocka Zaawansowane bazy danych i hurtownie danych semestr I Procedury do przeprowadzenia akcji Funkcje do obliczania wartości Pakiety do zbierania logicznie
Bardziej szczegółowoWyzwalacze. Anna Fiedorowicz Bazy danych 2
Wyzwalacze Wyzwalacze są specjalnymi procedurami składowanymi, uruchamianymi automatycznie w następstwie zaistnienia określonego typu zdarzenia. Ich główne zadanie polega na wymuszaniu integralności danych
Bardziej szczegółowoCele. Definiowanie wyzwalaczy
WYZWALACZE Definiowanie wyzwalaczy Cele Wyjaśnić cel istnienia wyzwalaczy Przedyskutować zalety wyzwalaczy Wymienić i opisać cztery typy wyzwalaczy wspieranych przez Adaptive Server Anywhere Opisać dwa
Bardziej szczegółowoBAZY DANYCH W APLIKACJACH SIECIOWYCH
BAZY DANYCH W APLIKACJACH SIECIOWYCH Wykład 4 Wyjątki. Wyzwalacze bazodanowe. (Wybrane materiały) Dr inż. E. Busłowska Obsługa wyjątków w PLSQL Wyjątek (ang. Exception) - błąd lub ostrzeżenie w PLSQL Typy
Bardziej szczegółowoBlaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik
Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Technologia Przykłady praktycznych zastosowań wyzwalaczy będą omawiane na bazie systemu MS SQL Server 2005 Wprowadzenie
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 3. Zasięg zmiennych. Zasięg zmiennych
Plan wykładu BAZY DANYCH II WYKŁAD 3 Zasięg zmiennych Zmienne powiązane Instrukcje warunkowe Pętle Pobieranie danych SQL w PL/SQL Rekordy dr inż. Agnieszka Bołtuć Zasięg zmiennych Zmienna jest dostępna
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 2. Bloki. Struktura bloku
Plan wykładu BAZY DANYCH II WYKŁAD 2 Bloki, struktura, sekcje Bloki anonimowe Tworzenie i uruchamianie Identyfikatory Literały Typy danych dr inż. Agnieszka Bołtuć Bloki Struktura bloku W programach pisanych
Bardziej szczegółowoPakiety podprogramów Dynamiczny SQL
Pakiety podprogramów Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL 1 Pakiety Pakiet (ang. package)
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 4. Co to jest kursor? Rodzaje kursorów
Plan wykładu Kursory: deklaracja, otwieranie, pobieranie danych, zamykanie Kursory: atrybuty Kursory: pętle, rekordy Kursory z parametrami BAZY DANYCH II WYKŁAD 4 dr inż. Agnieszka Bołtuć Co to jest kursor?
Bardziej szczegółowoPL/SQL. Zaawansowane tematy PL/SQL. Piotr Medoń
PL/SQL Zaawansowane tematy PL/SQL Piotr Medoń Cele Omówienie transakcji bazodanowych Omówienie obsługi wyjątków Zarządzanie perspektywami Tworzenie i usuwanie sekwencji Budowa wyzwalaczy 2 Transakcje bazodanowe
Bardziej szczegółowow PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze
w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze Cechy bloków nazwanych: w postaci skompilowanej trwale przechowywane na serwerze wraz z danymi wykonywane na żądanie użytkownika lub w
Bardziej szczegółowoDECLARE VARIABLE zmienna1 typ danych; BEGIN
Procedury zapamiętane w Interbase - samodzielne programy napisane w specjalnym języku (właściwym dla serwera baz danych Interbase), który umożliwia tworzenie zapytań, pętli, instrukcji warunkowych itp.;
Bardziej szczegółowoPL/SQL. Zaawansowane tematy PL/SQL
PL/SQL Zaawansowane tematy PL/SQL Cele Poznanie złożonych i referencyjnych typów danych Poznanie konstrukcji kursora Poznanie kodu składowanego Poznanie procedur i funkcji 2 Złożone typy danych RECORD
Bardziej szczegółowoJęzyk PL/SQL Procedury i funkcje składowane
Język PL/SQL Procedury i funkcje składowane Podprogramy, procedury i funkcje składowane, typy argumentów, wywoływanie procedur i funkcji, poziomy czystości funkcji 1 Podprogramy Procedury (wykonują określone
Bardziej szczegółowoE.14 Bazy Danych cz. 18 SQL Funkcje, procedury składowane i wyzwalacze
Funkcje użytkownika Tworzenie funkcji Usuwanie funkcji Procedury składowane Tworzenie procedur składowanych Usuwanie procedur składowanych Wyzwalacze Wyzwalacze a ograniczenia i procedury składowane Tworzenie
Bardziej szczegółowoPrzykład 3 Zdefiniuj w bazie danych hurtownia_nazwisko przykładową funkcję użytkownika fn_rok;
Temat: Funkcje, procedury i wyzwalacze. Oprócz tabel i widoków w bazach danych możemy tworzyć własne funkcje, procedury i specjalny typ procedur, które będą automatycznie wywoływanie przez MySQL w memencie
Bardziej szczegółowoProgramowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika
Programowanie w SQL procedury i funkcje UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika 1. Funkcje o wartościach skalarnych ang. scalar valued
Bardziej szczegółowoAdministracja i programowanie pod Microsoft SQL Server 2000
Administracja i programowanie pod Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 6 Wyzwalacze Wprowadzenie Tworzenie wyzwalacza Wyzwalacze typu,,po'' Wyzwalacze typu,,zamiast''
Bardziej szczegółowoMateriały. Technologie baz danych. Plan wykładu Kursory. Wykład 5: Kursory jawne. Podprogramy. Kursory jawne. Kursory niejawne
Materiały dostępne są na stronie: Materiały Technologie baz danych aragorn.pb.bialystok.pl/~gkret Wykład 5: Kursory jawne. Podprogramy. Małgorzata Krętowska Wydział Informatyki Politechnika Białostocka
Bardziej szczegółowoBloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
Bardziej szczegółowoDECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ];
Braki w SQL obsługi zdarzeń i sytuacji wyjątkowych funkcji i procedur użytkownika definiowania złożonych ograniczeń integralnościowych Proceduralny SQL Transact- SQL używany przez Microsoft SQL Server
Bardziej szczegółowoJęzyk PL/SQL. Rozdział 5. Pakiety podprogramów. Dynamiczny SQL
Język PL/SQL. Rozdział 5. Pakiety podprogramów. Dynamiczny SQL Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora), dynamiczny SQL.
Bardziej szczegółowoProcedury składowane. Funkcje vs. procedury Funkcja. Procedura. zazwyczaj ma parametry tylko typu IN; można wywoływać z poziomu
Procedury składowane Kolejnym typem programu języka PL/SQL są procedury składowane. Procedury mogą posiadać parametry typu IN, OUT lub IN OUT. Umożliwiają wykonanie operacji na danych w bazie, mogą też
Bardziej szczegółowoPakiety są logicznymi zbiorami obiektów takich jak podprogramy, typy, zmienne, kursory, wyjątki.
Pakiety Pakiety są logicznymi zbiorami obiektów takich jak podprogramy, typy, zmienne, kursory, wyjątki. Pakiet składa się ze: specyfikacji (interfejsu) i ciała (implementacji). W specyfikacji mieszczą
Bardziej szczegółowo15. Funkcje i procedury składowane PL/SQL
15. Funkcje i procedury składowane PLSQL 15.1. SQL i PLSQL (Structured Query Language - SQL) Język zapytań strukturalnych SQL jest zbiorem poleceń, za pomocą których programy i uŝytkownicy uzyskują dostęp
Bardziej szczegółowoBazy danych, 4. wiczenia
Bazy danych, 4. wiczenia 2007-10-23 1 Plan zaj PL/SQL, cz ± II: tabele kursory sªu» ce do zmiany danych, procedury, funkcje, pakiety, wyzwalacze. 2 Tabele Deklaracja TYPE t_tab IS TABLE OF VARCHAR(20)
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 5. Kolekcje. Tablice asocjacyjne Kolekcje Tablice asocjacyjne VARRAY Tablice zagnieżdżone
Plan wykładu Kolekcje Tablice asocjacyjne VARRAY Tablice zagnieżdżone BAZY DANYCH II WYKŁAD 5 dr inż. Agnieszka Bołtuć Kolekcje Tablice asocjacyjne Używane w celu gromadzenia danych tego samego typu, Rekordy
Bardziej szczegółowoWykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze
Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze 1 Funkcje i procedury pamiętane Następujące polecenie tworzy zestawienie zawierające informację o tym ilu jest na naszej hipotetycznej
Bardziej szczegółowoBazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)
Bazy danych wykład dwunasty PL/SQL, c.d. Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa dwunasty PL/SQL, c.d. 1 / 37 SQL to za mało SQL brakuje możliwości dostępnych w językach proceduralnych.
Bardziej szczegółowoCheatsheet PL/SQL Andrzej Klusiewicz 1/9
Declare y integer; z varchar2(50); d date; null; Declare x integer:=10; null; x integer; x:=10; dbms_output.put_line('hello world'); for x in 1..10 loop Deklaracja 4 zmiennych. Jednej typu rzeczywistego,
Bardziej szczegółowoINTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X
Wrocław 2006 INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl INTERNETOWE BAZY DANYCH PLAN NA DZIŚ zajęcia 1: 2. Procedury składowane
Bardziej szczegółowoProcedury i funkcje składowane
Procedury i funkcje składowane Zmienne podstawienia i zmienne wiązane, podprogramy, procedury składowane, typy argumentów, wywoływanie procedur, funkcje składowane, poziomy czystości funkcji, funkcje tablicowe
Bardziej szczegółowoSkładowane procedury i funkcje
Składowane procedury i funkcje Procedury i funkcje są zestawem poleceń SQL, które są przechowywane na serwerze (tak jak dane w tablicach). Istnieją sytuacje, kiedy procedury i funkcje są szczególnie przydatne.
Bardziej szczegółowoOracle11g: Programowanie w PL/SQL
Oracle11g: Programowanie w PL/SQL OPIS: Kurs pozwala zrozumieć zalety programowania w języku PL/SQL. Studenci uczą się tworzyć bloki kodu wykonywanego po stronie serwera, który może być współużytkowany
Bardziej szczegółowoBazy danych wykład szósty Więzy i wyzwalacze. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)
Bazy danych wykład szósty Więzy i wyzwalacze Konrad Zdanowski Uniwersytet Kardynała Stefana Wyszyńskiego, Warszawa szósty Więzy i wyzwalacze 1 / 35 Wstęp Wiemy jak nakładać pewne ograniczenia (więzy) w
Bardziej szczegółowoHurtownia Świętego Mikołaja projekt bazy danych
Aleksandra Kobusińska nr indeksu: 218366 Hurtownia Świętego Mikołaja projekt bazy danych Zaprezentowana poniżej baza jest częścią większego projektu bazy danych wykorzystywanej w krajowych oddziałach wiosek
Bardziej szczegółowo2010-11-22 PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH
PLAN WYKŁADU Bezpieczeństwo w języku SQL Użytkownicy Uprawnienia Role BAZY DANYCH Wykład 8 dr inż. Agnieszka Bołtuć OGRANICZENIA DOSTĘPU DO DANYCH Ograniczenie danych z tabeli dla określonego użytkownika
Bardziej szczegółowoOracle10g: Programowanie w PL/SQL
Oracle10g: Programowanie w PL/SQL OPIS: Szkolenie dotyczy użytkowników Oracle8i, Oracle9i i Oracle10g. Ten kurs pozwala zrozumieć zalety tego potężnego narzędzia programowania do PL/SQL. Studenci uczą
Bardziej szczegółowoSystemy GIS Tworzenie zapytań w bazach danych
Systemy GIS Tworzenie zapytań w bazach danych Wykład nr 6 Analizy danych w systemach GIS Jak pytać bazę danych, żeby otrzymać sensowną odpowiedź......czyli podstawy języka SQL INSERT, SELECT, DROP, UPDATE
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 2 Kusory Wprowadzenie Kursory użytkownika Kursory domyślne Zmienne kursora Wyrażenia kursora - 2 - Wprowadzenie Co to jest kursor?
Bardziej szczegółowoUprawnienia, role, synonimy
Uprawnienia, role, synonimy Schemat, użytkownicy, autoryzacja użytkowników, uprawnienia systemowe i obiektowe, nadawanie i odbieranie uprawnień, tworzenie ról, przywileje, synonimy Schematy i użytkownicy
Bardziej szczegółowoPlan wykładu BAZY DANYCH II WYKŁAD 9. Dynamiczny SQL. Dynamiczny SQL 2012-01-20
Plan wykładu BAZY DANYCH II WYKŁAD 9 Dynamiczny SQL, NDS, EXECUTE IMMEDIATE, Pakiet DBMS_SQL, Obiekty w PL/SQL, Tworzenie, wywoływanie, dziedziczenie, etc. dr inż. Agnieszka Bołtuć Dynamiczny SQL Pozwala
Bardziej szczegółowoJęzyk PL/SQL Pakiety podprogramów
Język PL/SQL Pakiety podprogramów Pakiety podprogramów, specyfikacja i ciało pakietu, zmienne i kursory pakietowe, pseudoinstrukcje (dyrektywy kompilatora) 1 Pakiety Pakiet (ang. package) grupuje powiązane
Bardziej szczegółowoI. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE
Wykład 9 Implementacja języka SQL w systemach baz danych Oracle manipulowanie danymi (DML), tworzenie, modyfikowanie i usuwanie obiektów bazy danych: tabel i perspektyw, więzów integralności, komentarzy
Bardziej szczegółowoBAZA DANYCH SIECI HOTELI
Paulina Gogół s241906 BAZA DANYCH SIECI HOTELI Baza jest częścią systemu zarządzającego pewną siecią hoteli. Składa się z tabeli powiązanych ze sobą różnymi relacjami. Służy ona lepszemu zorganizowaniu
Bardziej szczegółowoJęzyk SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne.
Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne. 1 Perspektywa Perspektywa (ang. view) jest strukturą
Bardziej szczegółowoĆwiczenie 13 PL/SQL. Język PL/SQL procedury, funkcje, pakiety, wyzwalacze
Ćwiczenie 13 PL/SQL Język PL/SQL procedury, funkcje, pakiety, wyzwalacze Ćwiczenie 13 PL/SQL Niniejsze ćwiczenie zaprezentuje składowane w bazie danych programy PL/SQL: procedury, funkcje, pakiety oraz
Bardziej szczegółowoPlan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT NULL,
Mój projekt przedstawia bazę danych noclegów składającą się z 10 tabel. W projekcie wykorzystuje program LibreOffice Base do połączenia psql z graficznym interfejsem ( kilka formularzy przedstawiających
Bardziej szczegółowoBazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1
Bazy danych Wykład IV SQL - wprowadzenie Copyrights by Arkadiusz Rzucidło 1 Czym jest SQL Język zapytań deklaratywny dostęp do danych Składnia łatwa i naturalna Standardowe narzędzie dostępu do wielu różnych
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 7 Dynamiczny SQL i PL/SQL Pierwotny dynamiczny SQL Pierwotny dynamiczny DDL Pierwotny dynamiczny DML i SELECT Pakiet DBMS_SQL Transakcje
Bardziej szczegółowoPawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl
Bazy danych Zapytania SELECT Dr inż. Paweł Kasprowski pawel@kasprowski.pl Przykład HAVING Podaj liczebność zespołów dla których najstarszy pracownik urodził się po 1940 select idz, count(*) from prac p
Bardziej szczegółowoTechnologie baz danych WYKŁAD 7: Wyjątki
Wydział Informatyki Politechnika Białostocka Obsługa wyjątków Technologie baz danych WYKŁAD 7: Wyjątki [] [] Agnieszka Oniśko, Małgorzata Krętowska TBD-wyjątki 1 TBD-wyjątki 2 Sposoby powstania sytuacji
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 4 Wyjątki PL/SQL Mechanizmy dotyczące błędów Typy wyjątków Obsługa wyjątków PL/SQL Obsługa błędów predefiniowanych, użytkownika
Bardziej szczegółowoFunkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u
Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u będziemy używać w taki sam sposób, jak wbudowanych funkcji
Bardziej szczegółowoPRZESTRZENNE BAZY DANYCH WYKŁAD 2
PRZESTRZENNE BAZY DANYCH WYKŁAD 2 Baza danych to zbiór plików, które fizycznie przechowują dane oraz system, który nimi zarządza (DBMS, ang. Database Management System). Zadaniem DBMS jest prawidłowe przechowywanie
Bardziej szczegółowoWykład V. Indeksy. Struktura indeksu składa się z rekordów o dwóch polach
Indeksy dodatkowe struktury służące przyśpieszeniu dostępu do danych o użyciu indeksu podczas realizacji poleceń decyduje SZBD niektóre systemy bazodanowe automatycznie tworzą indeksy dla kolumn o wartościach
Bardziej szczegółowoKursory i wyjątki. (c) Instytut Informatyki Politechniki Poznańskiej 1
Kursory i wyjątki Kursory i praca z kursorami, kursory jawne i niejawne, otwieranie kursora, pobieranie z kursora, zamykanie kursora, wyjątki systemowe i użytkownika, zgłaszanie i obsługa wyjątków 1 Kursor
Bardziej szczegółowoDeklarowanie kursora
Kursory i wyjątki Kursory i praca z kursorami, kursory jawne i niejawne, otwieranie kursora, pobieranie z kursora, zamykanie kursora, wyjątki systemowe i użytkownika, zgłaszanie i obsługa wyjątków 1 Kursor
Bardziej szczegółowoOracle11g: Wprowadzenie do SQL
Oracle11g: Wprowadzenie do SQL OPIS: Kurs ten oferuje uczestnikom wprowadzenie do technologii bazy Oracle11g, koncepcji bazy relacyjnej i efektywnego języka programowania o nazwie SQL. Kurs dostarczy twórcom
Bardziej szczegółowoSQL 4 Structured Query Lenguage
Wykład 5 SQL 4 Structured Query Lenguage Instrukcje sterowania danymi Bazy Danych - A. Dawid 2011 1 CREATE USER Tworzy nowego użytkownika Składnia CREATE USER specyfikacja użytkownika [, specyfikacja użytkownika]...
Bardziej szczegółowo3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota
Laboratorium nr 3 1 Bazy Danych Instrukcja laboratoryjna Temat: Wprowadzenie do języka SQL, tworzenie, modyfikacja, wypełnianie tabel 3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota 1)
Bardziej szczegółowoPawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl
Bazy danych Podstawy języka SQL Dr inż. Paweł Kasprowski pawel@kasprowski.pl Plan wykładu Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność danych Współbieżność
Bardziej szczegółowoKolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Rozszerzenie obiektowe w SZBD Oracle
Rozszerzenie obiektowe w SZBD Oracle Cześć 2. Kolekcje Kolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Malinowski Nowak Kowalski tablica zagnieżdżona (ang.
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 5 Wprowadzenie Tworzenie i wykonywanie procedur i funkcji Instrukcja RETURN Parametry procedur i funkcji oraz ich przesyłanie Metadane
Bardziej szczegółowoSQL> startup pfile=./admin/pfile/initdbx.ora. SQL> create spfile from pfile='$home/admin/pfile/initdbx.ora' create user bolek identified by bolek;
Administrowanie użytkownikami Ćwiczenia laboratoryjne (2) Przygotowanie środowiska 1. Przy pomocy programu Putty, połącz się z serwerem miner.cs.put.poznan.pl. Dla wygody otwórz dwie sesje w dwóch różnych
Bardziej szczegółowoWykład 8. SQL praca z tabelami 5
Wykład 8 SQL praca z tabelami 5 Podzapytania to mechanizm pozwalający wykorzystywać wyniki jednego zapytania w innym zapytaniu. Nazywane często zapytaniami zagnieżdżonymi. Są stosowane z zapytaniami typu
Bardziej szczegółowoĆwiczenia laboratoryjne nr 11 Bazy danych i SQL.
Prezentacja Danych i Multimedia II r Socjologia Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL. Celem ćwiczeń jest poznanie zasad tworzenia baz danych i zastosowania komend SQL. Ćwiczenie I. Logowanie
Bardziej szczegółowo1 Wprowadzenie do bloków nazwanych 1. 2 Parametry 2. 3 Procedury i funkcje 3. 4 Pakiety 6. 5 Podsumowanie Źródła 10
Plan wykładu Spis treści 1 Wprowadzenie do bloków nazwanych 1 2 Parametry 2 3 Procedury i funkcje 3 4 Pakiety 6 5 Podsumowanie 10 6 Źródła 10 1 Wprowadzenie do bloków nazwanych Rodzaje bloków w PL/SQL
Bardziej szczegółowoCREATE USER
Temat: Administrowanie użytkownikami bazy danych. Po instalacji serwera MYSQL dostępne jest konto o nazwie root. Domyślnie nie ma ono przypisanego hasła, aczkolwiek podczas procesu konfiguracji jest możliwość
Bardziej szczegółowo1 Kursory 1. 2 Wyjątki Wyjątki predefiniowane Wyjątki niezdefiniowane wcześniej Definiowanie własnych wyjątków...
Plan wykładu Spis treści 1 Kursory 1 2 Wyjątki 4 2.1 Wyjątki predefiniowane............................. 4 2.2 Wyjątki niezdefiniowane wcześniej....................... 5 2.3 Definiowanie własnych wyjątków........................
Bardziej szczegółowoMicrosoft SQL Server Podstawy T-SQL
Itzik Ben-Gan Microsoft SQL Server Podstawy T-SQL 2012 przełożył Leszek Biolik APN Promise, Warszawa 2012 Spis treści Przedmowa.... xiii Wprowadzenie... xv Podziękowania... xix 1 Podstawy zapytań i programowania
Bardziej szczegółowoTrigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie.
Temat: Wyzwalacze (triggery). Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. W poniższym przykładzie definiujemy tablicę a następnie trigger
Bardziej szczegółowoBAZY DANYCH Cz III. Transakcje, Triggery
BAZY DANYCH Cz III Transakcje, Triggery Transakcje Definicja: Zbiór operacji (modyfikacja danych, usuwanie, wstawianie, tworzenie obiektów bazodanowych), które albo wszystkie kończone są sukcesem, albo
Bardziej szczegółowoIndeksy. Indeks typu B drzewo
Indeksy dodatkowe struktury służące przyśpieszeniu dostępu do danych o użyciu indeksu podczas realizacji poleceń decyduje SZBD niektóre systemy bazodanowe automatycznie tworzą indeksy dla kolumn o wartościach
Bardziej szczegółowoSQL w języku PL/SQL. 2) Instrukcje języka definicji danych DDL DROP, CREATE, ALTER, GRANT, REVOKE
Instrukcje SQL dzielimy na następujące kategorie: 1) Instrukcje języka manipulowania danymi (DML) SELECT, INSERT, UPDATE, DELETE, SET TRANSACTION, EXPLAIN PLAN 2) Instrukcje języka definicji danych DDL
Bardziej szczegółowo1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
Grupa A (LATARNIE) Imię i nazwisko: Numer albumu: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: Nazwisko prowadzącego: 11: 12: Suma: Ocena: Zad. 1 (10 pkt) Dana jest relacja T. Podaj wynik poniższego zapytania (podaj
Bardziej szczegółowoOracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 8 Wprowadzenie Definiowanie typu obiektowego Porównywanie obiektów Tabele z obiektami Operacje DML na obiektach Dziedziczenie -
Bardziej szczegółowoLaboratorium nr 4. Temat: SQL część II. Polecenia DML
Laboratorium nr 4 Temat: SQL część II Polecenia DML DML DML (Data Manipulation Language) słuŝy do wykonywania operacji na danych do ich umieszczania w bazie, kasowania, przeglądania, zmiany. NajwaŜniejsze
Bardziej szczegółowoSQL :: Data Definition Language
SQL :: Data Definition Language 1. Zaproponuj wydajną strukturę danych tabela) do przechowywania macierzy o dowolnych wymiarach w bazie danych. Propozycja struktury powinna zostać zapisana z wykorzystaniem
Bardziej szczegółowoUPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');
polecenie UPDATE służy do aktualizacji zawartości wierszy tabel lub perspektyw składnia: UPDATE { } SET { { = DEFAULT NULL}, {
Bardziej szczegółowoT-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15
T-SQL dla każdego / Alison Balter. Gliwice, cop. 2016 Spis treści O autorce 11 Dedykacja 12 Podziękowania 12 Wstęp 15 Godzina 1. Bazy danych podstawowe informacje 17 Czym jest baza danych? 17 Czym jest
Bardziej szczegółowoPlan wykładu Projekt fizyczny bazy danych Wprowadzenie PL/SQL PL/SQL Cechy PL/SQL
Plan wykładu Uzupełnienie projektu fizycznego Czym jest PL/SQL Bloki w PL/SQL Zmienne i stałe Instrukcje sterujące Wykorzystanie SQL w PL/SQL Kursory Wyjątki Projekt fizyczny bazy danych Braki projektu
Bardziej szczegółowoJęzyk SQL. Rozdział 9. Język definiowania danych DDL, część 2.
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. Ograniczenia integralnościowe, modyfikowanie struktury relacji, zarządzanie ograniczeniami. 1 Ograniczenia integralnościowe Służą do weryfikacji
Bardziej szczegółowoInstrukcje SQL można podzielić na pięć kategorii, które zostały przedstawione w poniższej tabeli.
SQL W JĘZYKU PL/SQL Strukturalny język zapytań SQL określa sposób manipulowania danymi w bazie danych. Konstrukcje proceduralne języka PL/SQL stają się bardziej użyteczne w połączeniu z mocą przetwarzania
Bardziej szczegółowoSQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści
SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, 2017 Spis treści O autorze 9 Wprowadzenie 11 Lekcja 1. Zrozumieć SQL 15 Podstawy baz danych 15 Język SQL
Bardziej szczegółowoPerspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane.
Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane. 1 Perspektywa Perspektywa (ang. view) jest strukturą logiczną
Bardziej szczegółowoAspekty aktywne baz danych
Aspekty aktywne baz danych Aktywne aspekty baz danych Baza danych powinna zapewniać pewne własności i niezmienniki; Własności te powinny mogą być zapisane do bazy danych, a baza danych powinna zapewniać
Bardziej szczegółowo