Modelowanie bazodanowe - Wykład. Wydział Matematyki, Informatyki i Ekonometrii Uniwersytet Zielonogórski

Wielkość: px
Rozpocząć pokaz od strony:

Download "Modelowanie bazodanowe - Wykład. Wydział Matematyki, Informatyki i Ekonometrii Uniwersytet Zielonogórski"

Transkrypt

1 Modelowanie bazodanowe - Wykład Grzegorz Arkit Wydział Matematyki, Informatyki i Ekonometrii Uniwersytet Zielonogórski 15 grudnia 2013 G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

2 Literatura Literatura Podstawy baz danych, Tadeusz Pankowski, Wydawnictwo Naukowe PWN, 1992 InterBase 6, Language Reference, Inprise/Borland, 1999 (dostępny publicznie) Firebird 2.5 Language Reference Update, Paul Vinkenoog, 2011 (dostępny publicznie) Databases - a first course, John Carter, 2001 (Chapter 3: Entity - relationship modelling dostępny opublicznie) SQL i PL/SQL podstawy, Andrzej Klusiewicz, 2013 (dostępny publicznie) inne źródła internetowe oraz materiały własne prowadzącego G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

3 Wykład I - Wstęp Przypomnienie wiadomości z teorii baz danych Relacyjny model danych Model relacyjny W najprostszym ujęciu w modelu relacyjnym dane grupowane są w relacje, które reprezentowane są przez tablice. Kolumny opisują atrybuty a wiersze dane. Pomiędzy atrybutami w danej relacji mogą zachodzić zależności funkcyjne. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

4 Wykład I - Wstęp Przypomnienie wiadomości z teorii baz danych Pierwsza postać normalna (1PN, 1NF) Każda wartość jest atomowa (elementarna). WYPOŻYCZENIA (nr czytelnika, lista książek) nr czytelnika lista książek 128 Pascal, Access 155 Excel, Pascal WYPOŻYCZENIA (nr czytelnika, książka) - 1PN nr czytelnika książka 128 Pascal 128 Access 155 Excel 155 Pascal G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

5 Wykład I - Wstęp Przypomnienie wiadomości z teorii baz danych Przykłady: nazwisko, imiona nie jest w 1PN, czy adres jest wartości elementarną? G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

6 Wykład I - Wstęp Przypomnienie wiadomości z teorii baz danych Druga postać normalna (2PN, 2NF) Każda kolumna zależy funkcyjnie od klucza(każdego). Zaliczenia Przedmiot, NrStudenta, TypOceny, Ocena, Student Klucz: Przedmiot, NrStudent Student zależy funkcyjnie od NrStudenta Rozkład: względem zależności funkcyjnej NrStudent Student R1: Przedmiot, NrStudenta, TypOceny, Ocena R2: NrStudenta, Student G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

7 Wykład I - Wstęp Przypomnienie wiadomości z teorii baz danych Trzecia postać normalna (3PN, 3NF) Gdy każdy atrybut niekluczowy jest bezpośrednio zależny od klucza (nie ma zależności tranzytywnych). imię nazwisko miejsce urodzenia powiat Emil Zając Pszczyna pszczyński Zofia Zima Pszczyna pszczyński Eulalia Jańska Szczebrzeszyn zamojski Klucz: imię i nazwisko, ale jest zależność Miejsce urodzenia > Powiat. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

8 Wykład I - Wstęp Przypomnienie wiadomości z teorii baz danych Postać normalna Boyce a-code a(pnbc, BCNF) Schemat w PNBC gdy z istnienia nietrywialnej zależności X A wynika, że X jest nadkluczem. Atrybuty: Miasto, Ulica, Kod Zależności: MU K, K M Klucz: MU, KU Dla zależności K M, K jest nadkluczem. UWAGA: nie do końca właściwy, bo nie zawsze jednej ulicy w mieście odpowiada jeden kod. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

9 Wykład I - Wstęp Przypomnienie wiadomości z teorii baz danych Dekompozycja odnalezienie nietrywialnej zależności funkcyjnej: A 1 A 2...A n B 1 B 2...B m, która narusza BCNF tzn. A 1 A 2...A n nie jest nadkluczem, dodanie do prawej strony wszystkich atrybutów zależnych funkcyjnie od A 1 A 2...A n w ten sposób powstaje nowa relacja, druga relacja będzie się składała z atrybutów A 1 A 2...A n oraz z pozostałych (poza B 1 B 2...B m ) atrybutów relacji. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

10 Wykład I - Wstęp System zarządzania bazą danych System zarządzania bazą danych System zarządzania bazą danych (SZBD, ang. Database Management System, DBMS) oprogramowanie bądź system informatyczny służący do zarządzania bazą danych. System zarządzania bazą danych może być również serwerem bazy danych (SBD) lub też może udostępniać bazę danych lokalnie na określonym komputerze. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

11 Wykład I - Wstęp System zarządzania bazą danych Niezbędne mechanizmy środki do administrowania zapisanymi na nośnikach zbiorami danych, środki zapewniające integralność i bezpieczeństwo danych, środki pozwalające na odtworzenie zawartości bazy danych po awarii, narzędzia programistyczne wykorzystujące język programowania i API, dostęp do danych poprzez język zapytań bazy danych np. SQL, wielodostępność danych, np. poprzez transakcje, środki pozwalające na autoryzację dostępu do danych, środki do zarządzania metadanymi, środki optymalizujące wykorzystanie pamięci operacyjnej, środki optymalizujące czas dostępu do danych, np. indeksy, środki do pracy w środowisku rozproszonej bazy danych. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

12 Wykład I - Wstęp System zarządzania bazą danych Dodatkowe (praktyczne) mechanizmy wyzwalacze, procedury i funkcje operujące na danych, mechanizmy określania uprawnień do danych, perspektywy. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

13 Wykład I - Wstęp System zarządzania bazą danych Rodzaje baz danych lokalne (DBase, Paradox, Access, SQLite) bazy klient serwer klastry bazodanowe (mirror, split) replikacja G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

14 Wykład I - Wstęp System zarządzania bazą danych Najczęściej stosowane rozwiązania bazodanowe darmowe lokalne: SQLite, rzadziej Dbase, Open/Libre Office Base, JavaDB, darmowe serwerowe: MySQL (serwisy WWW), PostgreSQL, Firebird, darmowe serwerowe (komercyjne): Oracle Express, MS SQLServer Express, DB2 Express (?) - darmowe wersje korporacyjnych baz danych, ale z ograniczeniami na ilość używanych zasobów komputera i/lub ograniczeniami na wielkość bazy, komercyjne - lokalne: MS Access, Paradox, komercyjne serwerowe: Oracle, MS SQL Server, DB2, itd... G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

