Model relacyjny bazy danych



Podobne dokumenty
1 Przygotował: mgr inż. Maciej Lasota

Wykład 2. Relacyjny model danych

PLAN WYKŁADU BAZY DANYCH MODEL DANYCH. Relacyjny model danych Struktury danych Operacje Integralność danych Algebra relacyjna HISTORIA

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

Model relacyjny. Wykład II

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

Wprowadzenie do baz danych

Posługiwanie się tabelami

Relacyjny model baz danych, model związków encji, normalizacje

Baza danych. Modele danych

Systemy baz danych. mgr inż. Sylwia Glińska

1 Wstęp do modelu relacyjnego

Transformacja modelu ER do modelu relacyjnego

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła

Bazy danych - wykład wstępny

Informatyka Ćwiczenie 10. Bazy danych. Strukturę bazy danych można określić w formie jak na rysunku 1. atrybuty

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA Relacyjny model danych. Relacyjny model danych Struktury danych Operacje Oganiczenia integralnościowe

WPROWADZENIE DO BAZ DANYCH

WPROWADZENIE DO BAZ DANYCH

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

Bazy danych. Algebra relacji

Uzupełnij pola tabeli zgodnie z przykładem poniżej,

Baza danych. Baza danych to:

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

Bazy Danych. Model Relacyjny. Krzysztof Regulski WIMiIP, KISiM, B5, pok. 408

Autor: Joanna Karwowska

Technologie baz danych

Co to są relacyjne bazy danych?

Plan wykładu: Relacyjny model danych: opis modelu, podstawowe pojęcia, ograniczenia, więzy.

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu:

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

1. Mapowanie diagramu klas na model relacyjny.

Normalizacja baz danych

- Przedmiot kończy się egzaminem - Egzamin ma formę testu teoretycznego

Model relacyjny. Wykład II

Bazy danych Wykład zerowy. P. F. Góra

Relacyjny model danych

Transformacja modelu ER do modelu relacyjnego

BAZY DANYCH Podstawowe pojęcia

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

Bazy danych. Plan wykładu. Zależności funkcyjne. Wykład 2: Relacyjny model danych - zależności funkcyjne. Podstawy SQL.

PROJEKT Z BAZ DANYCH

Laboratorium Technologii Informacyjnych. Projektowanie Baz Danych

Bazy danych TERMINOLOGIA

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

Pojęcie zależności funkcyjnej

Normalizacja relacji

TEMAT: BIBLIOTEKA. ETAP I Cel i główne funkcje aplikacji. Schemat opisowy PRZYKŁADOWY PROJEKT - BIBLIOTEKA. Autorzy:... Grupa:...

Relacyjne bazy danych

Teoretyczne podstawy informatyki

BAZY DANYCH. Co to jest baza danych. Przykłady baz danych. Z czego składa się baza danych. Rodzaje baz danych

BAZA DANYCH. Informatyka. ZESPÓŁ SZKÓŁ ELEKTRYCZNYCH Prowadzący: inż. Marek Genge

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1

Podstawowe informacje o bazach danych. Technologie Informacyjne

Księgarnia PWN: Michael J. Hernandez Bazy danych dla zwykłych śmiertelników

Etap 1 Projektowanie tabeli która będzie przechowywać informacje na temat książek.

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

Transformacja modelu pojęciowego. do logicznego

22. Podstawowe pojęcia baz danych. Baza Danych. Funkcje bazy danych. Właściwości bazy danych. Modele baz danych.

Teoretyczne podstawy informatyki

Podstawowe zagadnienia z zakresu baz danych

Relacyjny model danych

Technologia informacyjna

Technologie baz danych

2017/2018 WGGiOS AGH. LibreOffice Base

Baza danych "Biblioteka"

Związki pomiędzy tabelami

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU

Pierwsza postać normalna

Krzysztof Kadowski. PL-E3579, PL-EA0312,

2. Tabele w bazach danych

KaŜdemu atrybutowi A przyporządkowana jest dziedzina Dom(A), czyli zbiór dopuszczalnych wartości.

Normalizacja tabel POSTACIE NORMALNE TABEL

Zasady transformacji modelu DOZ do projektu tabel bazy danych

