Co to są relacyjne bazy danych?



Podobne dokumenty
Bazy danych - wykład wstępny

Baza danych. Modele danych

Posługiwanie się tabelami

WPROWADZENIE DO BAZ DANYCH

Baza danych. Baza danych to:

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

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1

Wprowadzenie do baz danych

Krzysztof Kadowski. PL-E3579, PL-EA0312,

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

2017/2018 WGGiOS AGH. LibreOffice Base

Wykład I. Wprowadzenie do baz danych

Model relacyjny bazy danych

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

WPROWADZENIE DO BAZ DANYCH

Podstawowe informacje o bazach danych. Technologie Informacyjne

Wykład 2. Relacyjny model danych

1 Przygotował: mgr inż. Maciej Lasota

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

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

Alicja Marszałek Różne rodzaje baz danych

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

ORGANIZACJA I ZARZĄDZANIE INFORMACJĄ W BAZIE DNYCH. podstawowe pojęcia.

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

Zapytania do bazy danych

Tworzenie projektu bazy danych z kreatorem odnośników - Filmoteka. Projekt tabel dla bazy Filmoteka

Podstawowe zagadnienia z zakresu baz danych

Podstawowe informacje o bazach danych. Technologie Informacyjne

Pojęciowy model danych etap 1 (identyfikacja obiektów) Pojęciowy model danych etap 2A (powiązania obiektów)

Język SQL, zajęcia nr 1

Bazy danych TERMINOLOGIA

INTERNETOWY KURS PODSTAW IT

LABORATORIUM 8,9: BAZA DANYCH MS-ACCESS

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

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

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

Pojęcie systemu informacyjnego i informatycznego

Relacyjne bazy danych. Normalizacja i problem nadmierności danych.

Projektowanie bazy danych. Jarosław Kuchta Projektowanie Aplikacji Internetowych

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

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

Zajęcia 1. W następnej tabeli zebrane są dane używane w bibliotece, które są przetwarzane przez bibliotekarza w różnych fazach obsługi czytelnika.

Technologia informacyjna

Szpieg 2.0 Instrukcja użytkownika

Najważniejsze problemy, których dostarczy nam tak zaprojektowana tabela :

Wprowadzenie do baz danych

TEST E.14 BAZY DANYCH

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

KURS ACCESS 2003 Wiadomości wstępne

Typ danych. Karta ogólne. Rozmiar pola Liczba całkowita długa. Autonumerowanie. Rozmiar pola 50. Tekst. Rozmiar pola 50. Tekst. Zerowa dł.

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

ECDL/ICDL Użytkowanie baz danych Moduł S1 Sylabus - wersja 6.0

Administracja bazami danych. dr inż. Grzegorz Michalski

Technologie informacyjne lab. 2: Bazy danych

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Bazy Danych - Projekt. Zasady przygotowania i oceny projektów

SQL (ang. Structured Query Language)

Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi.

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

PODSTAWOWE POJĘCIA BAZ DANYCH

Wykład II. dr Artur Bartoszewski Wydział Nauczycielski, Kierunek Pedagogika Wprowadzenie do baz danych

Przykładowa baza danych BIBLIOTEKA

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

Tworzenie baz danych i tabel

SIECI KOMPUTEROWE I BAZY DANYCH


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

Bazy danych. Wykład III Tabele. Copyrights by Arkadiusz Rzucidło 1

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

Tworzenie bazy danych Biblioteka tworzenie tabel i powiza, manipulowanie danymi. Zadania do wykonani przed przystpieniem do pracy:

Hurtownie danych. 31 stycznia 2017

Przykład, który rozpatrujemy to układ Lekarz- Pacjent. Pierwszą czynnością jaką trzeba wykonać jest odpowiedź na kilka pytań

Technologia informacyjna

Zwróćmy uwagę w jakiej lokalizacji i pod jaką nazwą zostanie zapisana baza (plik z rozszerzeniem *.accdb). Nazywamy

Krzysztof Kluza proste ćwiczenia z baz danych

Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1

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

Informatyka I BAZY DANYCH. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2017

Instrukcja instalacji i obsługi programu Szpieg 3

Projektowanie i programowanie aplikacji biznesowych. wykład 1

Podstawowe informacje o bazach danych

Projektowanie internetowej bazy danych część 1