15 Wykład I - Wstęp Podstawy języka SQL Grupy komend języka SQL DML - Data Manipulation Language (INSERT, UPDATE, DELETE) DDL - Data Definition Language (CREATE, ALTER, DROP) DCL - Data Control Language (GRANT, REVOKE) języki proceduralne (PL/SQL) DQL - Data Query Language (SELECT) G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

16 Wykład I - Wstęp Podstawy języka SQL DML - Data Manipulation Language INSERT UPDATE DELETE Służą do manipulowania danymi w obrębie pojedyńczej tabeli. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

17 Wykład I - Wstęp Podstawy języka SQL DDL - Data Definition Language CREATE ALTER DROP Służą do zarządzania obiektami bazy danych takimi jak tablice, perspektywy, indeksy, klucze, procedury, funkcje, pakiety i wiele innych. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

18 Wykład I - Wstęp Podstawy języka SQL DCL - Data Control Language GRANT REVOKE Służa do zarządzania uprawnieniami użytkowników w odniesieniu do samej bazy (np. możliwość tworzenia obiektów) jak i w odniesieniu do obiektów (np. możliwość odczytania danych z tablicy lub ich modyfikowania). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

19 Wykład I - Wstęp Podstawy języka SQL Języki proceduralne Pozwalają budować procedury i/lub funkcje operujące na danych (np. zbudować uporządkowaną alfabetycznie listę nazwisk powiązanych z danym utworem, lub zebrać kilka operacji na danych w jeden blok widziany jako atomowa operacja z punktu widzenia użytkownika). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

20 Wykład I - Wstęp Podstawy języka SQL DQL - Data Query Language Komedna SELECT służąca do pobierania danych z tablic bazy danych. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

21 Wykład I - Wstęp Podstawy języka SQL Szczegóły na temat używania poszczególnych komend SQL można znaleźć w wymienionej literaturze. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

22 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Modelowanie danych W inżynierii oprogramowanie jest procesem tworzenia modelu danych dla systemu informacyjnego poprzez zastosowanie formalnych technik modelowania danych. Jest procesem używanym do definiowania i analizowania danych wymaganych do obsługi procesów biznesowych będących w zakresie systemu informacyjnego w danej organizacji. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

23 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Model danych Jest zapisem (w systemie informacyjnym) informacji o obiektach (wraz z ich własnościami) oraz relacji zachodzących pomiędzy tymi obiektami. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

24 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Model (schemat) koncepcyjny Obejmuje budowę modelu świata rzeczywistego wyrażonego w postaci określonych wymagań dotyczących danych. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

25 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Model logiczny Opisuje dane w postaci obiektów wraz z określonymi własnościami (zapisanymi za pomocą określonych typów danych) oraz relacje pomiędzy nimi. Sposób organizacji danych, typy danych oraz relacje pomiędzy nimi są opisane w sposób przewidziany dla danego rodzaju modelu logicznego (model relacyjny, model obiektowy itp). W naszym przypadku będzie to model relacyjny. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

26 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Model fizyczny Obrazuje fizyczny układ danych w docelowym systemie przeznaczonym do przechowywania danych (w naszym przypadku w systemie RDBMS). Model fizyczny może być powiązany z konkretnym rodzajem bazy danych, ale nie musi. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

27 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia W przypadku mniejszych systemów modele koncepcyjny i logiczny zazwyczaj są tożsame. W modelowaniu bazodanowym zakładamy, że wiemy jakie dane są w danej strukturze potrzebne do obsługi procesów biznesowych. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

28 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Encja (ang. entity) w bazach danych to reprezentacja wyobrażonego lub rzeczywistego obiektu (grupy obiektów) stosowana przy modelowaniu danych podczas analizy informatycznej. Formalnie jest to pojęcie niedefiniowalne, a podstawową cechą encji jest to, że jest rozróżnialna od innych encji. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

29 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Relacja pomiędzy encjami Opisuje w jaki sposób dane mogą zależeć od siebie w modelu relacyjnym. artysta tworzy jest tworzony utwór G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

30 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Identifying relation jeżeli jest, to referencja w tablicy podrzędnej będzie elementem jej klucza głównego. W najnowszych systemach (np. Oracle SQL Developer Data Modeler od wersji 3.3) relacja w modelu logicznym mogą posiadać dodatkowe atrybuty (np. relacja pomiędzy przepisem a składnikiem może zawierać jednostkę i ilość produktu użytego w danym przepisie). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

31 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Notacje w schematach relacyjnych Notacje w schematach relacyjnych G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

32 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Notacje w schematach relacyjnych G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

33 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Notacje w schematach relacyjnych G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

34 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Notacje w schematach relacyjnych IDEF1X Relationship Cardinality Syntax G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

35 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Notacje w schematach relacyjnych Bachman Identifying pionowa kreska przy wiele. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

36 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Notacje w schematach relacyjnych Barker notations Identifying pionowa kreska przy wiele. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

37 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Notacje w schematach relacyjnych G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

38 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Notacje w schematach relacyjnych G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

39 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Notacje w schematach relacyjnych Data Architect - notacja kurzej stopki kółko (lub nic gdy nie jest wymagana), pionowa kreska gdy jest wymagana. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

40 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Notacje w schematach relacyjnych Reverse engineering Technika odwracania, inżynieria odwrotna, inżynieria wsteczna, programowanie zwrotne to proces badania produktu (urządzenia, programu komputerowego) w celu ustalenia jak on dokładnie działa, a także w jaki sposób i jakim kosztem został wykonany. W przypadku modelowania bazodanowego jest proces przejścia z modelu znajdującego się na niższym poziomie abstrakcji do modelu na wyższym poziomie abstrakcji. Najczęściej wykorzystywane do utworzenia modelu fizycznego na podstawie istniejącej bazy danych (np. w celu udokumentowania istniejącej bazy danych) G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

41 Wykład II - Modelowanie bazodanowe - podstawowe pojęcia Narzędzia Planowane narzędzia do użycia Oracle SQL Developer data Modeler Open ModelSphere Visual Paradigm for UML Community Edition ArgoUML-DB Narzędzia pozwalają używać kilku notacji Pozostałe darmowe narzędzia pozwalają zazwyczaj na modelowanie konkretnych baz danych na poziomie modelu fizycznego. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

42 Praktyczne elementy projektowania BD Nazewnictwo obiektów Przedrostki określające rodzaj obiektu: TB - tablica PRC - procedura TG - trigger itd... Nazwy obiektów: liczba mnoga czy pojedyncza? Nazwy kluczy obcych: mianownik czy dopełniacz? Nazwy kluczy głównych: ID czy ID_tablica? G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