Karta (sylabus) modułu/przedmiotu Mechanika i Budowa Maszyn Studia I stopnia

PRZYKŁAD. Prosta uczelnia. Autor: Jan Kowalski nr indeksu: (przykładowy projekt)

Bazy danych. Dr inż. Paweł Kasprowski

SIECI KOMPUTEROWE I BAZY DANYCH

Model logiczny SZBD. Model fizyczny. Systemy klientserwer. Systemy rozproszone BD. No SQL

Bazy Danych. Modele danych. Krzysztof Regulski WIMiIP, KISiM,

Wykaz podręczników i literatury uzupełniającej technik informatyk na rok szkolny 2015/2016

Integralność danych Wersje języka SQL Klauzula SELECT i JOIN

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

Spis treści. 1 Modelowanie logiczne. Plan wykładu. 1 Modelowanie logiczne 1

Normalizacja. Pojęcie klucza. Cel normalizacji

Wykład II Encja, atrybuty, klucze Związki encji. Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J.

Język SQL Złączenia. Laboratorium. Akademia Morska w Gdyni

PRZEWODNIK PO PRZEDMIOCIE

Wprowadzenie do baz danych

Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski.

Bazy danych Karta pracy 1

BAZY DANYCH NORMALIZACJA BAZ DANYCH. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza

Projektowanie internetowej bazy danych część 1

PLAN WYKŁADU BAZY DANYCH ZALEŻNOŚCI FUNKCYJNE

Relacyjne bazy danych

BAZY DANYCH model relacyjny. Opracował: dr inż. Piotr Suchomski

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

Sylabus do programu kształcenia obowiązującego od roku akademickiego 2014/15

PRZEWODNIK PO PRZEDMIOCIE

Bazy Danych i Usługi Sieciowe

Transkrypt:

Bazy Danych Model relacyjny bazy danych Przygotował: mgr inż. Maciej Lasota

Bazy Danych 1 1) Model relacyjny bazy danych Relacyjny model bazy danych pojawił się po raz pierwszy w artykule naukowym Edgara Codda w 1970 roku. W terminologii matematycznej baza danych jest zbiorem relacji. Stąd historyczne pochodzenie nazwy relacyjny model danych i relacyjna baza danych. W matematyce definiuję się relację jako: podzbiór iloczynu kartezjańskiego zbirów wartości Reprezentacją relacji jest dwuwymiarowa tabela złożona z kolumn (atrybutów) i wierszy (krotek). W modelu relacyjnym przyjmuje się następujące założenia o tabeli: Liczba kolumn (atrybutów) jest z góry ustalona. Z każdą kolumną (atrybutem) jest związana jej nazwa oraz dziedzina, określająca zbiór wartości, jakie mogą występować w danej kolumnie. Na przecięciu wiersza i kolumny znajduje się pojedyncza (atomowa) wartość należąca do dziedziny kolumny. Wiersz (krotka) reprezentuje jeden rekord informacji. W modelu relacyjnym kolejność wierszy (krotek) może się zmieniać. Przykład : Dwuwymiarowa Tabela Imię Nazwisko Miasto Kod pocztowy Ulica Nr_m Maciej Lasota Kielce 12-123 Paderewskiego 35 Zosia Kowalska Radom 34-333 Sienkiewicza 3 Katarzyna Lipińska Kielce 12-123 Żeromskiego 21 Michał Pisarski Warszawa 25-431 Jagiellońska 1 Michał Nowak Warszawa 25-431 Żelazna 123 Anna Kowalska Kraków 34-555 Kielecka 2 2) Klucz relacji (klucz główny, pomocniczy, obcy) Dla każdej tabeli w modelu relacyjnym musi być określony jednoznaczny identyfikator, nazywany kluczem głównym (podstawowym). Klucz główny składa się z jednej lub ze zbioru kolumn (atrybutów), w których wartości w jednoznaczny sposób identyfikują cały wiersz (krotkę). Oznacza to, że wartości znajdujące się w kolumnie będącej kluczem głównym nie mogą się powtarzać i muszą być unikatowe.