Relacyjne bazy danych

Dr Michał Tanaś(

Autor: Joanna Karwowska

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny technologiczny Politechnika Śląska

Rozmiar pola (długość danych)

Microsoft Access materiały pomocnicze do ćwiczeń cz. 1

Bazy danych. Andrzej Łachwa, UJ, /14

Projektowanie Systemów Informacyjnych

SIECI KOMPUTEROWE I BAZY DANYCH

Co nowego w systemie Kancelaris 4.11 STD/4.21 PLUS. Co nowego w systemie Kancelaris 4.12 STD/4.22 PLUS

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

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

TI - Bazy TECHNOLOGIE INFORMACYJNE

Program Import Kontrahentów XLS dla Subiekta GT.

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie

RELACYJNE BAZY DANYCH

BAZY DANYCH LABORATORIUM. Studia niestacjonarne I stopnia

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

Wykład I. dr Artur Bartoszewski Wydział Nauczycielski, Kierunek Pedagogika Wprowadzenie do baz danych

Transkrypt:

Co to są relacyjne bazy danych?

Co to są relacyjne bazy danych? O Są to zbiory danych pogrupowane w tabele o strukturze: kolejne kolumny określają kolejne porcje informacji potrzebne dla każdego wystąpienia, kolejne wiersze to właśnie te wystąpienia. wiersze nazywamy rekordami, przecięcie kolumny i wiersza to pole. przykład: tabela student, kolumny: imię, nazwisko, rok studiów, data urodzenia, wzrost, czyjestczlonkemskni (tak/nie)

Różne kolumny mogą przechowywać różne typy O liczbowe, O tekstowe, O daty, danych: O flagi mające tylko wartość 0 lub 1(bolean, bit)

Założenia modelu relacyjnego: O Relacyjne bazy danych oparte są na matematycznym modelu relacji, jednak w pewnych kwestiach od tego modelu odchodzą. O relacją nazywamy tabelę przechowującą dane O relacje te są zbiorami w matematycznym sensie, a więc: -nie mają ustalonego porządku -można na nich przeprowadzać operacje na zbiorach

Obsługa baz relacyjnych O Do obsługi baz relacyjnych służy nam SQL -Structured Query Language. W zasadzie każda implementacja relacyjnych baz danych używa SQL, ale poszczególne dialekty trochę się od siebie różnią. Dlatego zapytanie, które zadziała np. na MS SQL SERVER, może być nierozpoznawane przez Oracle

Popularne systemy relacyjnych baz danych: O Oracle O Microsoft SQL Server O Sybase O Mysql bezpłatny O PostgreSQL - bezpłatny

Typy baz danych: Bazy proste: Bazy kartotekowe Hierarchiczne bazy danych Bazy złożone: Bazy relacyjne Bazy obiektowe Bazy relacyjno-obiektowe Strumieniowe bazy danych Temporalne bazy danych

Dlaczego przydają się bazy danych? O możemy przechowywać i manipulować taką ilością informacji, której obróbka ręczna zajęłaby stulecia O np. całkiem normalną sytuacją jest, że tabela klient jakiegoś przedsiębiorstwa zawiera milion wierszy. wyobraźmy sobie, że ktoś trzyma kartotekę klientów w wielkim pokoju i w pewnym momencie próbuje odszukać wszystkich klientów, którzy dziś mają urodziny. Praca nie do wykonania. A baza danych poradzi sobie w tym w przeciągu kilku minut. O Bazy danych ułatwiają przenoszenie danych i ich kopiowanie

Normalizacja baz danych O Wyobraźmy sobie,że mamy przedsiębiorstwo biblioteka, które swoje dane trzyma w jednej wielkiej tabeli

Dlaczego ten sposób jest nieefektywny? O W jednej tabeli trzymamy dane o zupełnie różnych podmiotach - książce, autorze, osobie wypożyczającej, wydawnictwie - sprawia to, że dane są mało czytelne O Jeśli dane wydawnictwo ma wiele książek - informacje o nazwie i adresie wydawnictwa będzie powtórzona wielokrotnie nie dając niczego nowego - tracimy wiec miejsce na dysku (redundancja) O Przypuśćmy, że wydawnictwo zmieniło adres - w obecnej sytuacji trzeba zmienić jego dane we wszystkich wierszach zawierających książki tego wydawnictwa. Jeśli w którymś miejscu tego nie zrobimy, okaże się że mamy w naszej tabeli sprzeczne informacje na temat wydawnictwa (nie konsystencja danych) O Ponadto poszczególne pola w naszej tabeli zawierają nieatomowe dane- np. jednocześnie cały adres - co bardzo utrudnia operacje na danych np. ciężko byłoby wyszukać wszystkich wypożyczających z ulicy Błotnistej

Jak to naprawić? O Należy przeprowadzić proces, zwany normalizacją bazy w wyniku którego zadbamy by: 1. każda tabela zawierała jedynie dane na temat jednego podmiotu np. książki 2. każde pole zawierało jedynie atomowe dane (np. nazwa ulicy, numer mieszkania, kod pocztowy) 3. tabele pozostawały w powiązaniu ze sobą za pomocą klucza głównego i klucza obcego

W efekcie otrzymujemy następujące tabele:

Czym jest klucz główny? O id... w każdej tabeli stanowi klucz główny tej tabeli - oznacza to pole, lub zbiór pól, które jednoznacznie identyfikują dany wiersz - są w skali tej tabeli unikatowe. poprzez wpisanie tej wartości klucza np. wydawnictwa, do tabeli KSIAZKI zyskujemy odnośnik, ze informacje o wydawnictwie tej książki możemy znaleźć w tabeli WYDAWNICTWA, w wierszu o tej wartości klucza. Taki wpis klucza z innej tabeli nazywamy kluczem obcym. To jest właśnie sposób na powiązanie danych z różnych tabel ze sobą. O relacje przedstawione są typu 1 do wielu: to znaczy 1 wydawnictwo może mieć wiele książek (ale 1 książka nie może mieć wielu wydawnictw).

Relacja wiele-do-wielu O Np jeden czytelnik może mieć wypożyczone wiele książek. Ale jedna książka może (w czasie) być wypożyczana przez wielu czytelników. Jak to przedstawić?

Tabela Pośrednia

Relacje

Wartość NULL O Model relacyjny przewiduje, że część wartości może pozostać nieznana, pusta. Dlatego istnieje wartość null - która oznacza wartość nieznaną, nieokreśloną. nie jest to to samo co brak wartości. O w praktyce dość często się nią posługujemy. I tak w ostatniej tabeli: CZYTELNIK_KSIAZKA zwróćmy uwagę na pole data_oddania. Jeśli książka została już zwrócona - wiadomo, co będzie tam wpisane. Ale co, jeśli książka jest ciągle wypożyczona? Wpisać tam wartość z przeszłości? przyszłości? najlepiej chyba zostawic null...

Poszczególne kolumny mają różne typy danych: O tekstowe O numeryczne, O bitowe O i inne O np. imię będzie typu tekstowego O data_wypozyczenia - typ daty O id - typ numeryczny

O O O Co nam daje odpowiednie dopasowanie? Oszczędność miejsca - na dysku oraz w pamięci RAM podczas obróbki danych - różne typy różnią się pojemnością, a więc i wielkością. Odpowiedni typ danych umożliwia różne operacje typowe dla niego. np. jeśli datę zapiszemy jako typ tekstowy- nie będziemy mogli w prosty sposób obliczyć różnicy między tą data, a jakąś inną, czy odjąć od tej daty np. 30 dni. odpowiedni dobór typów zapewni nam takie możliwości. Czasami może okazać się, że typ danych nas ogranicza. Np. na stan konta bankowego ustawiliśmy typ smallint,który przyjmuje wartość do 32767. A potem dostajemy przelew na jeszcze 20 tysięcy. I co? i mamy problem ;). podobnie może być np. ze zbyt długim nazwiskiem w polu tekstowym, ale o ułamkiem o zbyt dużej precyzji w polu numerycznym.

Zadanie Jesteś świeżo zatrudnionym informatykiem w firmie wypożyczającej melexy na polu golfowym. Firma nazywa się Głęboki dołek i w takim stanie się znajduje, bo ma problem z kartoteką. Zaproponuj sensowny układ tabel dla firmy. W zamian prezes pozwoli Ci przez rok za darmo jeździć melexem do domu. myślę, że warto ;)