43 Praktyczne elementy projektowania BD Nazewnictwo obiektów Przedrostki określające fragment funkcjonalny schematu ST - student RK - rekrutacja PL - plan zajęć itd... Należy pamiętać o ograniczeniach na długość nazw (np. Oracle - 30 znaków). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

44 Przydatne funkcje bazodanowe Ograniczenie danych widzianych przez użytkownika Updatable views ograniczenie przez where (w niektórych bazach danych przez with check ) aby były updatable - kolumna z tabeli 1:1 na kolumnę w view aby można było robić insert w view muszą być wszystkie pola not null z tabeli with check option - aby spowodować kontrolę danych przy insert i update (czy po zmianie dane będą zgodne z definicją perspektywy) G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

45 Przydatne funkcje bazodanowe Ograniczenie danych widzianych przez użytkownika Firebird mogą być proste albo przez trigger dodanie triggera do view blokuje automatyczny zapis do tabeli trzeba wykonać w triggerze odpowiednią komendę SQL, PosgreSQL simple view is automatically updatable, view + rule (create rule "_insert" as on insert to uzytk_v do instead... ). Oracle simple view is automatically updatable, CREATE OR REPLACE TRIGGER order_info_insert INSTEAD OF INSERT ON order_info Uprawnienia: wystarczy nadać uprawnienia dla view inaczej byłoby to bez sensu bo user i tak miałby bezpośredni dostęp do danych więc ograniczenie byłoby niepotrzebne. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

46 Przydatne funkcje bazodanowe Ograniczenie danych widzianych przez użytkownika Do czego można zastosować: dane osobowe przechowywane w jednej tabeli, ale różne grupy użytkowników mogą widzieć tylko dane dla swoje grupy: student, pracownik, kandydat itp... do podziału danych na jednostki (w strukturze hierarchicznej) przy wykorzystaniu wyzwalaczy - można robić np. insert do jednej perspektywy z podziałem danych na dwie tabele. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

47 Przydatne funkcje bazodanowe Wyzwalacze - kontrola poprawności danych Wyzwalacze pozwalają na wygenerowanie zdefiniowanego przez użytkownika błędu (innego niż standardowe błędy SQL). Możemy np. sprawdzić czy sala w danym terminie jest zajęta i przy próbie wpisania jeszcze jednej rezerwacji wygenerować odpowiedni błąd. Oczywiście wszystkie wymienione konstrukcje można stosować także procedurach. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

48 Przydatne funkcje bazodanowe Wyzwalacze - kontrola poprawności danych Firebird tworzymy wyjątek: create exception nazwa tekst wywołujemy: exception nazwa lub wywołujemy : exception nazwa custom msg PostgreSQL raise exception tekst ; Oracle Raise_Application_Error(numer, tekst ), numer = G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

49 Przydatne funkcje bazodanowe Funkcje (procedury) zwracające zestawy rekordów Funkcje (procedury) zwracające zestawy rekordów mogą okazać się pomocne w sytuacjach, kiedy normalne (za pomocą komendy SELECT) pobranie danych z bazy jest niemożliwe lub wymaga zbudowania skomplikowanego zapytania. Za pomocą takich funkcji możemy np. z podanego kodu XML pobrać w postaci zestawu rekordów dane o ustalonej strukturze. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

50 Przydatne funkcje bazodanowe Funkcje (procedury) zwracające zestawy rekordów Firebird CREATE OR ALTER PROCEDURE pl_enum (parametry wejściowe) returns (pola+typy) as begin... przypisanie wartości do zmiennych suspend;... end Wywołanie Jak normalną tabelę tylko, że z parametrami: SELECT... FROM pl_enum(...); G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

51 Przydatne funkcje bazodanowe Funkcje (procedury) zwracające zestawy rekordów PosgteSQL CREATE OR REPLACE FUNCTION funkca1(parametry) RETURNS SETOF record AS $BODY$ DECLARE rr record; begin for rr in select... loop return next rr; end loop; return ; end; $BODY$ LANGUAGE plpgsql VOLATILE SECURITY DEFINER; G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