Bazy Danych 2 Klucz pomocniczy (alternatywny) ma tę samą własność co klucz główny, przy czym klucz główny jest tylko jeden, kluczy pomocniczych w tabeli może być więcej niż jeden. Klucz obcy jest to zbiór złożony z jednej kolumny lub więcej kolumn, w których wartości występują jako wartości ustalonego klucza głównego lub jednoznacznego w tej samej lub innej tabeli i są interpretowane jako wskaźniki do wierszy w tej drugiej tabeli. Przykład : Klucz główny Nr Imię Nazwisko Miasto Kod pocztowy Ulica Nr_m 10 Maciej Lasota Kielce 12-123 Paderewskiego 35 11 Zosia Kowalska Radom 34-333 Sienkiewicza 3 12 Katarzyna Lipińska Kielce 12-123 Żeromskiego 21 13 Michał Pisarski Warszawa 25-431 Jagiellońska 1 14 Michał Nowak Warszawa 25-431 Żelazna 123 15 Anna Kowalska Kraków 34-555 Kielecka 2 Przykład : Klucz obcy Tabela A (Dane osobowe) Nr Imię Nazwisko Adres 10 Maciej Lasota 100 11 Zosia Kowalska 101 12 Katarzyna Lipińska 102 13 Michał Pisarski 103 14 Michał Nowak 104 15 Anna Kowalska 105 Tabela B ( Adresy) Nr Miasto Kod pocztowy Ulica Nr_m 100 1 12-123 Paderewskiego 35 101 2 34-333 Sienkiewicza 3 102 1 12-123 Żeromskiego 21 103 3 25-431 Jagiellońska 1 104 3 25-431 Żelazna 123 105 4 34-555 Kielecka 2 Tabela C (Miasta) Nr Miasto Kod pocztowy 1 Kielce 12-123 2 Radom 34-333 3 Warszawa 25-431 4 Kraków 34-555

Bazy Danych 3 3) Relacje między tabelami i więzy integralności W relacyjnej bazie danych relacje między tabelami pozwalają zapobiec występowaniu powtarzających (nadmiarowych) danych. Wyróżnia się trzy typy relacji między tabelami. 1. Jedne do Wielu (1 ) 2. Wiele do Wielu ( ) 3. Jeden do Jednego (1 1) Jeden do wielu Najbardziej powszechny typ relacji. W przypadku tego typu relacji wierszowi (krotce) w tabeli A może odpowiadać wiele zgodnych wierszy (krotek) w tabeli B, ale wierszowi w tabeli B może odpowiadać tylko jeden zgodny wiersz w tabeli A. Przykład : Tabela wydawnictwa, tytuły książek. Wydawnictwa publikują wiele tytułów książek, ale każdy tytuł ksiązki pochodzi od jednego wydawcy. Tabela A (Wydawnictwa) ID Nazwa wydawnictwa Miasto 1 WNT Warszawa 2 Helion Gliwice 3 PWN Warszawa 4 Oreilly Cambridge 5 Mikom Warszawa Tabela B( Tytuły książek) ID Tytuł ksiązki IDWydaw 1 Oracle Essentials, Fourth Edition 4 2 Oracle PL/SQL Language Pocket Reference, Fourth Edition 4 3 Algorytmy genetyczne. Kompendium. T. 1 5 4 Linux. Biblia. Edycja 2007 2 5 Photoshop CS3 PL. Ilustrowany przewodnik 2

Bazy Danych 4 Wiele do wielu W przypadku relacji wiele-do-wielu, wierszowi (krotce) w tabeli A może odpowiadać wiele zgodnych wierszy (krotek) w tabeli B i na odwrót. Relację taką tworzy się definiując trzecią tabelę, zwaną tabelą skrzyżowań, której klucz podstawowy zawiera zarówno klucz obcy z tabeli A, jak i z tabeli B. Przykład : Tabele autorzy i tytuły książek są powiązane relacją wiele-do-wielu, zdefiniowaną przez relację jeden-do-wielu między każdą z tych tabel a tabelą autortytuł. Klucz podstawowy tabeli autortytuł stanowi kombinację kolumny klucza podstawowego tabeli autorzy i kolumny klucza podstawowego tabeli tytuły książek. Tabela A (Autorzy) IDA Imię Nazwisko 1 Rick Greenwald 2 Robert Stackowiak 3 Jonathan Stern 4 Steven Feuerstein 5 Bill Pribyl 6 Chip Dawes 7 Christopher Negus 8 Anna Owczarz-Dadan 9 Tomasz Gwiazda Tabela B (Tytuły książek) IDT Tytuł ksiązki 1 Oracle Essentials, Fourth Edition 2 Oracle PL/SQL Language Pocket Reference, Fourth Edition 3 Algorytmy genetyczne. Kompendium. T. 1 4 Linux. Biblia. Edycja 2007 5 Photoshop CS3 PL. Ilustrowany przewodnik Tabela C (AutorTytuł) IDA IDT 1 1 2 1 3 1 4 2 5 2 6 2 7 4 8 5 9 3

