Bazy danych wykład szósty Więzy i wyzwalacze. Konrad Zdanowski ( Uniwersytet Kardynała Stefana Bazy danych Wyszyńskiego, wykładwarszawa)
|
|
- Marek Stefaniak
- 9 lat temu
- Przeglądów:
Transkrypt
1 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
2 Wstęp Wiemy jak nakładać pewne ograniczenia (więzy) w schemacie bazy danych (klucze, integralność referencyjna). Implementacja bazy danych może korzystać z tych ograniczeń aby zwiększyć wydajność ale musi też dbać o ich zachowanie, czyli o spójność danych. Można dbać o to z poziomu aplikacji lecz jest to niebezpieczne i niewygodne. DBMS dostarcza narzędzi do definiowania czynnosci, które trzeba podjać aby sprawdzić czy więzy nie zostały naruszone (i co wtedy zrobić). szósty Więzy i wyzwalacze 2 / 35
3 Outline 1 Więzy Klucze 2 Wyzwalacze szósty Więzy i wyzwalacze 3 / 35
4 Outline 1 Więzy Klucze 2 Wyzwalacze szósty Więzy i wyzwalacze 4 / 35
5 Klucze własne Klucze własne tabeli deklarujemy przez PRIMERY KEY lub UNIQUE. create table osoby ( pesel char [ 1 1 ] primary key, imie char [ 2 0 ], nazwisko char [ 5 0 ] ) ; create table samochody ( n r _ s i l n i k a int, marka char [ 3 0 ], primary key ( n r _ s i l i n i k a, marka ) ) ; szósty Więzy i wyzwalacze 5 / 35
6 Klucze obce Niech A będzie zbiorem atrybutów w relacji T i niech B będzie zbiorem atrybutów w relacji S. Możemy zadeklarować A jako klucz obcy powiazany z atrybutami G. Atrybuty G musza być kluczem relacji S. Dla każdej krotki t T, która ma różne od NULL wartości atrybutów A musi istnieć krotka s S taka, że t[a] = s[b]. szósty Więzy i wyzwalacze 6 / 35
7 Klucze obce Klucze obce deklarujemy jako create table Malzenstwa ( maz i n t references Osoby ( i d ), zona i n t references Osoby ( i d ) ) ; lub przez oddzielna deklarację create table Ksiegozbior ( t y t u l char [ 5 0 ], rok_wydania int, szerokosc int, wysokosc int, foreign key ( t y t u l, rok ) references K s i a z k i ( t y t u l, rok ) ) ; szósty Więzy i wyzwalacze 7 / 35
8 Problem jajka i kury Rozważmy deklaracje create table Kura ( i d i n t primary key, j a j k o _ i d i n t references Jajko ( i d ) ) ; create table Jajko ( i d i n t primary key, kura_id i n t references Kura ( i d ) ) ; Wykonanie tych poleceń wygeneruje bład (Oracle) gdyż podczas tworzenia tabeli Kura nie istnieje tabela, do której odwołuje się klucz obcy tabeli Kura. szósty Więzy i wyzwalacze 8 / 35
9 Problem jajka i kury Musimy utworzyć tabele Jajko i Kura bez deklaracji kluczy obcych: create table Kura ( i d i n t primary key, j a j k o _ i d i n t ) ; create table Jajko ( i d i n t primary key, kura_id i n t ) ; Następnie modyfikujemy tabele: a l t e r table Kura add constraint KuraRefJajko foreign key ( j a j k o _ i d ) references Jajko ( i d ) i n i t i a l l y deferred deferrable ; a l t e r table Jajko add constraint JajkoRefKura foreign key ( kura_id ) references Kura ( i d ) i n i t i a l l y deferred deferrable ; szósty Więzy i wyzwalacze 9 / 35
10 Problem jajka i kury Opcja initially deferred deferrable każe odroczyć sprawdzenie integralności referencyjnej. Dzięki temu możemy dodać coś do obu tabel: i n s e rt into Kura values ( 1, 3 ) ; i n s e rt into Jajko values ( 3, 1 ) ; commit ; Sprawdzenie następuje dopiero podczas commit. szósty Więzy i wyzwalacze 10 / 35
11 Problem jajka i kury Podobnie usunięcie tabeli Kura narusza warunek klucza obcego z tabeli Jajko. Przed usunięciem musimy wcześniej zmienić tabele a l t e r table Kura drop constraint KuraRefJajko ; a l t e r table Jajko drop constraint JajkoRefKura ; drop table Kura ; drop table Jajko ; szósty Więzy i wyzwalacze 11 / 35
12 Odroczenie sprawdzania więzów Domyślnie więzy sprawdzane sa po każdej instrukcji, która może je naruszyć. Możemy odroczyć sprawdzanie więzów przez deklaracje bf deferable initially deferred. Możemy też zmienić strategie sprawdzania więzów poleceniem: set constraint <ograniczenie> deferred lub set constraint <ograniczenie> immediate. szósty Więzy i wyzwalacze 12 / 35
13 Integralność referencyjna Zmiany krotek, w tabeli z więzami moga spowodować ich naruszenie. DBMS powinien zareagować w takich sytuacjach. szósty Więzy i wyzwalacze 13 / 35
14 Integralność referencyjna Rozważmy tabele Klucze(id) i KluczeObce(ko), gdzie ko jest kluczem obcym odwołujacym się do Klucze(id). Jeśli chcemy wstawić do KluczeObce krotkę z wartościa klucza obcego różna od NULL i taka, że nie znajduje się ona w tabel Klucze, to DBMS odrzuci zmianę. Podobnie musi zachować się w sytuacji, gdy zmieniamy wartość ko w KluczeObce na wartość różna od NULL i nie znajdujac a się w tabeli Klucze. szósty Więzy i wyzwalacze 14 / 35
15 Integralność referencyjna usuwanie Rozważmy tabele Klucze(id) i KluczeObce(ko), gdzie ko jest kluczem obcym odwołujacym się do Klucze(id). DBMS domyślnie zabroni usunięcia krotek z tabeli Klucz, do których odwołuja się pewne krotki z tabeli KluczObcy. Polityka kaskadowa usunie wszystkie krotki z tabeli KluczObcy, które odwołuja się do usuniętej wartości (opcja on delete cascade). Polityka ustawienia NULL wstawi wartości NULL w miejsce wszystkich wartości, które przestały odwoływać się do istniejacej wartości (on delete set null). szósty Więzy i wyzwalacze 15 / 35
16 Integralność referencyjna modyfikacja Rozważmy tabele Klucze(id) i KluczeObce(ko), gdzie ko jest kluczem obcym odwołujacym się do Klucze(id). DBMS domyślnie zabroni modyfikacji krotek z tabeli Klucz, do których odwołuja się pewne krotki z tabeli KluczObcy. Polityka kaskadowa zmieni wartości atrybutu ko krotek z tabeli KluczObcy, na nowa wartość (opcja on update cascade). Polityka ustawienia NULL wstawi wartości NULL w miejsce wszystkich wartości, które przestały odwoływać się do istniejacej wartości (on update set null). szósty Więzy i wyzwalacze 16 / 35
17 Więzy atrybutów i krotek Możemy nakładać więzy na poszczególne atrybuty tabeli. Przykłady: id int not null, plec char(1) check (plec in ( K, M )). kluczobcy int check (exists (select id from Klucze)). check (placa >= select avg(placa) / 2 from pracownicy). Więzy te sa sprawdzane przy każdym wstawieniu lub aktualizacji wartości atrybutu. szósty Więzy i wyzwalacze 17 / 35
18 Więzy atrybutów i krotek W definicji tabeli możemy dodać warunek, który maja spełniać krotki z tabeli. Np. tylko osoby posiadajace kartę kredytowa w danym banku moga mieć w nim kredyt: check ( (KartaKredytowa is not null)or( Kredyt is null)). szósty Więzy i wyzwalacze 18 / 35
19 Więzy atrybutów i krotek Więzy krotek sa sprawdzane przy modyfikacji krotki. Więzy atrybutów sa sprawdzane tylko przy włożeniu lub modyfikacji atrybutu. Jeśli warunek odwołuje się do innych krotek w tabeli lub innych tabel, to łatwo może stać się fałszywy. szósty Więzy i wyzwalacze 19 / 35
20 Własności więzów Nałożone więzy moga być: DEFERRABLE albo NOT DEFERRABLE, INITIALLY DEFERRED albo INITIALLY IMMEDIATE. Konsekwencje różnych własności: Więzy IMMEDIATE sa sprawdzane po każdej instrukcji, która może zmienić ich zachodzenie (insert, update). Więzy DEFERRED sa sprawdzane dopiero podczas operacji commit. Własności więzów ustawiamy instrukcja set constraint <warunek> <własność>. Aby można było ustawić własność DEFERRED dane ograniczenie musi być utworzone z własnościa DEFERRABLE. Jeśli więzy nie sa spełnione transakcja lub cały ciag transakcji (przy własności deferred) zostaje cofnięty. szósty Więzy i wyzwalacze 20 / 35
21 Własności więzów przykład Jeśli w tabeli T mamy ograniczenie T_chk postaci check (a>-20 and a<20), które ma własność deferred i wykonujemy ciag instrukcji: insert into T values(30); insert into T values(11); insert into T values(2); commit; to cofnięte zostana wszystkie instrukcje. szósty Więzy i wyzwalacze 21 / 35
22 Własności więzów przykład W tabeli T mamy ograniczenie T_chk postaci check (a>-20 and a<20). set constraint T_chk immediate ; i n sert into T values ( 1 6 ) ; i n sert into T values ( 2 0 ) ; i n sert into T values ( 1 7 ) ; set constraint T_chk deferred ; i n sert into T values ( 1 8 ) ; i n sert into T values ( 3 0 ) ; i n sert into T values ( 1 9 ) ; Po wykonaniu powyższych instrukcji T będzie zawierać wartości 16, 17, 18, 30, 19. Po wykonaniu commit wszystkie powyższe instrukcje zostana cofnięte. Możemy się przed tym zabezpieczyć wykonujać przed zakończeniem transakcji set constraint T_chk immediate. szósty Więzy i wyzwalacze 22 / 35
23 Modyfikacje więzów Możemy modyfikować więzy poprzez instrukcje: set constraint... albo alter table... modify constraint... Więzy możemy włacz ać lub wyłaczać, ENABLE lub DISABLE, z opcjami VALIDATE lub NOVALIDATE. ENABLE (opcja domyślna VALIDATE) włacza warunek i sprawdza czy zachodzi dla aktualnych danych. Jeśli nie jest spełniony to instrukcja się nie powiedzie. ENABLE NOVALIDATE włacza warunek lecz nie sprawdza go dla aktualnych danych. DISABLE (opcja domyślna NOVALIDATE ) wyłacza warunek (np. usuwa index dla warunków UNIQUE lub PRIMARY KEY). DISABLE VALIDATE wyłacza warunek lecz nie pozwala na późniejsza modyfikację kolumny, której dotyczy warunek. szósty Więzy i wyzwalacze 23 / 35
24 Outline 1 Więzy Klucze 2 Wyzwalacze szósty Więzy i wyzwalacze 24 / 35
25 Wyzwalacze Wyzwalacze pozwalaja kontrolować zarówno czas wykonania akcji jak i warunek, który ma być spełniony. Określane jako reguły ECA event-condition-action. event modyfikacja bazy danych, condition wyrażenie SQL o wartości booleowskiej, action wyrażenie SQL. Nie należy stosować wyzwalaczy jeśli możemy uzyskać ten sam efekt przez zastosowanie więzów (NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, CHECK, ON DELETE CASCADE, ON DELETE SET NULL). szósty Więzy i wyzwalacze 25 / 35
26 Przykład Jeśli wkładana do tabeli KluczeObce(id, ko) wartość ko nie występuje w tabeli Klucze(id), to zastapmy ja wartościa NULL. create or replace t r i g g e r BrakKlucza a f t e r i n sert on KluczeObce referencing old row as StaraKrotka new row as NowaKrotka for each row when ( NowaKrotka. ko not i n ( select i d from Klucze ) ) update KluczeObce ( i d, ko ) set ko=null where i d =NowaKrotka. i d ; szósty Więzy i wyzwalacze 26 / 35
27 Przykład Ostatniego przykładu proszę nie sprawdzać w Oracle. Nie ma DBMS, który by implementował całość standardu SQL zwiazanego z wyzwalaczami. szósty Więzy i wyzwalacze 27 / 35
28 Wyzwalacze Wydarzenie Wyzwalacz możemy uruchomić przed, po lub zamiast wydarzenia (before, after, instead of). Wydarzenie instead of jest zarezerwowane dla perspektyw (określamy co zrobić zamiast modyfikowania perspektywy). Wykonujac wyzwalacz przed wydarzeniem, po wykonaniu wyzwalacza warunek nie jest sprawdzany drugi raz. Wydarzeniami moga być: insert, update, delete. Przy update możemy zawęzić modyfikację do pewnych atrybutów: update of atrybuty. szósty Więzy i wyzwalacze 28 / 35
29 Wyzwalacze warunek Warunek to wyrażenie SQL o wartości boole owskiej. Warunek sprawdzany jest w tabeli, która istnieje przed zmiana lub która istniałaby po zmianie. szósty Więzy i wyzwalacze 29 / 35
30 Wyzwalacze akcja Akcja może być pojedyńcza instrukcja SQL lub ich zbiór (begin... end). Akcję możemy wykonać dla pojedyńczych wierszy (for each row) lub dla całej instrukcji, która uruchomiła wyzwalacz (for each statement domyślne). Przy opcji for each row możemy odwołać się do starej i nowej krotki tabeli (jeśli istnieja). szósty Więzy i wyzwalacze 30 / 35
31 Wyzwalacze Oracle Możemy wywołać wyzwalacz przy wydarzeniu systemowym (startup, shutdown, logon, logoff) Przy update możemy zawęzić modyfikację do pewnych atrybutów: update of atrybuty. Możemy wymienić do trzech warunkow przy pomocy or: before update or insert on Tab. Wyzwalacz typu statement nie może posiadać klauzuli when. W warunku when nie możemy użyć kwerendy SQL. szósty Więzy i wyzwalacze 31 / 35
32 Wyzwalacze Oracle Jeden wyzwalacz może określać akcje typu statement jak i akcję each row (compound triggers). Do nowych krotek odwołujemy się przez new, do starych przez old. W akcji nowe i stare wartosci poprzedzamy dwukropkiem ale po warunku when nie. Aby uniknać nieskończonych sekwencji wywołań wyzwalacz nie może: modyfikować tabeli, której modyfikacja go uruchomiła, modyfikować tabeli powiazanej z ta tabela przez więzy klucza obcego. Możemy obejrzeć błędy kompilacji wyzwalacza wydajac polecienie: show errors trigger <nazwa_wyzwalacza>; szósty Więzy i wyzwalacze 32 / 35
33 Wyzwalacze przykład Wstawianie domyślnej wartości zamiast NULL we wstawianych do tabeli danych. create or replace t r i g g e r UstawJajko before update or insert on Kura for each row when (new. j a j k o _ i d i s null ) begin :new. j a j k o _ i d : = 1 ; end ; szósty Więzy i wyzwalacze 33 / 35
34 Wyzwalacze przykład Wstawianie brakujacej krotki z kluczem do tabeli Klucze przy próbie wstawienia do tabeli KluczeObce. create or replace t r i g g e r DodajKlucz before update or i n s e r t on KluczeObce for each row declare i number ; begin select count ( ) into i from Klucze where i d =:new. kluczobcy ; i f ( i =0) then i n sert into Klucze values ( : new. kluczobcy ) ; end i f ; end ; szósty Więzy i wyzwalacze 34 / 35
35 Podsumowanie Więzy kluczy: sprawdzane przy zmianach tabeli z kluczem obcym oraz przy zmianach tabeli, do której odwołuje sie klucz obcy, pozwalaja na różne lecz ograniczone strategie przy niespełnieniu integralności. Więzy check atrybutów: sprawdzane tylko przy zmianach odpowiednich atrybutów, zmiany innych krotek lub tabel moga je ufałszywić, pozwalaja na dowolne strategie reakcji. Więzy check krotek podobnie jak atrybutów lecz sa częściej sprawdzane. Wyzwalacze: elastyczne warunki uruchomienia. dowolne podejmowane akcje. szósty Więzy i wyzwalacze 35 / 35
Aspekty 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ć
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
Procedury 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
Uż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
Bazy danych 6. Klucze obce. P. F. Góra
Bazy danych 6. Klucze obce P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2018 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka sposobów. Sposób ten (żargonowo:
Bazy 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.
Oracle 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
Instrukcja 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
1. 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
3 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)
Wyzwalacze. 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
Wykł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
Ję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
Procedury 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
Cele. 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
Administracja 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''
Blaski 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
Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1
Tworzenie tabel Tabela podstawowa struktura, na której zbudowana jest relacyjna baza danych. Jest to zbiór kolumn (atrybutów) o ustalonych właściwościach, w których przechowuje się dane. Dane te są reprezentowane
Autor: Joanna Karwowska
Autor: Joanna Karwowska Klucz podstawowy PRIMARY KEY Klucz kandydujący UNIQUE Klucz alternatywny - klucze kandydujące, które nie zostały wybrane na klucz podstawowy Klucz obcy - REFERENCES Tworząc tabelę,
Wyzwalacze 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
Ję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
Bazy danych - Materiały do laboratoriów VIII
Bazy danych - Materiały do laboratoriów VIII dr inż. Olga Siedlecka-Lamch Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska 23 kwietnia 2011 roku Polecenie COMMIT i ROLLBACK Polecenie
I. 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
Bazy danych Język SQL część 1 Wykład dla studentów matem
Bazy danych Język SQL część 1 Wykład dla studentów matematyki 15 marca 2015 SQL Język wysokiego poziomu do komunikacji z bazami danych (ściślej: z systemami zarzadzania bazami danych) Podajemy co ma być
Przykł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
UPDATE 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}, {
Plan 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
E.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
Wykł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
D D L S Q L. Co to jest DDL SQL i jakie s jego ą podstawowe polecenia?
D D L S Q L Co to jest DDL SQL i jakie s jego ą podstawowe polecenia? D D L S Q L - p o d s t a w y DDL SQL (Data Definition Language) Jest to zbiór instrukcji i definicji danych, którym posługujemy się
Zarządzanie obiektami bazy danych Oracle11g
Zarządzanie obiektami bazy danych Oracle11g Wstęp Obiekty to struktury przechowujące, porządkujące lub operujące na danych takie jak: Tabele Więzy integralności Indeksy Widoki Sekwencje Procedury Linki
SQL język zapytań (query language) cz.1
SQL język zapytań (query language) cz.1 Zapytanie SELECT - podstawy (3) SELECT A 1,A 2,...,A k (1) FROM R 1,R 2,,R n -- lista wyboru (atrybutów) -- relacje (lista FROM) (2) WHERE F -- warunek wyboru (selekcji)
PODSTAWY 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
Bazy danych 9. Klucze obce Transakcje
Bazy danych 9. Klucze obce Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2007/08 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka
Bazy danych 9. Klucze obce Transakcje. P. F. Góra
Bazy danych 9. Klucze obce Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2009 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka sposobów. Sposób
Zaawansowane 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
SQL DDL DML TECHNOLOGIE BAZ DANYCH. Wykład 5: Język DDL i DML. Małgorzata Krętowska
SQL TECHNOLOGIE BAZ DANYCH Wykład 5: Język DDL i DML. SQL (ang. StructuredQueryLanguage) strukturalny język zapytań używany do tworzenia, modyfikowania relacyjnych baz danych oraz do umieszczania i pobierania
Tworzenie 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
BAZA 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
1: 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
Bazy danych 10. SQL Widoki
Bazy danych 10. SQL Widoki P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Widoki, AKA Perspektywy W SQL tabela, która utworzono za pomoca zapytania CREATE TABLE, nazywa się tabela
Hurtownia Ś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
Programowanie 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
Bazy danych 9. SQL Klucze obce Transakcje
Bazy danych 9. SQL Klucze obce Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Klucze obce Klucze obce powiazanie indeksowanej kolumny jakiejś tabeli z indeksowana kolumna
SQL :: 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
Tworzenie tabeli przez select CREATE TABLE PRAC2 AS SELECT P.NAZWISKO, Z.NAZWA FROM PRAC P NATURAL JOIN ZESP Z
Tworzenie tabeli Np. create table nazwa_tab( \\stworzenie tabeli Id numer(4) constraint PRAC_PK primary key, \\ustawiamy klucz podst. Nazwisko varchar2(30), \\typ tekstowy 30 znaków Kwota number(10,2)
DECLARE 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.;
Wprowadzenie do projektowania i wykorzystania baz danych Relacje
Wprowadzenie do projektowania i wykorzystania baz danych Relacje Katarzyna Klessa Dygresja nt. operatorów SELECT 2^2 SELECT 2^30 SELECT 50^50 2 Dygresja nt. operatorów SELECT 2^30 --Bitwise exclusive OR
Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2.
Bazy Danych i Systemy informacyjne Wykład 2 Piotr Syga 16.10.2017 Dodawanie, usuwanie i zmienianie rekordów Wstawianie rekordu wstawianie do tabeli INSERT INTO A VALUES ( fioletowy, okrągły, słodko-kwaśny
Wykład 5. SQL praca z tabelami 2
Wykład 5 SQL praca z tabelami 2 Wypełnianie tabel danymi Tabele można wypełniać poprzez standardową instrukcję INSERT INTO: INSERT [INTO] nazwa_tabeli [(kolumna1, kolumna2,, kolumnan)] VALUES (wartosc1,
Plan wykładu BAZY DANYCH II WYKŁAD 8. Wyzwalacze. Wyzwalacze
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,
Wyzwalacze. 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
Podstawy języka SQL. SQL Structured Query Languagestrukturalny
Podstawy języka SQL SQL Structured Query Languagestrukturalny język zapytań DDL Język definicji danych (np. tworzenie tabel) DML Język manipulacji danych (np. tworzenie zapytań) DCL Język kontroli danych
Pawel@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
Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/
Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/ Wprowadzenie Historia i standardy Podstawy relacyjności Typy danych DDL tabele, widoki, sekwencje zmiana struktury DML DQL Podstawy, złączenia,
Wykład 05 Bazy danych
Wykład 05 Bazy danych Tabela składa się z: Kolumn Wierszy Wartości Nazwa Wartości Opis INT [UNSIGNED] -2^31..2^31-1 lub 0..2^32-1 Zwykłe liczby całkowite VARCHAR(n) n = długość [1-255] Łańcuch znaków o
Pakiety 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)
Język SQL, zajęcia nr 2
Język SQL, zajęcia nr 2 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Funkcja agregująca
PL/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
Bazy danych i usługi sieciowe
Bazy danych i usługi sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2014 1 / 16 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_danych_i_usługi_sieciowe_-_2014z
Relacyjne bazy danych. Podstawy SQL
Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umożliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.
SQL 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]...
Wyzwalacze (triggery) Przykład
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 związany
Bazy danych i usługi sieciowe
Bazy danych i usługi sieciowe SQL dokończenie Paweł Daniluk Wydział Fizyki Jesień 2016 P. Daniluk (Wydział Fizyki) BDiUS w. V Jesień 2016 1 / 39 Data Manipulation Language Zapytania klauzula SELECT Wstawianie
Bartosz Jachnik - Kino
Bartosz Jachnik - Kino I. Opis bazy Prezentowana baza danych stworzona została na potrzeby prowadzenia kina. Zawiera ona 8 tabel, które opisują filmy grane w danym okresie w kinie, wraz ze szczegółowym
Ję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ą
Język DML. Instrukcje DML w różnych implementacjach SQL są bardzo podobne. Podstawowymi instrukcjami DML są: SELECT INSERT UPDATE DELETE
Język DML Instrukcje DML w różnych implementacjach SQL są bardzo podobne. Podstawowymi instrukcjami DML są: SELECT INSERT UPDATE DELETE Systemy Baz Danych, Hanna Kleban 1 INSERT Instrukcja INSERT dodawanie
Bazy Danych i Usługi Sieciowe
Bazy Danych i Usługi Sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2011 1 / 15 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2011z
Bazy danych 8. Widoki i wyzwalacze. P. F. Góra
Bazy danych 8. Widoki i wyzwalacze P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 I. Widoki, AKA Perspektywy W SQL tabela, która utworzono za pomoca zapytania CREATE TABLE, nazywa się tabela podstawowa
1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) możemy określić do której grupy plików trafi
1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) Tworząc tabelę nie możemy określić, do którego pliku trafi, lecz możemy określić do której grupy plików trafi Zawsze istnieje grupa zawierająca
Przykładowa baza danych BIBLIOTEKA
Przykładowa baza danych BIBLIOTEKA 1. Opis problemu W ramach zajęć zostanie przedstawiony przykład prezentujący prosty system biblioteczny. System zawiera informację o czytelnikach oraz książkach dostępnych
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych
Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Instrukcja do zajęć laboratoryjnych Nr ćwiczenia: 9 Praca z bazą danych MySQL wersja 2.0 Temat: Cel ćwiczenia:
77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.
77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego. Przy modelowaniu bazy danych możemy wyróżnić następujące typy połączeń relacyjnych: jeden do wielu, jeden do jednego, wiele
kończy wysyłanie danych do pliku tworzy strukturę tabeli wyświetla opis struktury tabeli zmiana nazwy tabeli usuwanie tabeli
SPOOL moj_plik SPOOL OFF @ moj_ plik edit CREATE TABLE DESCRIBE ALTER TABLE RENAME DROP TABLE CONNECT CONNECT USER_NAME DISCONNECT EXIT zapisuje wszystkie wydane polecenia oraz ich wyniki do pliku moj_plik,
Pawel@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ść
1 Projekt fizyczny 1. 3 Perspektywy słownika danych Źródła 12
Plan wykładu Spis treści 1 Projekt fizyczny 1 2 Transformacja ML do PF 2 2.1 Definiowanie tabel............................... 2 2.2 Więzy integralności............................... 4 2.3 Modyfikacja
Bazy danych 7. Klucze obce Transakcje. P. F. Góra
Bazy danych 7. Klucze obce Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2011 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka sposobów. Sposób
Instytut Mechaniki i Inżynierii Obliczeniowej fb.com/groups/bazydanychmt/
Instytut Mechaniki i Inżynierii Obliczeniowej www.imio.polsl.pl fb.com/imiopolsl @imiopolsl fb.com/groups/bazydanychmt/ Wydział Mechaniczny technologiczny Politechnika Śląska Laboratorium 4 (Asocjacje,
Widok Connections po utworzeniu połączenia. Obszar roboczy
Środowisko pracy 1. Baza danych: Oracle 12c - Serwer ELARA - Konta studenckie, dostęp także spoza uczelni - Konfiguracja: https://e.piotrowska.po.opole.pl/index.php?option=conf 2. Środowisko: SQL Developer
BAZY 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
Język zapytań SQL- język relacyjnych baz danych
Język SQL Język zapytań SQL- język relacyjnych baz danych SQL (Structured Query Language),czyli Strukturalny Język Zapytań. SQL jest standardowym językiem do kierowania poleceń do relacyjnej bazy danych
Perspektywy 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ą
Relacyjne bazy danych. Podstawy SQL
Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umoŝliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.
Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach
Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym. Modele - konceptualne reprezentacja obiektów w
Baza danych zbiór danych
Baza danych zbiór danych SZBD database management system System zarządzania bazą danych Modyfikacja Zapytania Aktualizacje schematu PROCESOR ZAPYTAŃ MODUŁ ZARZĄDZANIA TRANZAKCJAMI MODUŁ ZARZĄDZANIA PAMIĘCIĄ
Bazy danych programowanie Wykład dla studentów matematyk
Bazy danych programowanie Wykład dla studentów matematyki 23 kwietnia 2017 Funkcje Funkcje definiuje się w Postgresie używajac konstrukcji CREATE FUNCTION nazwa(parametr typ,...) RETURNS typ-wyniku AS
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. zadania
Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. zadania 1. Zmodyfikuj strukturę relacji PROJEKTY, dodając do niej definicje następujących ograniczeń integralnościowych (użyj kilku poleceń):
Sprawdzenie poziomu izolacji transakcji (w aktualnym połączeniu):
Utwórz bazę danych Cw: CREATE DATABASE Cw Sprawdzenie poziomu izolacji transakcji (w aktualnym połączeniu): DBCC USEROPTIONS Przykład z zapisem do tabeli tymczasowej: --Jeśli istnieje tabela tymczasowa
Język SQL, zajęcia nr 1
Język SQL, zajęcia nr 1 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Najpopularniejsze
SIECI KOMPUTEROWE I BAZY DANYCH
KATEDRA MECHANIKI I ROBOTYKI STOSOWANEJ WYDZIAŁ BUDOWY MASZYN I LOTNICTWA, POLITECHNIKA RZESZOWSKA SIECI KOMPUTEROWE I BAZY DANYCH Laboratorium DB2: TEMAT: Relacyjne bazy danych Cz. I, II Cel laboratorium
Monika Sychla 241858 Daniel Smolarek 241875. Projekt bazy danych
Monika Sychla 241858 Daniel Smolarek 241875 Projekt bazy danych Naszym zadaniem było zaprojektowanie przykładowej bazy danych, w oparciu o zagadnienia jakie zostały wprowadzone w trakcie kursu z baz danych.
Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska
Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion Autor: Joanna Karwowska SQL zapewnia obsługę: zapytań - wyszukiwanie danych w bazie, operowania danymi - wstawianie, modyfikowanie
Rozdział 17. Zarządzanie współbieżnością zadania dodatkowe
Rozdział 17. Zarządzanie współbieżnością zadania dodatkowe -- Definicje relacji i utworzenie stanu początkowego dla ćwiczeń z synchronizacji transakcji DROP TABLE Konta cascade constraints; DROP TABLE
Laboratorium 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
15. 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
Zbiór pytań nr 2. 1 Tabela DEPARTMENTS ma następującą strukturę:
Zbiór pytań nr 2 1 Tabela DEPARTMENTS ma następującą strukturę: Nazwa kolumny Typ danych Uwagi dept_id NUMBER(4) NOT NULL, PRIMARY KEY dept_name VARCHAR2(30) mgr_id NUMBER(6) location_id NUMBER(4) Które
Skł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.
IMPLEMENTACJA ASERCJI W RELACYJNYCH BAZACH DANYCH NA PRZYKŁADZIE SYSTEMU ORACLE
DARIUSZ KARPISZ IMPLEMENTACJA ASERCJI W RELACYJNYCH BAZACH DANYCH NA PRZYKŁADZIE SYSTEMU ORACLE IMPLEMENTATION OF ASSERTION FOR RELATIONAL DATABASES WITH ORACLE EXAMPLES S t r e s z c z e n i e A b s t