52 Przydatne funkcje bazodanowe Funkcje (procedury) zwracające zestawy rekordów Wywołanie Przy wywołaniu trzeba podać nazwy i typy kolumn: select... from pl_jednostki_tablicy( sala_vd ) as (id_jedn d_ G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

53 Przydatne funkcje bazodanowe Funkcje (procedury) zwracające zestawy rekordów Oracle Najpierw typ zwracanego rekordu: CREATE OR REPLACE TYPE ret_id AS OBJECT ( id integer ); Potem zbiór rekordów: CREATE OR REPLACE TYPE ret_id_set; G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

54 Przydatne funkcje bazodanowe Funkcje (procedury) zwracające zestawy rekordów Funkcja: CREATE OR REPLACE FUNCTION get_id_list(pstr IN varchar2) RETURN ret_id_set PIPELINED IS ret ret_id := ret_id(0); BEGIN... PIPE ROW(ret);... RETURN ; END; Wywołanie SELECT id FROM TABLE(get_id_list(pR_IDs)) G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

55 Przydatne funkcje bazodanowe Temporary tables Temporary tables Postgresql Tabele tymczasowe są tworzone tylko na czas sesji - po zakończeniu sesji tablica jest kasowana. Po commit tabela może być nienaruszona, można skasować jej zawartość lub usunąć całkowicie. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

56 Przydatne funkcje bazodanowe Temporary tables Firebird Globalna ma zdefiniowane na stałe metadane (nie trzeba jej tworzyć za każdym razem), ale zawartość jest kasowana po zakończeniu transakcji lub połączenia (w zależności od tego jak jest zdefiniowana). CREATE GLOBAL TEMPORARY TABLE... [ON COMMIT <DELETE PRESERVE> ROWS] Oracle Analogicznie hak Firebird G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

57 Przydatne funkcje bazodanowe Tablice nadmiarowe Tablice nadmiarowe Przechowują dane, które mogą być obliczone na podstawie innych danych, ale ich bezpośrednie obliczanie w trakcie działania aplikacji mocno obciąża bazę danych. Dlatego są one budowane w trakcie działania aplikacji: aktualizacja następuje okresowo (job), aktualizacja następuje po zmianie określonej wartości (np. nazwiska osoby). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

58 Przydatne funkcje bazodanowe SELECT z wyniku innego SELECT a select..... from (select ) grupowanie wcześniej pogrupowanych wartości (np. średnia z sumy) użycie wyliczonych wartości w kilku innych wyrażeniach G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

59 Przydatne funkcje bazodanowe Metody dostępu do bazy danych z poziomu aplikacji Metody dostępu do bazy danych z poziomu aplikacji A. użytkownik aplikacji jest jednocześnie użytkownikiem bazy danych (DBUSER) B. aplikacja ma własny system użytkowników (APPUSER) G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

60 Przydatne funkcje bazodanowe Metody dostępu do bazy danych z poziomu aplikacji Zalety i wady DBUSER konta APPUSER: + użytkownik może samodzielnie pobierać dane w celu stworzenia np. jednorazowych raportów (chociażby do Excela) + jednostki (użytkownicy) mogą samodzielnie wykonywać na swoje potrzeby oddzielne, potrzebne tylko im moduły +/- projektując aplikację z DBUSER trzeba całą logikę zawrzeć w bazie danych (przynajmniej jeżeli chodzi o kontrolę uprawnień i integralność danych) - nieświadomy użytkownik może obciążyć bazę niezoptymalizowanymi zapytaniami - komendy SQL (UPDATE, DELETE) nie pytają o potwierdzenie modyfikacji danych można zmodyfikować dużą ilość danych (np. budując nieprawidłowy warunek WHERE) G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

61 Przydatne funkcje bazodanowe Metody dostępu do bazy danych z poziomu aplikacji Zalety i wady APPUSER konta DBUSER: + użytkownik może wykonywać tylko operacje dopuszczone przez projektanta aplikacji + część logiki można zawrzeć w aplikacji - nie ma możliwości bezpośredniego dostępu do danych, więc nietypowe raporty i zestawienia musi wykonywać administrator - mimo wszystko użytkownik, żeby połączyć się z bazą danych musi przesłać do niej dane logowania (DBUSER) gdzieś to trzeba zapisać (czyli istnieje możliwość złamania zabezpieczenia) + w przypadku aplikacji webowych (zwłaszcza na serwerach zewnętrznych) nie ma możliwości zbudowania systemu userów bazodanowych, więc zostaje tylko opcja z APPUSER G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

62 Przydatne fragmenty modeli bazodanowych System zarządzania użytkownikami W tej części przedstawimy przydatne rozwiązania, które można wykorzystać we własnych modelach baz danych. Pierwszym z nich będzie model zarządzania użytkownikami systemu opartego o bazę danych - model ten można wykorzystać zarówno w systemach gdzie użytkownik aplikacji jest jednocześnie użytkownikiem bazodanowym, jak i w systemach gdzie obie te grupy są rozdzielone. Model załączony jest w oddzielnym pliku (model_1.jpg). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

63 Przydatne fragmenty modeli bazodanowych System zarządzania użytkownikami Użyte typy danych (domeny): d_ids, d_ref, d_ref_null oparte na typie bigint domeny służące w do tworzenia referencji (kluczy głównych i obcych, ostatia dopuszcza wartości puste), d_sys_name domena tekstowa (30 znaków) która służy do zapisywania w tabelach nazw obiektów bazodanowych, z kontrolą czy dana nazwaz może być identyfikatorem, d_nazwa, d_nazwa_krotka, d_opis typy tekstowa o określonej z góry długości, d_calkowita wartość całkowita, d_logiczna wartość logiczna (TRUE/FALSE lub 0/1 w zależności od tego co oferuje silnik danej bazy). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

64 Przydatne fragmenty modeli bazodanowych System zarządzania użytkownikami Jednostki Przyjęto, że w modelu występuje hierarchiczny model podziału jednostek; każda jednostka może mieć tylko jedną jednostkę nadrzędną, i tylko jedna jednostka może być na szczycie hierarchii (jest tylko jedna jednostka bez jednostki nadrzędnej). Zawsze występuje przynajmniej jedna jednostka (root), której nie można usunąć z systemu (można tylko zmienić jej opis). Ważne: tablice opisane w modelu powinny odzwierciedlać bieżący stan w organizacji - jeżeli z jakichś względów potrzebne jest np. zachowanie historii zmian w strukturze, to powinniśmy zrobić to za pomocą oddzielnych tablic. Ponieważ nie wszystkie silniki bazodanowe oferują wbudowaną obsługę struktur hierarchicznych, dodatkowo stworzono tablicę jedn_zalezn która zawiera wszystkie pary jednostka-nadrzędna jednostka-podrzędna (zarówno zależność bezpośrednia jak i zależność pośrednia). Ze względów praktycznych przyjęto, że w tablicy tej występują też wszystkie pary jednostka jednostka. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

65 Przydatne fragmenty modeli bazodanowych System zarządzania użytkownikami Zabezpieczenia: nie można usunąć jednostki ze szczytu hierarchii (root), po utworzeniu jednostki dodajemy zależności: jednostka jednostka oraz pary jednostka jednostka nadrzędna przy zmianie jednostki nadrzędnej (przeniesienie jednostki w strukturze) kasujemy wpisy o zależnościach i tworzymy nowe, kontrola czy nie powstają cykle nie można modyfikować rekordów w tablicy z zależnościami (tylko INSERT I DELETE), G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

66 Przydatne fragmenty modeli bazodanowych System zarządzania użytkownikami Poziomy uprawnień Opisują do jakich obiektów bazodanowych użytkownik ma dostęp w przypadku modelu APPUSR=DBUSER, odpowiadają one rolom. Oznacza to, że modyfikując dane opisujące poziom uprawnień modyfikujemy też role bazodanowe (wymaga to odpowiednich uprawnień administracyjnych na poziomie bazy danych, nie można też wtedy zmienić nazwy poziomu, ponieważ bazy zazwyczaj nie dopuszczają zmian nazwy roli). Obiekty bazodanowe, do których dostęp chcemy kontrolować, zebrane są w tablicy obiekt, wraz z podanym typem obiektu (tablica, perspektywa i procedura/funkcja). Ważną grupę stanowią obiekty, w których dane będą dzielone ze względu na jednostki są to perspektywy pobierające dane z tablic bazowych; jeżeli umożliwiają one modyfikowanie danych to traktujemy jej jak tablice (tablice dzielone), w przeciwnym wypadku jak właściwe perspektywy (tylko odczyt). Typy obiektów są ustalone (typ_obiektu - tablicy tej nie można modyfikować w żaden sposób (read-only), podobnie zresztą jak tablicy z rodzajami uprawnień (upraw). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

67 Przydatne fragmenty modeli bazodanowych System zarządzania użytkownikami Tablica typ_obiektu_upraw opisuje jakie uprawnienia można nadawać obiektom danego typu. Dodatkowo występuje tablica obiekt_wyklucz_upraw, która dla danego obiektu pozwala wyłączyć kontrolę konkretnego uprawnienia. Tablica poziom_obiekt pozwala nadać uprawnienia do obiektu dla określonego poziomu uprawnień (UWAGA: w sytuacji, gdy APPUSER=DBUSER powoduje to nadanie/odebranie uprawnień dla określonej roli). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

68 Przydatne fragmenty modeli bazodanowych System zarządzania użytkownikami Użytkownicy Dane o użytkownikach zebrane są w tablicy uzytk. Należy pamiętać, że w modelu APPUSER = DBUSER, dane te przekładają się na użytkowników bazodanowych, co pociąga za sobą konieczność dbania o odpowiednie konstruowanie nazw, a także dopilnowanie, żeby użytkownik dokonujący zmian miał odpowiednie uprawnienia (podobnie jak przy poziomach uprawnień). Każdy użytkownik może być powiązany z różnymi poziomami uprawnień, z których wynikają jego uprawnienia, ale może mieć też nadane dodatkowe indywidualne uprawnienia dla wybranych obiektów (tablica uzytk_obiekt). Aby uprościć sprawdzanie uprawnień, należy utworzyć perspektywę (np. efektywne_uprawnienia, w której będą zebrane wszystkie uprawnienia użytkownika (te wynikające z poziomów uprawnień oraz te nadane indywidualnie). W przypadku rozbudowanych systemów z dużą ilością uprawnień można rozważyć stworzenie materialized view lub nawet tablicy, w której dane będą aktualizowane na życzenie lub w określonych odstępach czasowych (np. w nocy). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

69 Przydatne fragmenty modeli bazodanowych System zarządzania użytkownikami Podziały danych W strukturze hierarchicznej występuje nie tylko podział uprawnień do operowania na wybranych danych. Dane te należy podzielić także ze względu na miejsce w strukturze organizacyjnej. Np. dziekanat konkretnego wydziału uczelni widzi tylko dane swoich studentów. Oczywiście nie należy tworzyć oddzielnych tablic dla każdego dziekanatu, tylko podzielić dane istniejące w konkretnej tablicy za pomocą perspektywy lub perspektyw; najlepsza opcją jest zastosowanie jednej perspektywy, która będzie zwierała dane widoczne przez jednego użytkownika (w przypadku konieczności zmian dokonujemy ich w jednym miejscu). G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

70 Przydatne fragmenty modeli bazodanowych System zarządzania użytkownikami Podziały danych Po pierwsze musimy określić w jaki sposób będą dzielone dane dla poszczególnych podziałów: tablica podzial i tablica podzial_jedn. Druga z tych tablic opisuje jakie jednostki wchodzą w skład danego poziomu; ważne jest pole czy_podrzedne - mówi nam ono, że oprócz danej jednostki do poziomu wchodzą wszystkie jednostki podrzędne danej jednostki - dzięki temu, po dodaniu jednostki nie musimy się przejmować dodaniem jej do odpowiednich poziomów. Użytkownik jest zawsze przypisany do jednego podziału danych. G. Arkit (WMIiE) Modelowanie bazodanowe (W) 15 grudnia / 77

Wykład I. Wprowadzenie do baz danych

Wykład I. Wprowadzenie do baz danych Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles

Bardziej szczegółowo

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu: http://aragorn.pb.bialystok.pl/~gkret

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu: http://aragorn.pb.bialystok.pl/~gkret Ogólny plan przedmiotu BAZY DANYCH Wykład 1: Wprowadzenie do baz danych Małgorzata Krętowska Politechnika Białostocka Wydział Informatyki Wykład : Wprowadzenie do baz danych Normalizacja Diagramy związków

Bardziej szczegółowo

Wstęp wprowadzający do laboratorium 2. mgr inż. Rafał Grycuk

Wstęp wprowadzający do laboratorium 2. mgr inż. Rafał Grycuk Wstęp wprowadzający do laboratorium 2 mgr inż. Rafał Grycuk Plan prezentacji 1. Czym jest T-SQL i czym się różni od standardu SQL 2. Typy zapytań 3. Zapytanie typu SELECT 4. Słowo o indeksach T-SQL (1)

Bardziej szczegółowo

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko Podstawowe pojęcia dotyczące relacyjnych baz danych mgr inż. Krzysztof Szałajko Czym jest baza danych? Co rozumiemy przez dane? Czym jest system zarządzania bazą danych? 2 / 25 Baza danych Baza danych

Bardziej szczegółowo

Bazy 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 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ółowo

Projektowanie systemów baz danych

Projektowanie systemów baz danych Projektowanie systemów baz danych Seweryn Dobrzelewski 4. Projektowanie DBMS 1 SQL SQL (ang. Structured Query Language) Język SQL jest strukturalnym językiem zapewniającym możliwość wydawania poleceń do

Bardziej szczegółowo

2010-11-22 PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH

2010-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ółowo

P o d s t a w y j ę z y k a S Q L

P o d s t a w y j ę z y k a S Q L P o d s t a w y j ę z y k a S Q L Adam Cakudis IFP UAM Użytkownicy System informatyczny Aplikacja Aplikacja Aplikacja System bazy danych System zarządzania baz ą danych Schemat Baza danych K o n c e p

Bardziej szczegółowo

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

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ść

Bardziej szczegółowo

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 Bazy Danych LITERATURA C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 J. D. Ullman, Systemy baz danych, WNT - W-wa, 1998 J. D. Ullman, J. Widom, Podstawowy

Bardziej szczegółowo

DECLARE VARIABLE zmienna1 typ danych; BEGIN

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.;

Bardziej szczegółowo

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych Plan wykładu Bazy danych Wykład 9: Przechodzenie od diagramów E/R do modelu relacyjnego. Definiowanie perspektyw. Diagramy E/R - powtórzenie Relacyjne bazy danych Od diagramów E/R do relacji SQL - perspektywy

Bardziej szczegółowo

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d. TECHNOLOGIE BAZ DANYCH WYKŁAD 1 Wprowadzenie do baz danych. Normalizacja. (Wybrane materiały) Dr inż. E. Busłowska Definicja bazy danych Uporządkowany zbiór informacji, posiadający własną strukturę i wartość.

Bardziej szczegółowo

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

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

Bardziej szczegółowo

Przestrzenne bazy danych Podstawy języka SQL

Przestrzenne bazy danych Podstawy języka SQL Przestrzenne bazy danych Podstawy języka SQL Stanisława Porzycka-Strzelczyk porzycka@agh.edu.pl home.agh.edu.pl/~porzycka Konsultacje: wtorek godzina 16-17, p. 350 A (budynek A0) 1 SQL Język SQL (ang.structured

Bardziej szczegółowo

Oracle11g: Wprowadzenie do SQL

Oracle11g: 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ółowo

Podstawowe informacje o bazach danych. Technologie Informacyjne

Podstawowe informacje o bazach danych. Technologie Informacyjne Podstawowe informacje o bazach danych Technologie Informacyjne dr inż. Michna Michał, Politechnika Gdańska 2010/2011 Przykłady systemów baz danych Książka telefoniczna, książka kucharska Zarządzanie magazynem/hurtownią

Bardziej szczegółowo

Bazy danych 2. Wykład 1

Bazy danych 2. Wykład 1 Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu

Bardziej szczegółowo

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 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ółowo

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 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ółowo

Program wykładu. zastosowanie w aplikacjach i PL/SQL;

Program wykładu. zastosowanie w aplikacjach i PL/SQL; Program wykładu 1 Model relacyjny (10 godz.): podstawowe pojęcia, języki zapytań (algebra relacji, relacyjny rachunek krotek, relacyjny rachunek dziedzin), zależności funkcyjne i postaci normalne (BCNF,

Bardziej szczegółowo

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38

Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38 Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem zajęcia 1 dr Jakub Boratyński pok. A38 Program zajęć Bazy danych jako podstawowy element systemów informatycznych wykorzystywanych

Bardziej szczegółowo

Baza danych. Modele danych

Baza danych. Modele danych Rola baz danych Systemy informatyczne stosowane w obsłudze działalności gospodarczej pełnią funkcję polegającą na gromadzeniu i przetwarzaniu danych. Typowe operacje wykonywane na danych w systemach ewidencyjno-sprawozdawczych

Bardziej szczegółowo

Bazy danych - wykład wstępny

Bazy danych - wykład wstępny Bazy danych - wykład wstępny Wykład: baza danych, modele, hierarchiczny, sieciowy, relacyjny, obiektowy, schemat logiczny, tabela, kwerenda, SQL, rekord, krotka, pole, atrybut, klucz podstawowy, relacja,

Bardziej szczegółowo

Oracle PL/SQL. Paweł Rajba. pawel@ii.uni.wroc.pl http://www.kursy24.eu/

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

Bardziej szczegółowo

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów SQL3 wprowadza następujące kolekcje: zbiory ( SETS ) - zestaw elementów bez powtórzeń, kolejność nieistotna listy ( LISTS ) - zestaw

Bardziej szczegółowo

Wprowadzenie do projektowania i wykorzystania baz danych Relacje

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

Bardziej szczegółowo

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych

Bazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych Plan wykładu Bazy danych Cechy rozproszonej bazy danych Implementacja rozproszonej bazy Wykład 15: Rozproszone bazy danych Małgorzata Krętowska, Agnieszka Oniśko Wydział Informatyki PB Bazy danych (studia

Bardziej szczegółowo

Baza danych. Baza danych to:

Baza danych. Baza danych to: Baza danych Baza danych to: zbiór danych o określonej strukturze, zapisany na zewnętrznym nośniku (najczęściej dysku twardym komputera), mogący zaspokoić potrzeby wielu użytkowników korzystających z niego

Bardziej szczegółowo

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X

INTERNETOWE 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ółowo

Systemy GIS Tworzenie zapytań w bazach danych

Systemy 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ółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Bazy danych Database Kierunek: Rodzaj przedmiotu: obieralny Rodzaj zajęć: wykład, laboratorium Matematyka Poziom kwalifikacji: I stopnia Liczba godzin/tydzień: 2W, 2L Semestr: III Liczba

Bardziej szczegółowo

SQL 4 Structured Query Lenguage

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]...

Bardziej szczegółowo

BAZY DANYCH wprowadzenie. Opracował: dr inż. Piotr Suchomski

BAZY DANYCH wprowadzenie. Opracował: dr inż. Piotr Suchomski BAZY DANYCH wprowadzenie Opracował: dr inż. Piotr Suchomski Prowadzący Katedra Systemów Multimedialnych dr inż. Piotr Suchomski (e-mail: pietka@sound.eti.pg.gda.pl) (pok. 730) dr inż. Andrzej Leśnicki

Bardziej szczegółowo

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni Akademia Morska w Gdyni Gdynia 2004 1. Podstawowe definicje Baza danych to uporządkowany zbiór danych umożliwiający łatwe przeszukiwanie i aktualizację. System zarządzania bazą danych (DBMS) to oprogramowanie

Bardziej szczegółowo

Bazy danych. Dr inż. Paweł Kasprowski

Bazy danych. Dr inż. Paweł Kasprowski Plan wykładu Bazy danych Podstawy relacyjnego modelu danych Dr inż. Paweł Kasprowski pawel@kasprowski.pl Relacyjne bazy danych Język SQL Zapytania SQL (polecenie select) Bezpieczeństwo danych Integralność

Bardziej szczegółowo

SZKOLENIE: Administrator baz danych. Cel szkolenia

SZKOLENIE: Administrator baz danych. Cel szkolenia SZKOLENIE: Administrator baz danych. Cel szkolenia Kurs Administrator baz danych skierowany jest przede wszystkim do osób zamierzających rozwijać umiejętności w zakresie administrowania bazami danych.

Bardziej szczegółowo

ORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko. Typy rozproszonych baz danych. Systemy klient-serwer. Klient-serwer: Przykład

ORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko. Typy rozproszonych baz danych. Systemy klient-serwer. Klient-serwer: Przykład ORACLE (Wykład 1) aragorn.pb.bialystok.pl/~aonisko Typy rozproszonych baz Systemy typu klient-serwer (jeden serwer) Jednorodna rozproszona baza (kilka serwerow, jeden system zarzadzania baza ) Niejednorodna

Bardziej szczegółowo

Język SQL, zajęcia nr 1

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

Bardziej szczegółowo

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika

LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika LK1: Wprowadzenie do MS Access Zakładanie bazy danych i tworzenie interfejsu użytkownika Prowadzący: Dr inż. Jacek Habel Instytut Technologii Maszyn i Automatyzacji Produkcji Zakład Projektowania Procesów

Bardziej szczegółowo

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Systemy baz danych w zarządzaniu przedsiębiorstwem W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Proces zarządzania danymi Zarządzanie danymi obejmuje czynności: gromadzenie

Bardziej szczegółowo

15. Funkcje i procedury składowane PL/SQL

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

Bardziej szczegółowo

Uprawnienia, role, synonimy

Uprawnienia, 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ółowo

Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych. Paweł Paduch paduch@tu.kielce.pl

Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych. Paweł Paduch paduch@tu.kielce.pl Inżynieria Programowania Laboratorium 3 Projektowanie i implementacja bazy danych Paweł Paduch paduch@tu.kielce.pl 06-04-2013 Rozdział 1 Wstęp Na dzisiejszych zajęciach zajmiemy się projektem bazy danych.

Bardziej szczegółowo

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI

Bazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI Bazy danych Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI Wszechnica Poranna Trzy tematy: 1. Bazy danych - jak je ugryźć? 2. Język SQL podstawy zapytań. 3. Mechanizmy wewnętrzne baz danych czyli co

Bardziej szczegółowo

Plan bazy: Kod zakładający bazę danych: DROP TABLE noclegi CASCADE; CREATE TABLE noclegi( id_noclegu SERIAL NOT 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

Bardziej szczegółowo

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota

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)

Bardziej szczegółowo

Alicja Marszałek Różne rodzaje baz danych

Alicja Marszałek Różne rodzaje baz danych Alicja Marszałek Różne rodzaje baz danych Rodzaje baz danych Bazy danych można podzielić wg struktur organizacji danych, których używają. Można podzielić je na: Bazy proste Bazy złożone Bazy proste Bazy

Bardziej szczegółowo

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

Modelowanie hierarchicznych struktur w relacyjnych bazach danych Modelowanie hierarchicznych struktur w relacyjnych bazach danych Wiktor Warmus (wiktorwarmus@gmail.com) Kamil Witecki (kamil@witecki.net.pl) 5 maja 2010 Motywacje Teoria relacyjnych baz danych Do czego

Bardziej szczegółowo

Zaawansowane bazy danych i hurtownie danych semestr I

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

Bardziej szczegółowo

w PL/SQL bloki nazwane to: funkcje, procedury, pakiety, wyzwalacze

w 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ółowo

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym konceptualnym modelem danych jest tzw. model związków encji (ERM

Bardziej szczegółowo

Cele. Definiowanie wyzwalaczy

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

Bardziej szczegółowo

Wykład 3 2014-04-25 12:45 BD-1 W_3

Wykład 3 2014-04-25 12:45 BD-1 W_3 Wykład 3 SQL - język operacji na bazach danych Schemat przykładowej bazy danych Uczelnia Skrypt SQL - utworzenie bazy Uczelnia Polecenia selekcji i projekcji Interakcyjny dostęp do bazy danych 2014-04-25

Bardziej szczegółowo

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 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ę

Bardziej szczegółowo

Wprowadzenie do baz danych

Wprowadzenie do baz danych Wprowadzenie do baz danych Bazy danych stanowią obecnie jedno z ważniejszych zastosowań komputerów. Podstawowe zalety komputerowej bazy to przede wszystkim szybkość przetwarzania danych, ilość dostępnych

Bardziej szczegółowo

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

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

Bardziej szczegółowo

Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze

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

Bardziej szczegółowo

PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NOWYM SĄCZU SYLABUS PRZEDMIOTU. Obowiązuje od roku akademickiego: 2011/2012

PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NOWYM SĄCZU SYLABUS PRZEDMIOTU. Obowiązuje od roku akademickiego: 2011/2012 PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NOWYM SĄCZU SYLABUS Obowiązuje od roku akademickiego: 2011/2012 Instytut Techniczny Kierunek studiów: Informatyka Kod kierunku: 11.3 Specjalność: Informatyka Stosowana

Bardziej szczegółowo

BAZA DANYCH SIECI HOTELI

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

Bardziej szczegółowo

WPROWADZENIE DO BAZ DANYCH

WPROWADZENIE DO BAZ DANYCH 1 Technologie informacyjne WYKŁAD IV WPROWADZENIE DO BAZ DANYCH MAIL: WWW: a.dudek@pwr.edu.pl http://wgrit.ae.jgora.pl/ad Bazy danych 2 Baza danych to zbiór danych o określonej strukturze. zapisany na

Bardziej szczegółowo

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych SQL SQL (ang. Structured Query Language): strukturalny język zapytań używany do tworzenia strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych

Bardziej szczegółowo

UPDATE Studenci SET Rok = Rok + 1 WHERE Rodzaj_studiow =' INŻ_ST'; UPDATE Studenci SET Rok = Rok 1 WHERE Nr_albumu IN ( '111345','100678');

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}, {

Bardziej szczegółowo

Pawel@Kasprowski.pl Bazy danych. Bazy danych. Zapytania SELECT. Dr inż. Paweł Kasprowski. pawel@kasprowski.pl

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

Bardziej szczegółowo

Tworzenie raportów XML Publisher przy użyciu Data Templates

Tworzenie raportów XML Publisher przy użyciu Data Templates Tworzenie raportów XML Publisher przy użyciu Data Templates Wykorzystanie Szablonów Danych (ang. Data templates) jest to jedna z metod tworzenia raportów w technologii XML Publisher bez użycia narzędzia

Bardziej szczegółowo

Wykład V. Indeksy. Struktura indeksu składa się z rekordów o dwóch polach

Wykł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ółowo

z przedmiotu: Techniki Informatyczne Stanisław Flaga (stanislaw.flaga@agh.edu.pl)

z przedmiotu: Techniki Informatyczne Stanisław Flaga (stanislaw.flaga@agh.edu.pl) mysql relacyjna baza danych wstęp Materiały pomocnicze do laboratorium z przedmiotu: Techniki Informatyczne Stanisław Flaga () Wydział Inżynierii Mechanicznej i Robotyki Katedra Automatyzacji Procesów

Bardziej szczegółowo

Ref. 7 - Język SQL - polecenia DDL i DML

Ref. 7 - Język SQL - polecenia DDL i DML Ref. 7 - Język SQL - polecenia DDL i DML Wprowadzenie do języka SQL. Polecenia generujące strukturę bazy danych: CREATE, ALTER i DROP. Polecenia: wprowadzające dane do bazy - INSERT, modyfikujące zawartość

Bardziej szczegółowo

Technologia informacyjna

Technologia informacyjna Technologia informacyjna Pracownia nr 9 (studia stacjonarne) - 05.12.2008 - Rok akademicki 2008/2009 2/16 Bazy danych - Plan zajęć Podstawowe pojęcia: baza danych, system zarządzania bazą danych tabela,

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy w ramach treści kierunkowych, moduł kierunkowy ogólny Rodzaj zajęć: wykład, laboratorium BAZY DANYCH Databases Forma studiów: Stacjonarne

Bardziej szczegółowo

Systemowe aspekty baz

Systemowe aspekty baz Systemowe aspekty baz danych Deklaracja zmiennej Zmienne mogą być wejściowe i wyjściowe Zmienne w T-SQL można deklarować za pomocą @: declare @nazwisko varchar(20) Zapytanie z użyciem zmiennej: select

Bardziej szczegółowo

QUERY język zapytań do tworzenia raportów w AS/400

QUERY język zapytań do tworzenia raportów w AS/400 QUERY język zapytań do tworzenia raportów w AS/400 Dariusz Bober Katedra Informatyki Politechniki Lubelskiej Streszczenie: W artykule przedstawiony został język QUERY, standardowe narzędzie pracy administratora

Bardziej szczegółowo

Paweł Rajba pawel@ii.uni.wroc.pl http://www.itcourses.eu/

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,

Bardziej szczegółowo

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS UNIWERSYTET ZIELONOGÓRSKI INSTYTUT INFORMATYKI I ELEKTROTECHNIKI ZAKŁAD INŻYNIERII KOMPUTEROWEJ Przygotowali: mgr inż. Arkadiusz Bukowiec mgr inż. Remigiusz Wiśniewski LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

Bardziej szczegółowo

System zarządzania bazą danych SZBD (ang. DBMS -Database Management System)

System zarządzania bazą danych SZBD (ang. DBMS -Database Management System) Podstawowe pojęcia Baza danych Baza danych jest logicznie spójnym zbiorem danych posiadających określone znaczenie. Precyzyjniej będzie jednak powiedzieć, Ŝe baza danych jest informatycznym odwzorowaniem

Bardziej szczegółowo

Administracja i programowanie pod Microsoft SQL Server 2000

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''

Bardziej szczegółowo

Administracja bazami danych

Administracja bazami danych Administracja bazami danych dr inż. Grzegorz Michalski Na podstawie wykładów dra inż. Juliusza Mikody Klient tekstowy mysql Program mysql jest prostym programem uruchamianym w konsoli shell do obsługi

Bardziej szczegółowo

Zarządzanie kontami użytkowników w i uprawnieniami

Zarządzanie kontami użytkowników w i uprawnieniami 106 Plan prezentacji 107 Zarządzanie kontami użytkowników w i uprawnieniami Schematy a użytkownicy Tworzenie użytkowników, uwierzytelnianie Przywileje systemowe i obiektowe, role Profile kontrola wykorzystania

Bardziej szczegółowo

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

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

Bardziej szczegółowo

Gerard Frankowski, Zespół Bezpieczeństwa PCSS. Nowoczesne technologie bliżej nas Poznań, 04.03.2010

Gerard Frankowski, Zespół Bezpieczeństwa PCSS. Nowoczesne technologie bliżej nas Poznań, 04.03.2010 Bezpieczeństwo interoperacyjnego hostingu Gerard Frankowski, Zespół Bezpieczeństwa PCSS 4. Konferencja MIC Nowoczesne technologie bliżej nas Poznań, 04.03.2010 1 Agenda Wprowadzenie Zespół Bezpieczeństwa

Bardziej szczegółowo

DECLARE typ [( )] [ NOT NULL ] [ { := DEFAULT } ];

DECLARE <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ółowo

PODSTAWOWE POJĘCIA BAZ DANYCH

PODSTAWOWE POJĘCIA BAZ DANYCH Baza danych (data base) - uporządkowany zbiór danych o określonej strukturze, przechowywany na nośniku informacji w komputerze. System bazy danych można zdefiniować jako bazę danych wraz z oprogramowaniem

Bardziej szczegółowo

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Ć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ółowo

Zbiór pytań nr 5. 2 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu

Zbiór pytań nr 5. 2 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu Zbiór pytań nr 5 1 Które stwierdzenie opisuje najlepiej zbiór uprawnień dostępny po wykonaniu connect athos/musketeer grant select,insert,update,delete on athos.services to porthos with grant option; grant

Bardziej szczegółowo

Oracle11g: Programowanie w PL/SQL

Oracle11g: 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ółowo

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL 1 Podstawy relacyjnego modelu danych. 3h UWAGA: Temat zajęć jest typowo teoretyczny i stanowi wprowadzenie do zagadnień

Bardziej szczegółowo

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl Bazy Danych Bazy Danych i SQL Podstawowe informacje o bazach danych Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl Literatura i inne pomoce Silberschatz A., Korth H., S. Sudarshan: Database

Bardziej szczegółowo

Wykład IV Modelowanie danych, projektowanie systemu informatycznego Modelowanie konceptualne implementacyjne Modelowanie pojęciowe na encjach

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

Bardziej szczegółowo

Chemoinformatyczne bazy danych - Wprowadzenie do technologii baz danych. Andrzej Bąk

Chemoinformatyczne bazy danych - Wprowadzenie do technologii baz danych. Andrzej Bąk Chemoinformatyczne bazy danych - Wprowadzenie do technologii baz danych Andrzej Bąk Wstęp Zarys Co to jest baza danych? Podstawy teorii baz danych Klasyfikacja baz danych Organizacja danych w relacyjnej

Bardziej szczegółowo

forma studiów: studia stacjonarne Liczba godzin/tydzień: 1, 0, 2, 0, 0

forma studiów: studia stacjonarne Liczba godzin/tydzień: 1, 0, 2, 0, 0 Nazwa przedmiotu: Relacyjne Bazy Danych Relational Databases Kierunek: Zarządzanie i Inżynieria Produkcji Kod przedmiotu: ZIP.GD5.03 Rodzaj przedmiotu: Przedmiot Specjalnościowy na kierunku ZIP dla specjalności

Bardziej szczegółowo

Bazy danych i usługi sieciowe

Bazy danych i usługi sieciowe Bazy danych i usługi sieciowe Wstęp do problematyki baz danych Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS w. I Jesień 2014 1 / 17 Plan wykładu 1 Bazy danych 1 Motywacja

Bardziej szczegółowo

Model semistrukturalny

Model semistrukturalny Model semistrukturalny standaryzacja danych z różnych źródeł realizacja złożonej struktury zależności, wielokrotne zagnieżdżania zobrazowane przez grafy skierowane model samoopisujący się wielkości i typy

Bardziej szczegółowo

I. Język manipulowania danymi - DML (Data Manipulation Language). Polecenia INSERT, UPDATE, DELETE

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

Bardziej szczegółowo

SQL w języku PL/SQL. 2) Instrukcje języka definicji danych DDL DROP, CREATE, ALTER, GRANT, REVOKE

SQL 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ółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 13 Marcin Młotkowski 27 maja 2015 Plan wykładu Trwałość obiektów 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 2 / 29 Trwałość (persistence) Definicja Cecha

Bardziej szczegółowo

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych Języki programowania wysokiego poziomu PHP cz.4. Bazy danych PHP i bazy danych PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł

Bardziej szczegółowo

Porównanie systemów zarządzania relacyjnymi bazami danych

Porównanie systemów zarządzania relacyjnymi bazami danych Jarosław Gołębiowski 12615 08-07-2013 Porównanie systemów zarządzania relacyjnymi bazami danych Podstawowa terminologia związana z tematem systemów zarządzania bazami danych Baza danych jest to zbiór danych

Bardziej szczegółowo