Bazy Danych 5 Jeden do Jednego W przypadku relacji jeden-do-jednego wierszowi (krotce) w tabeli A może odpowiadać nie więcej niż jeden zgodny wiersz (krotka) w tabeli B i na odwrót. Relacja jeden-do-jednego jest tworzona, jeśli obie powiązane kolumny są kluczami podstawowymi lub mają ograniczenia UNIQUE. Ten typ relacji spotyka się rzadko, ponieważ większość informacji powiązanych w ten sposób umieszczana jest w jednej tabeli. Relacji jeden-do-jednego można użyć, aby: Podzielić tabelę zawierającą wiele kolumn. Wydzielić część tabeli ze względów bezpieczeństwa. Przechowywać dane, które są używane przez krótki czas i powinny być łatwo usuwalne przez usunięcie tabeli. Przechowywać informacje, które mają zastosowanie tylko do podzbioru głównej tabeli. Więzy integralności to system reguł gwarantujących, że relacje między wierszami (krotkami) w pokrewnych tabelach pozostają poprawne, oraz że dane powiązane relacją nie zostaną przypadkowo usunięte lub zmienione. Więzy integralności narzucają następujące reguły postępowania: Nie można wprowadzić wartości w kolumnie klucza obcego tabeli powiązanej relacją, jeśli wartość ta nie istnieje w kluczu podstawowym tabeli pokrewnej. W kolumnie klucza obcego można jednak wprowadzić wartość NULL. Na przykład, nie można przypisać stanowiska pracownikowi, którego nie ma w tabeli pracownicy, ale można wskazać, że pracownik nie ma przypisanego stanowiska, wprowadzając wartość NULL. Nie można usunąć wiersza z tabeli klucza głównego, jeśli istnieją odpowiadające mu wiersze w tabeli pokrewnej. Na przykład, nie można usunąć wiersza z tabeli stanowiska, jeśli w tabeli pracownicy istnieją pracownicy przypisani do stanowiska reprezentowanego przez ten wiersz. Nie można zmienić wartości klucza podstawowego w tabeli klucza podstawowego, jeśli z danym wierszem są powiązane relacją inne wiersze. Na przykład, nie można usunąć pracownika z tabeli pracownicy, jeśli pracownik ten jest przypisany do stanowiska w tabeli stanowiska.

Bazy Danych 6 Więzy integralności wymagają spełnienia poniższych warunków: Zgodna kolumna z tabeli podstawowej musi być kluczem podstawowym lub mieć ograniczenie UNIQUE. Pokrewne kolumny muszą mieć ten sam typ danych i rozmiar. Obie tabele muszą należeć do tej samej bazy danych. Bibliografia: [1] Systemy baz danych ; Paul Beynon-Davies; Wydawnictwa Naukowo- Techniczne, Warszawa 1998. [2] Systemy Zarządzania Bazami Danych ; Lech Banachowski, Krzysztof Stencel; Wydawnictwo PJWSTK, Warszawa 2007 [3] Systemy baz danych pełny wykład ; Hector Garcia-Molina, Jeffrey D. Ullman, Jennifer Widom; Wydawnictwa Naukowo-Techniczne, Warszawa 2006. [4] SQL dl każdego ; Rafe Coburg; Wydawnictwa Helion, Gliwice 2000. [5] Dokumentacja Microsoft Access 2007; Microsoft Corp.