Łódź 2008 Banki danych WYKŁAD 2 dr Łukasz Murowaniecki T-109.

Slides:



Advertisements
Podobne prezentacje
Teoretyczne podstawy tworzenia systemów relacyjnych baz danych
Advertisements

Programowanie obiektowe
Procedury wyzwalane Procedura wyzwalana (ang. trigger) - stanowi kod użytkownika przechowywany wewnątrz bazy i uruchamiany w określonych sytuacjach np.
INDEKSY I SORTOWANIE ZEWNĘTRZNE
Relacyjny model danych
Relacyjny model danych
Systemy do operowania dużymi i trwałymi zbiorami danych
WPROWADZENIE DO BAZ DANYCH
MS Access 2000 Normalizacja Paweł Górczyński 2005.
Wprowadzenie do baz danych.
Relacyjny Model Danych
Podstawy baz danych Wykład
SQL-owskie szlaki górskie
POWTÓRZENIE Dane; Baza danych - BD;
POWTÓRZENIE Metodologia : Pojęcia:
WYKONYWANIE ZAPYTAŃ Przygotował Lech Banachowski na podstawie: 1.Raghu Ramakrishnan, Johannes Gehrke, Database Management Systems, McGrawHill, 2000 (książka.
Modele baz danych - spojrzenie na poziom fizyczny
Bazy Danych Wykład 1 S. Kozielski.
Język SQL (Structured Query Language) DDL (Data Definition Language)
Projektowanie struktury logicznej (schematu) relacyjnych baz danych
Wykład 3 Analiza i projektowanie strukturalne
Teoria relacyjnych baz danych
Bazy Danych II prowadzący: mgr inż. Leszek Siwik
OPERACJA DZIELENIA W SQL
Zależności funkcyjne.
SQL – zapytania posumowanie
Bazy danych.
Systemy baz danych Wykład 1
Temat 19: Organizacja informacji w bazie danych – część 1.
Informatyka Relacyjne bazy danych.
Andrzej Macioł Bazy danych – model relacyjny – cz. 1 Andrzej Macioł
Rozwiązanie zadań do zaliczenia I0G1S4 // indeks
Jak zacząć w MS SQL? USE master; GO IF DB_ID (Nbaza') IS NOT NULL DROP DATABASE baza; GO CREATE DATABASE baza; GO USE baza; GO.
Wybrane zagadnienia relacyjnych baz danych
WPROWADZENIE DO BAZ DANYCH
Model relacyjny.
Bazy danych 1 Literatura: Paul Benon-Davies – Systemy baz danych
dr Łukasz Murowaniecki T-109
1 Każdy obiekt jest scharakteryzowany poprzez: tożsamość – daje się jednoznacznie wyróżnić; stan; zachowanie. W analizie obiektowej podstawową strukturą
Bazy danych - podstawowe pojęcia
Projektowanie bazy danych
Wykład I Podstawy relacyjnych baz danych Powtórzenie wiadomości
Temat 3: Integralność danych. Integralność danych, określana również mianem spójności danych, jest to funkcja SZBD, która gwarantuje, że dane nie zostaną.
Michał Krawczykowski kl. IIIB
Definiowanie kluczy w tabelach RBD
Programowanie strukturalne i obiektowe C++
Model obiektowy bazy danych
Slajd 1© J.Rumiński Jacek Rumiński  Bazy danych Kontakt: Katedra Inżynierii Biomedycznej, pk. 106, tel.: , fax: ,
Systemy informatyczne
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Projektowanie relacyjnych baz danych – diagramy związków encji
Projektowanie bazy danych z użyciem diagramów UML Obiektowe projektowanie relacyjnej bazy danych Paweł Jarecki.
Bazy danych Podstawy relacyjnych baz danych Autor: Damian Urbańczyk.
BAZY DANYCH MS Access.
Modelowanie model związków encji
Bazy Danych Wprowadzenie
1 SYSTEMY BAZ I HURTOWNI DANYCH Wstęp. 2 Literatura: 1.„Podstawowy wykład z systemów baz danych” – J.Ullman, J.Widom, WNT, „Systemy baz danych.
Prezentacja programu PowerPoint
Bazy danych. Baza danych (database) – magazyn danych – informacji powiązanych tematycznie, umożliwiający ich wyszukiwanie według zadanych kryteriów Baza.
Temat: Tworzenie bazy danych
Transformacja modelu EER do modelu relacyjnego
Indeksy.
Nieprawidłowo zaprojektowana tabela
SYSTEMY BAZ I HURTOWNI DANYCH
Technologie informacyjne w administracji publicznej
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Technologie Informacyjne Bazy danych
Technologie informacyjne w administracji publicznej
Modele baz danych - spojrzenie na poziom fizyczny
Zapis prezentacji:

Łódź 2008 Banki danych WYKŁAD 2 dr Łukasz Murowaniecki T-109

Łódź 2008 PRZYPOMNIENIE Baza danych opisuje w sposób uproszczony pewien fragment rzeczywistości. Opisuje go przy pomocy modelu danych. Model danych - zbiór ogólnych zasad posługiwania się danymi. Zbiór ten obejmuje trzy główne części: Definicja danych: zbiór reguł określających strukturę danych; Operowanie danymi: zbiór reguł dotyczących procesu dostępu do danych i ich modyfikacji; Integralność danych: zbiór reguł określających, które stany bazy danych są poprawne (a więc zarazem jakie operacje prowadzące do modyfikacji danych są dozwolone)

Łódź 2008 System zarządzania bazą danych Architektura ANSI/SPARC poziom zewnętrzny - odnosi się do sposobu w jaki dane są widziane przez poszczególnych użytkowników poziom pojęciowy - jest abstrakcyjnym, lecz wiernym opisem pewnego wycinka rzeczywistości; sposób widzenia danych przez grupę użytkowników poziom wewnętrzny (fizyczny) - określa sposoby organizacji danych w pamięci zewnętrznej. Trzy poziomy architektury DBMS (poziomy abstrakcji)

Łódź 2008 Podstawy baz danych – modele danych Rozróżnia się trzy główne typy (lub generacje) modeli danych: Proste modele danych - dane zorganizowane są w strukturę rekordów zgrupowanych w plikach. Głównymi dostępnymi operacjami są operacje na rekordach (ewentualnie na ich poszczególnych polach). Klasyczne modele danych - należą do nich modele hierarchiczne, sieciowe i relacyjne. Modele relacyjne stanowią obecnie najbardziej popularną podstawę architektury systemów baz danych. Semantyczne modele danych - semantyka to inaczej znaczenie. Klasyczne modele danych nie dostarczają łatwego sposobu odczytania informacji o semantyce danych, stąd podejmuje się próby stworzenia innych modeli, uzupełniających ten brak. Przykładem częściowej realizacji tego programu są obiektowe modele danych.

Łódź 2008 Podstawy baz danych – model relacyjny dane przechowywane są w dwuwymiarowych tabelach (relacjach) w nagłówku relacji są podane atrybuty schemat relacji = nazwa relacji + atrybuty; zbiór schematów relacji to schemat relacyjny bazy danych Wiersze relacji to krotki odpowiednik atrybutów relacji w krotce to składowe krotki dziedzina (domain) atrybutu – typ elementarny określający zbiór możliwych wartości atrybutu liczebność relacji (cardinality) – liczba krotek stopień relacji (degree) – liczba atrybutów każda krotka jest jednoznacznie identyfikowana przez klucz główny (primary key)

Łódź 2008 Podstawy baz danych – model relacyjny LICZEBNOŚĆLICZEBNOŚĆ KROTKI ATRYBUTY RELACJA ID_AUTORAIMIĘNAZWISKO DZIEDZINY STOPIEŃ KLUCZ GŁÓWNY

Łódź 2008 Podstawy baz danych – model relacyjny

Łódź 2008 Podstawy baz danych – model relacyjny Własności relacji: Nie ma podwójnych krotek Krotki nie są uporządkowane z góry na dół Atrybuty nie są uporządkowane z lewa do prawa Wszystkie wartości atrybutów są atomowe

Łódź 2008 Integralność danych relacyjnych Integralność baz danych: formalna poprawność bazy danych, ich fizycznej organizacji, zgodności ze schematem bazy danych i regułami dostępu. Integralność encji Integralność referencyjna

Łódź 2008 Integralność danych relacyjnych Integralność encji Klucz kandydujący w relacji R jest podzbiorem K zbioru atrybutów relacji R, mających własności: Jednoznaczności – żadne dwie krotki R nie mają tej samej wartości dla K Nieredukowalności – żaden właściwy podzbiór K nie ma własności jednoznaczności Cechy kluczy kandydujących: W jednej relacji może wystąpić kilka różnych kluczy kandydujących Klucz kandydujący zawierający więcej niż jeden atrybut nazywa się kluczem złożonym, zaś klucz kandydujący zawierający dokładnie jeden atrybut – kluczem prostym Klucze kandydujące nie zawierają żadnych atrybutów, które są zbędne do jednoznacznej identyfikacji Klucze kandydujące zapewniają podstawowy mechanizm adresowania na poziomie krotek w systemie relacyjnym.

Łódź 2008 Integralność danych relacyjnych Integralność referencyjna Klucz główny (primary key) – wybrany klucz kandydujący Klucze alternatywne (alternate keys) – pozostałe klucze kandydujące Klucze obce (foreign keys) - klucz obcy relacji pochodnej R2 jest to podzbiór FK, zbioru atrybutów R2 takich, że: Istnieje relacja podstawowa R1 (relacje R1 i R2 niekoniecznie są różne) z kluczem kandydującym CK oraz W każdej chwili każda wartość FK w aktualnej wartości relacji R2 jest taka sama, jak wartość CK w pewnej krotce aktualnej wartości R1 IDImięNazwisko 1JanKowalski 2AnnaMalinowska 3StefanKwiatkowski IDMarkaNr_rejWłaściciel 1FordEL FiatEL SeatWE333331

Łódź 2008 Integralność danych relacyjnych Integralność referencyjna Cechy kluczy obcych: Każda wartość danego klucza obcego musi pojawić się jako wartość odpowiedniego klucza kandydującego. Klucz kandydujący, odpowiadający danemu kluczowi obcemu może zawierać wartość, która nie występuje aktualnie jako wartość klucza obcego Klucz obcy jest złożony – składa się z więcej niż jednego atrybutu – tylko i tylko wtedy, gdy klucz kandydujący, któremu on odpowiada jest złożony Klucz obcy jest prosty wtedy i tylko wtedy, gdy odpowiadający mu klucz kandydujący jest prosty Każdy składowy atrybut danego klucza obcego musi być zdefiniowany na tej samej dziedzinie, co odpowiadający mu składnik właściwego klucza kandydującego Integralność referencyjna – w bazie danych nie mogą występować żadne niedopasowane wartości kluczy obcych

Łódź 2008 Integralność danych relacyjnych Integralność referencyjna Reguły kluczy obcych: Usuwanie: RESTRICTED – usuwanie jest ograniczone do przypadków, gdy nie ma krotek powiązanych CASCADE – usuwane są również krotki powiązane Aktualizacja: RESTRICTED – aktualizacja jest ograniczana do przypadków, gdy nie ma krotek powiązanych CASCADE – aktualizacja jest propagowana na krotki powiązane NULL (brak informacji) Usuwanie: NULLIFIES – klucz obcy zostaje ustawiony na null i potem krotka powiązana jest usuwana Aktualizacja: NULLIFIES – klucz obcy zostaje ustawiony na null i potem krotka powiązana jest aktualizowana

Łódź 2008 Jeden – do – jeden (1:1) Jeden – do – wiele (1:n) Wiele – do - wiele (m:n) Rodzaje powiązań a b c d e f a b c d e f a b c d e f

Łódź 2008 Podstawy baz danych – model relacyjny Operacje na danych - algebra relacyjna Operatory algebry relacyjnej: Restrykcja (restrict) Rzut (project) Iloczyn (product) Suma (union) Przecięcie (intersect) Różnica (difference) Iloraz (divide) Złączenie (join)

Łódź 2008 Podstawy baz danych – model relacyjny Operacje na danych - algebra relacyjna - restrykcja SELECT imię, nazwisko, wiek FROM student WHERE wiek >20;

Łódź 2008 Podstawy baz danych – model relacyjny Operacje na danych - algebra relacyjna - rzut SELECT imię, nazwisko FROM student;

Łódź 2008 Podstawy baz danych – model relacyjny Operacje na danych - algebra relacyjna - iloczyn SELECT imię, nazwisko, nazwa FROM student, przedmiot;

Łódź 2008 Podstawy baz danych – model relacyjny Operacje na danych - algebra relacyjna - suma SELECT imię, nazwisko FROM student UNION SELECT Imię_prowadzącego, nazwisko_prowadzącego FROM przedmiot;

Łódź 2008 Podstawy baz danych – model relacyjny Operacje na danych - algebra relacyjna - przecięcie SELECT imię FROM student INTERSECTION SELECT Imię_prowadzącego FROM przedmiot;

Łódź 2008 Podstawy baz danych – model relacyjny Operacje na danych - algebra relacyjna - różnica SELECT imię FROM student DIFFERENCE SELECT Imię_prowadzącego FROM przedmiot;

Łódź 2008 Podstawy baz danych – model relacyjny Operacje na danych - algebra relacyjna - iloraz