Implementacyjne modele danych. Definicja bazy danych

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

Download "Implementacyjne modele danych. Definicja bazy danych"

Transkrypt

1 Definicja bazy danych Implementacyjne modele danych Okrelaj technologi transformacji modelu koncepcyjnego do konkretnego systemu SZBD. Wród modeli implementacyjnych wyrónia si modele: Baza danych jest zbiorem powizanych danych. Baza danych jest abstrakcyjnym informatycznym odzwierciedleniem wybranego fragmentu rzeczywistoci nazywanego miniwiatem. Zmiany w tym miniwiecie s odzwierciedlane w bazie danych. Hierarchiczne sieciowe RELACYJNE obiektowe PRACOWNIK_ID NAZWISKO IMIE KIEROWNIK_ID WYDZIAL_ID 1 Kudłaty Stanisław Pryszczaty Mieczysław Pijcy Gustaw Ponury Bolesław 1 5 Kulawy Franciszek 2 2 Rafał Kowalski 1 Rafał Kowalski 2 Metodyka tworzenia baz danych RELACYJNE BAZY DANYCH i Strukturalny Jzyk Zapyta SQL. Analiza miniwiata konstrukcja modelu konceptualnego miniwiata Transformacja modelu konceptualnego do modelu relacyjnego. Proces normalizacji Wybór struktur fizycznych i okrelenie cieek dostpu Strojenie systemu Diagramy koncepcyjne Relacje Relacje znormalizowane Fizyczne struktury danych 1970r. dr E.F.Codd opublikował artykuł: Relacyjny model danych dla duych banków danych współuywanych Iinterfejs dostpu do relacyjnych baz danych: SEQUEL SQL Standardy jzyka: SQL-89 SQL-92 (SQL2 SQL-99. SQL - jedyny jzyk obsługi relacyjnych baz danych Rafał Kowalski 3 Rafał Kowalski 4 Dr. E. F. Codd 12 Postulatów Systemów Relacyjnych 1. Informacyjny. 2. Gwarantowanego dostpu. 3. Systemowej obsługi wartoci NULL. 4. Dynamicznego słownika danych. 5. Pełnego jzyka danych. 6. Modyfikowania BD przez perspektywy. 7. Modyfikowania danych na wysokim poziomie abstrakcji Fizycznej niezalenoci danych. 9. Logicznej niezalenoci danych. 10. Niezalenoci wizów spójnoci. 11. Niezalenoci dystrybucyjnej. 12. Bezpiecznych operacji niskiego poziomu. Rafał Kowalski 5 Dr. E. F. Codd 12 Postulatów Systemów Relacyjnych 1. Postulat Informacyjny. Cała informacja z relacyjnej bazy danych jest reprezentowana jedynie na poziomie logicznym tylko przy pomocy wartoci umieszczonych w tabelach. 2. Postulat gwarantowanego dostpu. Dostp do kadej atomowej jednostki informacji (datum jest realizowany przy pomocy okrelenia nazwy tabeli wartoci klucza głównego i nazwy kolumny. 3. Postulat systemowej obsługi wartoci NULL. System Relacyjnej Bazy Danych przechowuje wartoci NULL które reprezentuj informacj brakujc. Obsługa wartoci NULL jest realizowana w sposób niezaleny od typów danych. 4. Postulat dynamicznego słownika danych. Struktura bazy danych jest reprezentowana na poziomie logicznym w ten sam sposób co przechowywane dane i obsługiwana przez ten sam jzyk relacyjny. Rafał Kowalski 6 1

2 Dr. E. F. Codd 12 Postulatów Systemów Relacyjnych 5. Postulat pełnego jzyka danych. W systemie relacyjnym musi by okrelony jzyk którego wyraenia podlegaj dokładnie okrelonej składni i umoliwiaj definiowanie modyfikowanie i przegldanie danych ogranicze i realizacj transakcji. Jzyk ten jest niezaleny od obsługiwanych jzyków narodowych jzyków programowania i rodzajów interakcji z klientami systemu (SQL. 6. Postulat modyfikowania BD przez perspektywy. Wszystkie perspektywy danych które teoretycznie umoliwiaj modyfikowanie danych musz umoliwia te modyfikacje w praktyce. 7. Postulat modyfikowania danych na wysokim poziomie abstrakcji. Wszystkie operacje dostpu do danych (przegldanie wprowadzanie modyfikowanie i usuwanie musz umoliwia jednorodne przetwarzanie relacji bazowych (base i wyliczanych (derived. Dr. E. F. Codd 12 Postulatów Systemów Relacyjnych 8. Postulat fizycznej niezalenoci danych. Praca klientów przy terminalach interaktywnych oraz działanie programów i aplikacji s niezalene od istniejcych fizycznych struktur danych i zmian dokonywanych w strukturach fizycznego przechowywania i/lub metod dostpu do danych fizycznych. 9. Postulat logicznej niezalenoci danych. Praca klientów przy terminalach interaktywnych oraz działanie programów i aplikacji s niezalene od zawartoci i zmian dokonywanych w treci przechowywanej informacji jeeli te zmiany nie wpływaj na struktury tabel bazowych. Rafał Kowalski 7 Rafał Kowalski 8 Dr. E. F. Codd 12 Postulatów Systemów Relacyjnych 10. Postulat niezalenoci wizów spójnoci. Wizy spójnoci danych (ograniczenia integralnoci musz by w pełni definiowane przy pomocy jzyka relacyjnej bazy danych i przechowywane w słowniku danych w sposób niezaleny od oprogramowania uytkowego. System musi obsługiwa co najmniej dwa rodzaje wizów spójnoci: 1. Integralno encji (klucz główny nie moe przyjmowa wartoci NULL. 2. Integralno referencyjna (kada okrelona (nie NULL warto klucza obcego musi pochodzi z domeny odpowiadajcego klucza głównego. 11. Postulat niezalenoci dystrybucyjnej. System Relacyjnej Bazy Danych jest niezaleny od rozmieszczenia i rozproszenia bazy danych. Uytkownicy systemu nie musz by wiadomi i uzalenia swoich działa od rozproszenia danych. Dr. E. F. Codd 12 Postulatów Systemów Relacyjnych 12. Postulat bezpiecznych operacji niskiego poziomu. Jeeli system relacyjnej bazy danych udostpnia jzyk niskiego poziomu (przetwarzania pojedynczych rekordów danych to jego uycie nie moe umoliwia łamania lub czasowego ograniczania wizów spójnoci zdefiniowanych w jzyku wysokiego poziomu. Postulat Zero: Kady system który uznaje si za Relacyjn Baz Danych musi realizowa wszystkie operacje przetwarzania danych tylko i wyłcznie przy pomocy operatorów relacyjnych. Na Na podstawie zdefiniowanych postulatów mona mona powiedzie e e aden aden współczesny system system RDBMS nie nie jest jest systemem w pełni pełni relacyjnym. ( ( Rafał Kowalski 9 Rafał Kowalski 10 Podstawy jzyka SQL Grupy polece SQL92 Podstawy jzyka SQL Klasy polece SQL99 DDL Definiowanie danych. DCL Sterowanie serwerem danych DQL Wyszukiwanie danych. DML Modyfikacje danych. Rafał Kowalski 11 KLASA Obsługa połczenia. Strukturalne Przetwarzanie danych Diagnostyka systemu Obsługa schematów Obsługa sesji Obsługa transakcji Opis Sterowanie sesj - połczeniem klienta z serwerem. Sterowanie wykonywaniem zbiorów polece. Wyszukiwanie danych połczone z modyfikowaniem nietrwałym lub modyfikowanie trwałe. Wywietlanie informacji o kondycji i stanie pracy serwera błdach i sytuacjach wyjtkowych. Modyfikowanie struktur przechowujcych dane w serwerze. Modyfikowanie parametrów sterujcych procesem przetwarzania informacji w sesji klienta Synchronizowanie współpracy wielu uytkowników i dzielenie procesów przetwarzania danych na jednostki elementarne. Przykłady Rafał Kowalski 12 2

3 Hierarchiczno modelu relacyjnego Zapytania proste SELECT KLASTER KATALOG SCHEMAT OBIEKT KOLUMNA TYP STANDARDOWY TYP UYTKOWNIKA Zbiór katalogów sesji SQL (cały system RDBMS. Standard ANSI nakłada na klaster obowizek kontroli dostpu uytkowników?. Inaczej: instancja bazy danych. Zbiór obiektów uytkownika (baza danych. Tabele perspektywy moduły procedury składowane. Unikatowy zbiór wartoci atrybutu encji informacji. Definicja zbioru prawidłowych wartoci kolumny SELECT DISTINCT UNIQUE { ALL } lista wyboru FROM lista ródłowa WHERE warunek S wyboru GROUP BY lista grupowania HAVING warunek G wyboru ORDER BY lista kolejnoci ; REGUŁA i ASERCJA Reguły prawidłowego przetwarzania informacji: PK FK U NN... wyzwalacze Rafał Kowalski 13 Rafał Kowalski 14 Składnia klauzuli FROM Selekcja wyników zapytania WHERE start JOIN tabela tabela CROSS JOIN USING ( OUTER ON INNER LEFT RIGHT FULL kolumna Warunek złczenia NATURAL INNER JOIN LEFT OUTER RIGHT Rafał Kowalski FULL 15 stop Klauzula WHERE słuy do okrelania listy warunków logicznych które musz spełnia wiersze wygenerowane przez polecenie SELECT lub DELETE. Opanowanie umiejtnoci stosowania warunków klauzuli WHERE jest podstaw sukcesu stosowania jzyka SQL. PROBLEMY Dua liczba odmiennych rodzajów warunków dla rónych typów danych. Moliwo wzajemnego uzupełniania i zastpowania si rónych warunków. Pomieszanie warunków selekcji ze złczeniami Theta. Brak pierwszestwa spełniania - kolejno okrelana wyłcznie przez struktury zagłbionych nawiasów. Zaleno od producentów serwerów i konfiguracji oprogramowania. Rafał Kowalski 16 Rodzaje warunków WHERE(1 Rodzaje warunków WHERE (2 Prosty warunek logiczny Wyraenie logiczne złoone z dwóch argumentów połczonych operatorem porównania ewentualnie poprzedzone kwalifikatorem negacji NOT. pensja=1300 < <= = <> > >= Obsługa złcze tabel wewntrzne lewostronne zewntrzne (wszystkie wydziały THETA Pracownicy.wydzial_id = wydzialy.wydzial_id Pracownicy.wydzial_id (+= wydzialy.wydzial_id Pracownicy.wydzial_id =* wydzialy.wydzial_id Oracle PostgreSQL Złoony warunek logiczny Warunki proste połczone operatorami złcze i nawiasami zmieniajcymi kolejno ich analizy. Sprawdzenie wartoci NULL Sprawdzenie wystpowania pustej wartoci atrybutu. UWAGA: 0 i nie s wartociami pustymi. NOT Pensja>1300 AND wydzial_id = 3 numer_telefonu IS NULL imie IS NOT NULL AND OR Rafał Kowalski 17 <=> NOT AND/OR IS NULL IS NOT NULL Porównywanie tekstów ze wzorcem Porównywanie tekstów wyszukiwanie łacuchów ze znakami wieloznacznymi. UWAGA: W zalenoci od kontekstu serwer moe dokona niejawnej konwersji typu atrybutu. Sprawdzenie zakresu Poszukiwanie atrybutów mieszczcych si w DOMKNITYM zakresie wartoci. imie NOT LIKE %a nazwisko LIKE K_owal% nazwisko LIKE pensja LIKE 3 0 pensja BETWEEN 1000 and 3000 dowolny łacuch znaków dowolny jeden znak pensja NOT BETWEEN 2000 and 3000 NOT BETWEEN... imie BETWEEN Rafał 'Adam' Kowalski and Bartek' 18 % _ BETWEEN x and y 3

4 Sprawdzenie zbioru wartoci Poszukiwanie atrybutów mieszczcych si w wymienionym zbiorze wartoci. nazwa IN ( spedycja transport imie NOT IN ( Anna Ewa pensja IN ( Rodzaje warunków WHERE (3 IN ( abc NOT IN... Rafał Kowalski 19 IN ANY ALL EXISTS Wspomagane przez < <= Podzapytania WHERE (4 Sprawdzanie złoonych warunków istnienia PODZAPYTANIA!!! Poszukiwanie atrybutów zwizanych ze zbiorem wartoci generowanych przez podzapytania SQL (zwykle skorelowane. Przykład zapytania Wywietl pracowników którzy posiadaj podwładnych. SELECT pracownik_id imie nazwisko FROM pracownicy p WHERE EXISTS (SELECT empno FROM emp WHERE p.mgr = emp.empno ORDER BY ename; =!= <> => =ANY jest równowane IN Rafał Kowalski 20 > UWAGA Agregowanie wyników Agregowanie wyników GROUP BY PRACOWNIK_ID NAZWISKO IMIE KIEROWNIK_ID WYDZIAL_ID 1 Kudłaty Stanisław Pryszczaty Mieczysław Pijcy Gustaw Ponury Bolesław 1 5 Kulawy Franciszek 2 6 Samotny Jan 7 5 Policz rekordy w tabeli!"#$ "%"&!"#$!#'(" *"'!"#$ Liczy rekordy w których chocia jedna kolumna nie jest pusta. Pomija rekordy z pustym wpisem w kolumnie. PRACOWNIK_ID NAZWISKO IMIE KIEROWNIK_ID WYDZIAL_ID 1 Kudłaty Stanisław Pryszczaty Mieczysław Pijcy Gustaw Ponury Bolesław 1 5 Kulawy Franciszek 2 2 WYDZIALY WYDZIAL_ID NAZWA KIEROWNIK_ID SIEDZIBA_ID 1 spedycja magazyn transport kadry 30 Pojcie agregowania danych wie si z wykorzystaniem klauzuli grupowania: GROUP BY... połczonej z zastosowaniem specjalnych funkcji agregujcych: MIN( MAX( AVG( SUM( COUNT(... Agregowanie pozwala odpowiedzie na pytania postaci: Pogrupuj rekordy wg wskazanego kryterium a nastpnie wykonaj operacje typu: policz rekordy wyznacz wartoci minimalne/maksymalne/rednie oblicz sumy wartoci liczbowych. Rafał Kowalski 21 Rafał Kowalski 22 Składnia GROUP BY PODZAPYTANIA Rafał Kowalski 23 Rafał Kowalski 24 4

5 PRACOWNIK_ID NAZWISKO IMIE STANOWISKO PLACA WYDZIAL_ID PODZAPYTANIA WHERE zwracajce wiele wierszy 1 Kudłaty Stanisław kierownik Pryszczaty Mieczysław kierowca Pijcy Gustaw magazynier Ponury Bolesław kierownik Kulawy Franciszek goniec WARUNEK WYDZIALY WYDZIAL_ID NAZWA KIEROWNIK_ID SIEDZIBA_ID 1 spedycja magazyn transport kadry 30 Wywietl nazwiska stanowiska i i pensje pracowników zarabiajcych najmniej w swoich wydziałach. =ANY jest równowane IN PRACOWNIK_ID NAZWISKO IMIE STANOWISKO PLACA WYDZIAL_ID 1 Kudłaty Stanisław kierownik Pryszczaty Mieczysław kierowca Pijcy Gustaw magazynier Ponury Bolesław kierownik Kulawy Franciszek goniec PODZAPYTANIA w klauzuli HAVING WYDZIALY WYDZIAL_ID NAZWA KIEROWNIK_ID SIEDZIBA_ID 1 spedycja magazyn transport 3 10 Wywietl nazwy i 4 kadry i rednie płace 30 tych tych wydziałów które przekraczaj redni płac wydziału magazyn Etap PIERWSZY WARUNEK Etap TRZECI. =!= <>>=<=. IN ANY ALL EXISTS (PODZAPYTA Rafał Kowalski 25 Etap DRUGI. (PODZAPYTA Rafał Kowalski 26 lista referencyjna tabel? { } warunki S wyboru PODZAPYTANIA skorelowane {wskazówka}{ lista wywietlania } lista grupowania { } { lista kolejnoci } ; W klauzuli warunkowej zapytania wewntrznego wystpuje odwołanie do kolumny z zapytania zewntrznego. Rafał Kowalski 27? EXISTS IN ANY ALL PODZAPYTANIA skorelowane Stosowane w przypadkach gdy interesujca jest tylko odpowied na pytanie czy wiersz o zadanych warunkach istnieje (lub nie istnieje. Naley do najbardziej wydajnych sposobów wykonywania złoonych zapyta do bazy danych. Tabele tymczasowe generowane podczas wykonywania zapyta nie posiadaj indeksów co znakomicie je spowalnia. Rafał Kowalski 28 TRANSAKCYJNO MODYFIKOWA DANYCH DML INSERT UPDATE DELETE TRUNCATE Rafał Kowalski 29 Jawne rozpoczcie transakcji. SET TRANSACTION... BEGIN... Dowolne polecenia SQL COMMIT Trwałe zapisanie dokonanych zmian w bazie danych i pokazanie pozostałym uytkownikom systemu. Niejawne rozpoczcie transakcji. Polecenie DML (INSERT UPDATE ROLLBACK rodowisko izolowanych modyfikacji które s niewidoczne dla pozostałych uytkowników systemu. Wycofanie dokonanych zmian z bazy danych. Jawne zakoczenie transakcji Rafał Kowalski 30 5

6 Składnia UPDATE Składnia DELETE START UPDATE tabela STOP SET kolumna = wyraenie TRUNCATE TABLE tabela START DELETE FROM tabela STOP WHERE warunek S wyboru WHERE warunek S wyboru Rafał Kowalski 31 Rafał Kowalski 32 CREATE TABLE Przykład 12 MODYFIKOWA SCHEMATÓW DDL CREATE ALTER DROP Rafał Kowalski 33 '&" %&* -%./ (!"0 2/ "%"& 3/ ' *'(&" &. ".5 $ '&" %&* -%./ (!"0 12/ "%"& 3/ ' *'(&" &. & 4444 ".5 $ Rafał Kowalski inline 34 CREATE TABLE Przykład 34 '&" %&* -%./ * -*0 66 (!"0 12/ * (* "%"& 3/ ' *'(&" &. *&& 4444 ".5 *"* 7 $ wyłcznie inline! '&" %&* -%./ (!"0 12/ * (* "%"& 3/ ' *'(&" out-of-line &. ".5 * -*0 66%&* -% *&& 4444 *"* 7" $ Rafał Kowalski 35 START CREATE TABLE nazwa kolumny CONSTRAINT nazwa tabeli typ danych nazwa ograniczenia CREATE TABLE Składnia ( Ograniczenie integralnoci kolumny Ograniczenie integralnoci tabeli Rafał Kowalski 36 STOP 6

7 warunek integralnoci kolumny CREATE TABLE Składnia warunek integralnoci tabeli CREATE TABLE Składnia START DEFAULT warto domniemana STOP START CONSTRAINT nazwa ograniczenia STOP CONSTRAINT CHECK ( PRIMARY KEY nazwa ograniczenia warunek logiczny kolumny PRIMARY KEY UNIQUE CHECK ( ( nazwa kolumny warunek logiczny kilku kolumn jednego wiersza UNIQUE NOT NULL REFERENCES nazwa tabeli FOREIGN KEY ( nazwa kolumny ( nazwa kolumny Rafał Kowalski 37 REFERENCES nazwa tabeli ( nazwa kolumny Rafał Kowalski 38 DROP TABLE Składnia ALTER TABLE Składnia 1 DROP TABLE nazwa tabeli nazwa schematu. CASCADE CONSTRAINTS ALTER TABLE nazwa tabeli SIEDZIBY SIEDZIBA_ID <pk> NUMBER(4 ULICA VARCHAR2(40 KOD_POCZTOWY VARCHAR2(12 MIASTO VARCHAR2(30 STAN_PROWINCJA VARCHAR2(25 KRAJ_ID <fk> CHAR(2 SIEDZIBA_ID WYDZIALY WYDZIAL_ID <pk> NUMBER(4 NAZWA VARCHAR2(30 KIEROWNIK_ID <fk> NUMBER(6 SIEDZIBA_ID <fk> NUMBER(4 nazwa schematu. Nieograniczona ilo { opcji zmian } KRAJ_ID Rafał Kowalski 39 Rafał Kowalski 40 warunki integralnoci tabeli ALTER TABLE Składnia 2 Typy danych SQL 99 1 CONSTRAINT nazwa Oracle MS SQL ZNAKOWE MySQL ANSI PRIMARY KEY ( UNIQUE ( CHECK ( FOREIGN KEY ( REFERENCES lista przecinkowa nazw kolumn klucza lista przecinkowa nazw kolumn Warunek logiczny zawierajcy nazwy kilku kolumn tego samego rekordu lista przecinkowa nazw kolumn Nazwa tabeli PRIMARY KEY nazwa schematu. ( lista przecinkowa nazw kolumn Rafał Kowalski PRIMARY KEY 41 UNIQUE NCHAR(n 2000 NVARCHAR2(n 4000 CLOB 4GB NUMBER(p s NUMBER(38 NUMBER NCHAR(n 4/8000 NVARCHAR(n 4/80 00 TEXT 2GB. UNICODE NUMERIC(p s DECIMAL(p s INT BIGINT TINYINT SMALLINT FLOAT REAL CHAR(n 255 VARCHAR(n 255 SET(w 1 w 2...w n 64 LONGTEXT 4GB MEDIUMTEXT 65kB DECIMAL(md LICZBOWE DOUBLE(ps BIGINT bardzo duo SMALLINT TINYINT FLOAT(p REAL(ps NATIONAL CHAR CHARACTER VARYING (n NUMERIC(ps DECIMAL(ps INTEGER INT SMALLINT FLOAT float 126 bit DOUBLE PRECISION REAL float 64 bit Rafał Kowalski 42 7

8 Typy danych SQL 99 2 Typy danych SQL 99 3 Oracle BLOB 4GB BFILE outside database MS SQL IMAGE 2GB BINARY 8KB VARBINARRAY 8KB BIT(01NULL BEZ INDEKSOWANIA! Zajmuj bajt pamici BINARNE MySQL LONGBLOB MEDIUMBLOB LOGICZNE ANSI Binary Large Object Wartoci logiki Łukasiewicza: TRUE BIT BOOL=tinyint(1 FALSE UNKNOWN (NULL. DATE Oracle BC AD TIMESTAMP MS SQL DATETIME 1/1/ /31/9999 8B dokładno 333 ms. SMALLDATETIME 1/1/ /6/2079 4B dokładno 1 m. TIMESTAMP DATA I CZAS DATE DATETIME :00:00 DATE :59:59 TIMESTAMP TIMESTAMP TIME YEAR MySQL ANSI Rafał Kowalski 43 Rafał Kowalski 44 ROWID Wybrane typy danych serwerów SQL 1 Pozwala na przechowywanie prawie kadego innego podstawowego typu SQL_VARIANT danych SQL Server. Wyjtki stanowi!" #$%&!'!. Jest podobny do typu danych (!$! &!'! RowGUID ENUM('value1''value2'... TYP IMIENNY SET('value1''value2'... PSEUDOKOLUMNA - Unikalny adres wiersza tabeli w bazie danych (typu: tekstowego. Budowanie identyfikatorów w bazach rozproszonych. TYP ZBIOROWY ORACLE MS SQL MySQL Kolumna typu tekstowego która moe przybiera wartoci wyłcznie z wylistowanego zbioru zawierajcego maksymalnie rónych wartoci. Kolumna typu tekstowego która moe zawiera od 0 do 64 elementów zbioru. Rafał Kowalski 45 0 (0" 8 (%"& 138 $ 0 (0"14444$ UWAGA NA POLA TEKSTOWE!!! :; :4499(%"& 9944:< ; : 0 (0"$ ; < ; ======== ======== Rafał Kowalski 46 Numerowanie automatyczne (AUTONUMEROWA 1 MySQL!"#!"0*"'./ (!"0 13/ 6@# $!"# (!"01> (4$?!"#$?!"#$ TYLKO JEDNA taka kolumna w tabeli. SUBINDEKSOWA złoonego klucza głównego. ZEROWA po usuniciu wszystkich wierszy. Rafał Kowalski 47 Numerowanie automatyczne (AUTONUMEROWA 2!"#!"0*"' (!"0 13/ MS SQL SET IDENTITY_INSERT pracownicy ON pozwala na wprowadzanie bezporednie wartoci!"# (!"01> (4$?!"#?!"# ZERUJE LICZNIKA!!! "'&*&>!"#4 TYLKO JEDNA taka kolumna w tabeli. AA"'&"# BC!#D&&!! "%"&"& Rafał Kowalski 48 8

9 CREATE ( ON { } INDEX nazwa tabeli nazwa schematu. nazwa kolumny funkcja kolumn CREATE INDEX Składnia 1 nazwa schematu. nazwa aliasu { } nazwa indeksu Rafał Kowalski 49 PRZETWARZA TRANSAKCYJNE! BEGIN... COMMIT... ROLLBACK... Rafał Kowalski 50 Przetwarzanie Transakcji Spójny cig powizanych ze sob logicznie operacji przetwarzania danych w bazie. SZBD automatycznie synchronizuje i szereguje transakcje tak aby nie powstały konflikty i niespójnoci danych: a metod porzdkowania według etykiet czasowych b metod walidacji c metod blokowania w praktyce komercyjnych baz danych stosuje si wyłcznie blokowanie. Transakcje zatwierdza si poleceniem COMMIT a wycofuje poleceniem ROLLBACK. UWAGA: Polecenia takie jak CREATE/ALTER/DROP GRANT i REVOKE kocz si niejawnym poleceniem COMMIT. Rafał Kowalski 51 ATOMOWO (ang. atomicity Własnoci transakcji Wszystkie akcje tworzce transakcj musz zosta wykonane w całoci. Transakcja moe by zatwierdzona lub wycofana przez uytkownika. Wycofanie transakcji wie si z odtworzeniem pierwotnego stanu wszystkich zmienionych atrybutów. Zatwierdzona przez uytkownika transakcja moe zosta wycofana przez SZBD w przypadku niemoliwoci jej wypełnienia. Rafał Kowalski 52 SPÓJNO (ang. consistency IZOLACJA (ang. Isolation TRWAŁO (ang. Durability Własnoci transakcji Zatwierdzona transakcja przeprowadza baz z jednego stanu spójnego do innego stanu spójnego (adne z ogranicze integralnociowych nie jest naruszone. Zmiany dokonywane w bazie danych podczas trwania transakcji jednego uytkownika bd widoczne przez innych uytkowników dopiero po zatwierdzeniu transakcji. Po zatwierdzeniu transakcji zmodyfikowane informacje pozostaj trwale zapamitane w bazie danych. Rafał Kowalski 53 Niepodane zjawiska współdzielenia danych Błdne odczyty (ang. dirty reads Standardy ANSI/ISO SQL i SQL92 okrelaj 3 niepodane zjawiska zakłócajce integralno danych i 4 poziomy izolacji dla ochrony przed nimi. Transakcja odczytuje dane czciowo nadpisane przez inny proces ale jeszcze nie zatwierdzone (commited. Niepowtarzalne odczyty (ang. fuzzy reads Transakcja odczytuje ponownie dane i stwierdza ich rónice spowodowane przez inny proces który zatwierdził swoj transakcj. Złudne odczyty (ang. phantom read Ponowne wykonanie zapytania (query oddaje inny zestaw wierszy uzupełniony o wykonane i zatwierdzone w midzyczasie transakcje. Rafał Kowalski 54 9

10 Poziomy izolowania transakcji Normalizacja - Wstp Poziom Read uncommitted Read committed Repeatable read Serializable Błdne odczyty Niepowtarzalne odczyty Złudne odczyty Technika działania stosowana podczas tworzenia relacyjnych baz danych. Teoria normalizacji jest oparta na zestawie Postaci Normalnych. Relacja jest w okrelonej postaci normalnej gdy spełnia odpowiedni zestaw ogranicze. Aktualnie rozrónia si pi postaci normalnych z których pierwsze trzy wprowadził E.F. Codd i zastosował do nich okrelenia: 1NF 2NF i 3NF. Proces normalizacji jest (zazwyczaj koczony po osigniciu 3NF która w wikszoci praktycznych zastosowa uznawana jest za wystarczajc. Przekształcanie relacji do zaawansowanych postaci normalnych dotyczy tabel które posiadaj wicej ni 3 atrybuty i kady z nich pełni funkcj klucza. Rafał Kowalski 55 Rafał Kowalski 56 Id_pracownika Nazwisko Kudłaty Pryszczaty Pijcy Ponura Kulawy Samotny Stanisław Mieczysław Gustaw Mariola Franciszek Jan Imie Przykład złego projektu? Nazwa wydziału transport magazyn transport spedycja spedycja kadry Eliminowanie istnienia wielu (rónych kopii tej samej informacji. Pijcy Gustaw Pryszczaty Mieczysław Pijcy Gustaw Ponura Mariola Ponura Mariola Samotny Jan Kierownik Sztuczne zalenoci funkcjonalne obcych Problemy spójnoci informacji w sytuacji atrybutów Eliminowanie które musz zalenoci by wprowadzane i potrzeby wprowadzenia informacji o funkcjonalnej modyfikowane rónych wspólnie. atrybutów. istnieniu działu produkcja w którym aktualnie nikt nie pracuje. Rafał Kowalski 57 Po co normalizowa? Uniknicie problemów i potencjalnych przyczyn błdów zwizanych z: Nadmiarowo danych. Efekt uboczny usunicia: Co bdzie jeli usuniemy rekord pracownika z identyfikatorem 6?: Stracimy informacje o istnieniu wydziału kadry. Efekt uboczny modyfikacji: Jeeli Ponura Mariola wyjdzie za m i zmieni nazwisko na Wesoła to trzeba bdzie dokona licznych modyfikacji w rónych atrybutach wielu rekordów bazy danych. Efekt uboczny wstawienia: Jak (bez naruszenia spójnoci informacyjnej bazy danych wprowadzi informacj o istnieniu działu produkcja w którym aktualnie nikt nie pracuje. Rafał Kowalski 58 NORMALIZACJA INTUICYJNA - definicja Zaleno Funkcjonalna - DEFINICJA Przygldaj si modelowi danych i zadawaj sobie (w mylach pytania. Jeeli sytuacja tego wymaga zmieniaj posta modelu danych. Prac zakocz dopiero wtedy gdy nie bdziesz potrzebował niczego zmienia. Czy na pewno zidentyfikowałem kad informacj majc znaczenie dla systemu? Przed wprowadzeniem definicji postaci normalnych naley sformułowa dwie niezbdne definicje zalenoci funkcjonalnej atrybutów relacji. Koncepcja zalenoci funkcjonalnej ley u podstaw pierwszych trzech kroków normalizacyjnych. Czy nie istniej atrybuty które powinny (przypadkiem nalee do innych relacjii? Czy atrybut nie ma czasem oddzielnego znaczenia jako pewna cało i by moe lepiej modelowa go jako osobn relacj? Czy kady zwizek jest naprawd istotny a nie np. potrzebny tylko podczas wykonywania pewnej funkcji? (#'!"&& E&('-#%"(-" %" #-F!"&G(# '0"&% FH#%"" E %"&E %&EE&'&E& E"I Atrybut Y relacji R pozostaje w Zalenoci Funkcjonalnej od atrybutu X relacji R wtedy i tylko DEFINICJA wtedy gdy z kad wartoci atrybutu X jest zawsze skojarzona ta sama warto atrybutu Y. notacja: R.x >; R.y Rafał Kowalski 59 Rafał Kowalski 60 10

11 Pełna Zaleno Funkcjonalna - DEFINICJA NORMALIZACJA Dotyczy relacji posiadajcych klucze główne złoone z kilku atrybutów. Atrybut Y relacji R pozostaje w Pełnej Zalenoci Funkcjonalnej od klucza K relacji R wtedy i tylko wtedy DEFINICJA gdy jest zaleny funkcjonalnie od X i nie jest zaleny funkcjonalnie od adnej kombinacji atrybutów tworzcych klucz K. DATA NAZWA_LINI LOTNISKO_Z LOTNISKO_DO PRODUCENT MODEL POJEMNOSC :00 SWISAIR TORU WARSZAWA JAK :00 PACANOW-AI PIASECZNO WARSZAWA MIG :00 PLL LOT GARWOLIN WARSZAWA PZL :00 PLL LOT GÓRA KALWARIA W-WA IL :00 PANAM WARSZAWA WESOŁA SU :00 TWA SOCHACZEW W-WA SU 17 1 STAN1 IMIE1 NAZW1 STAN2 IMIE2 NAZW2 STAN3 IMIE3 NAZW3 kapitan MAŁGORZATA CISZEWSKA 2-gi pilot DONATA SOKÓŁ naw igator WANDA MICHALSKA kapitan JOLANTA KISZAKIEWICZ 2-gi pilot ELBIETA KALINOWSKA naw igator AGSZKA WINNICKA kapitan ZBIGW SŁOMSKA 2-gi pilot URSZULA PIETKIEWICZ naw igator KASIA ANNA kapitan JAN PIASECKI naw igator MONIKA ROMAN kapitan LUCYNA KRCIK 2-gi pilot EDYTA PAWLUCZUK naw igator BEATA BIELSKA kapitan EWA REBKOWSKA 2-gi pilot ANNA JDRZEJEWSKA naw igator JANINA PIETRASZEWSKI Rafał Kowalski 61 Rafał Kowalski 62 1NF LOT NUMER_LOTU DATA NAZWA_PRZEWOZNIKA NAZWA_LOTNISKA_POCZATKOWEGO NAZWA_LOTNISKA_DOCELOWEGO TYP_SAMOLOTU MODEL_SAMOLOTU LICZBA_PASAZEROW STANOWISKO1 NAZWISKO1 IMIE1 STANOWISKO2 NAZWISKO2 IMIE2 STANOWISKO3 NAZWISKO3 IMIE3 CZLONEK_ZALOGI IDENTYFIKATOR_ZALOGI STANOWISKO NAZWISKO IMIE Pierwsza Posta Normalna (1NF Tabela (encja jest w 1NF: Posiada okrelony klucz główny. Nie posiada powtarzajcych si atrybutów. Jeli atrybut posiada kilka wartoci w jednej krotce to definiujemy now tabel (encj opisan przez ten atrybut. Obslugiwany przez Przydzielony do LOT NUMER_LOTU DATA NAZWA_PRZEWOZNIKA NAZWA_LOTNISKA_POCZATKOWEGO NAZWA_LOTNISKA_DOCELOWEGO TYP_SAMOLOTU MODEL_SAMOLOTU LICZBA_PASAZEROW Rafał Kowalski 63 CZLONEK_ZALOGI IDENTYFIKATOR_ZALOGI STANOWISKO NAZWISKO IMIE Przydzielony do Obslugiwany przez DATA LOT stanowi podstawe zgodny z 2 NF Druga Posta Normalna (2NF Tablela (encja jest w 2NF: Jeeli encja posiada klucz główny złoony z kilku atrybutów to wszystkie atrybuty zale tylko od całego klucza głównego. Jeeli atrybut zaley tylko od czci klucza głównego to ten atrybut i ta cz identyfikatora tworz podstaw nowej encji. TRASA_LOTU NUMER_LOTU NAZWA_PRZEWOZNIKA NAZWA_LOTNISKA_POCZATKOWEGO NAZWA_LOTNISKA_DOCELOWEGO TYP_SAMOLOTU MODEL_SAMOLOTU LICZBA_PASAZEROW Rafał Kowalski 64 Trzecia Posta Normalna (3NF STANOWISKO ID_STANOWISKA NAZWA na jest podstawa dotyczy PRZYDZIAL_ZALOGI PRACOWNIK IDENTYFIKATOR_PRACOWNIKA NAZWISKO IMIE otrzymuje FIRMA_PRZEWOZOWA ID_PRZEWOZNIKA NAZWA_PRZEWOZNIKA wykonuje obslugiwana przez Tabela (encja jest w 3NF: Wszystkie atrybuty encji zale bezporednio od klucza głównego. Jeeli jaki atrybut zaley od innego atrybutu który nie jest czci klucza głównego to atrybuty te tworz podstaw nowej encji. SAMOLOT ID_SAMOLOTU TYP MODEL LICZBA_PASAZEROW 3 NF do odbycia obslugiwany przez LOT DATA stanowi podstawe zgodny z wykorzystany do TRASA_LOTU NUMER_LOTU na pokladzie z LOTNISKO jest poczatkiem ID_LOTNISKA do jest koncem NAZWA Rafał Kowalski 65 11

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

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

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

Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1

Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1 Tworzenie tabel Tabela podstawowa struktura, na której zbudowana jest relacyjna baza danych. Jest to zbiór kolumn (atrybutów) o ustalonych właściwościach, w których przechowuje się dane. Dane te są reprezentowane

Bardziej szczegółowo

Wykład 8. SQL praca z tabelami 5

Wykład 8. SQL praca z tabelami 5 Wykład 8 SQL praca z tabelami 5 Podzapytania to mechanizm pozwalający wykorzystywać wyniki jednego zapytania w innym zapytaniu. Nazywane często zapytaniami zagnieżdżonymi. Są stosowane z zapytaniami typu

Bardziej szczegółowo

Bazy danych. Plan wykładu. Podzapytania - wskazówki. Podzapytania po FROM. Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych.

Bazy danych. Plan wykładu. Podzapytania - wskazówki. Podzapytania po FROM. Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych. Plan wykładu azy danych Wykład 5: Zalenoci wielowartociowe. Sprowadzanie do postaci normalnych. Dokoczenie SQL Zalenoci wielowartociowe zwarta posta normalna Dekompozycja do 4NF Przykład sprowadzanie do

Bardziej szczegółowo

Relacyjne bazy danych. Podstawy SQL

Relacyjne bazy danych. Podstawy SQL Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umożliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.

Bardziej szczegółowo

Bazy danych 9. SQL Klucze obce Transakcje

Bazy danych 9. SQL Klucze obce Transakcje Bazy danych 9. SQL Klucze obce Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Klucze obce Klucze obce powiazanie indeksowanej kolumny jakiejś tabeli z indeksowana kolumna

Bardziej szczegółowo

Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik

Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Blaski i cienie wyzwalaczy w relacyjnych bazach danych. Mgr inż. Andrzej Ptasznik Technologia Przykłady praktycznych zastosowań wyzwalaczy będą omawiane na bazie systemu MS SQL Server 2005 Wprowadzenie

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

Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2.

Wprowadzenie do BD Operacje na bazie i tabelach Co poza zapytaniami? Algebra relacji. Bazy Danych i Systemy informacyjne Wykład 2. Bazy Danych i Systemy informacyjne Wykład 2 Piotr Syga 16.10.2017 Dodawanie, usuwanie i zmienianie rekordów Wstawianie rekordu wstawianie do tabeli INSERT INTO A VALUES ( fioletowy, okrągły, słodko-kwaśny

Bardziej szczegółowo

Bazy danych - Materiały do laboratoriów VIII

Bazy danych - Materiały do laboratoriów VIII Bazy danych - Materiały do laboratoriów VIII dr inż. Olga Siedlecka-Lamch Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska 23 kwietnia 2011 roku Polecenie COMMIT i ROLLBACK Polecenie

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

Bazy danych Podstawy teoretyczne

Bazy danych Podstawy teoretyczne Pojcia podstawowe Baza Danych jest to zbiór danych o okrelonej strukturze zapisany w nieulotnej pamici, mogcy zaspokoi potrzeby wielu u!ytkowników korzystajcych z niego w sposóbs selektywny w dogodnym

Bardziej szczegółowo

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

PRZESTRZENNE BAZY DANYCH WYKŁAD 2 PRZESTRZENNE BAZY DANYCH WYKŁAD 2 Baza danych to zbiór plików, które fizycznie przechowują dane oraz system, który nimi zarządza (DBMS, ang. Database Management System). Zadaniem DBMS jest prawidłowe przechowywanie

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

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

Bazy danych 7. SQL podstawy

Bazy danych 7. SQL podstawy Bazy danych 7. SQL podstawy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2005/06 Structured Query Language Używane standardy: SQL92 SQL99 SQL:2003 Żaden dostawca nie jest w pełni zgodny

Bardziej szczegółowo

Bazy danych. Plan wykładu. Podstawy modeli relacyjnych. Diagramy ER. Wykład 3: Relacyjny model danych. SQL

Bazy danych. Plan wykładu. Podstawy modeli relacyjnych. Diagramy ER. Wykład 3: Relacyjny model danych. SQL Plan wykładu Bazy danych Wykład 3: Relacyjny model danych. SQL Diagramy E/R - powtórzenie Relacyjne bazy danych Od diagramów E/R do relacji SQL - podstawy Małgorzata Krtowska Katedra Oprogramowania e-mail:

Bardziej szczegółowo

Bazy danych. Plan wykładu. Pierwsza posta normalna. Druga posta normalna. Wykład 7: Sprowadzanie do postaci normalnych. DDL, DML

Bazy danych. Plan wykładu. Pierwsza posta normalna. Druga posta normalna. Wykład 7: Sprowadzanie do postaci normalnych. DDL, DML Plan wykładu azy danych Wykład 7: Sprowadzanie do postaci normalnych. DDL, DML Przykład sprowadzenia nieznormalizowanej relacji do 3NF SQL instrukcja EXISTS DDL DML (insert) Małgorzata Krtowska Katedra

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

Bazy danych. Plan wykładu. Zalenoci funkcyjne. Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania A B

Bazy danych. Plan wykładu. Zalenoci funkcyjne. Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania A B Plan wykładu Bazy danych Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania Definicja zalenoci funkcyjnych Klucze relacji Reguły dotyczce zalenoci funkcyjnych Domknicie zbioru atrybutów

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

Relacyjne bazy danych. Podstawy SQL

Relacyjne bazy danych. Podstawy SQL Relacyjne bazy danych Podstawy SQL Język SQL SQL (Structured Query Language) język umoŝliwiający dostęp i przetwarzanie danych w bazie danych na poziomie obiektów modelu relacyjnego tj. tabel i perspektyw.

Bardziej szczegółowo

Wykład 4. SQL praca z tabelami 1

Wykład 4. SQL praca z tabelami 1 Wykład 4 SQL praca z tabelami 1 Typy danych Typy liczbowe Typy całkowitoliczbowe Integer types - Typ INTEGER; 32-bitowa liczba ze znakiem z zakresu -2 31 do 2 31 1 - Typ SMALLINT; typ całkowity mniejszy

Bardziej szczegółowo

Aspekty aktywne baz danych

Aspekty aktywne baz danych Aspekty aktywne baz danych Aktywne aspekty baz danych Baza danych powinna zapewniać pewne własności i niezmienniki; Własności te powinny mogą być zapisane do bazy danych, a baza danych powinna zapewniać

Bardziej szczegółowo

Język SQL. Rozdział 9. Język definiowania danych DDL, część 2.

Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. Język SQL. Rozdział 9. Język definiowania danych DDL, część 2. Ograniczenia integralnościowe, modyfikowanie struktury relacji, zarządzanie ograniczeniami. 1 Ograniczenia integralnościowe Służą do weryfikacji

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

Wykład 2. SQL 1 Structured Query Lenguage

Wykład 2. SQL 1 Structured Query Lenguage Wykład 2 SQL 1 Structured Query Lenguage SQL (Structured Query Language) Język zapytań do bazy danych. IBM lata osiemdziesiąte. Stosowany w systemach zarządzania bazami danych (DBMS); Oracle, Paradox,Access,

Bardziej szczegółowo

Aby uruchomić program klienta i połączyć się z serwerem, należy komendę:

Aby uruchomić program klienta i połączyć się z serwerem, należy komendę: Bazy danych. Komunikacja z serwerem Aby połączyć się z serwerem i móc wykonywać czynności związane z obsługą baz, potrzebny jest program klienta. Razem z serwerem MySQL dostępny jest działający w wierszu

Bardziej szczegółowo

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

Podstawy języka SQL. SQL Structured Query Languagestrukturalny Podstawy języka SQL SQL Structured Query Languagestrukturalny język zapytań DDL Język definicji danych (np. tworzenie tabel) DML Język manipulacji danych (np. tworzenie zapytań) DCL Język kontroli danych

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

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

SQL - DDL. 1 Tabele systemowe. 2 Typy danych

SQL - DDL. 1 Tabele systemowe. 2 Typy danych SQL - DDL DDL (ang. data definition language) jest częścią języka zapytań SQL obejmująca tworzenie i zarządzanie (modyfikację, usuwanie i przydzielanie uprawnień) obiektami w bazie danych (tabelami, perspektywami,

Bardziej szczegółowo

Microsoft SQL Server Podstawy T-SQL

Microsoft SQL Server Podstawy T-SQL Itzik Ben-Gan Microsoft SQL Server Podstawy T-SQL 2012 przełożył Leszek Biolik APN Promise, Warszawa 2012 Spis treści Przedmowa.... xiii Wprowadzenie... xv Podziękowania... xix 1 Podstawy zapytań i programowania

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

Projektowanie bazy danych. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Projektowanie bazy danych. Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie bazy danych Jarosław Kuchta Projektowanie Aplikacji Internetowych Możliwości projektowe Relacyjna baza danych Obiektowa baza danych Relacyjno-obiektowa baza danych Inne rozwiązanie (np. XML)

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 2 Typy danych wbudowane użytkownika Tabele organizacja wiersza przechowywanie dużych danych automatyczne

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

Podstawy języka SQL. standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi. Bazy danych s.5-1

Podstawy języka SQL. standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi. Bazy danych s.5-1 Podstawy języka SQL standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi Bazy danych s.5-1 Język SQL SQL (ang. Structured Query Language, strukturalny język zapytań) język

Bardziej szczegółowo

Widok Connections po utworzeniu połączenia. Obszar roboczy

Widok Connections po utworzeniu połączenia. Obszar roboczy Środowisko pracy 1. Baza danych: Oracle 12c - Serwer ELARA - Konta studenckie, dostęp także spoza uczelni - Konfiguracja: https://e.piotrowska.po.opole.pl/index.php?option=conf 2. Środowisko: SQL Developer

Bardziej szczegółowo

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

Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi. Marek Robak Wprowadzenie do języka SQL na przykładzie baz SQLite Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi. Tworzenie tabeli Pierwsza tabela W relacyjnych bazach danych jedna

Bardziej szczegółowo

040 STRUCTURED QUERY LANGUAGE. Prof. dr hab. Marek Wisła

040 STRUCTURED QUERY LANGUAGE. Prof. dr hab. Marek Wisła 040 STRUCTURED QUERY LANGUAGE Prof. dr hab. Marek Wisła SQL strukturalny język zapytań SQL (Structured Query Language) strukturalny język zapytań używany do tworzenia, modyfikowania relacyjnych baz danych

Bardziej szczegółowo

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

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie Programowanie MSQL show databases; - pokazanie jakie bazy danych są dostępne na koncie show databases; - wyświetlenie wszystkich baz danych na serwerze create database nazwa; - za nazwa wstawiamy wybraną

Bardziej szczegółowo

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, 2017 Spis treści O autorze 9 Wprowadzenie 11 Lekcja 1. Zrozumieć SQL 15 Podstawy baz danych 15 Język SQL

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

1 DML - zapytania, część II Grupowanie Operatory zbiorowe DML - modyfikacja 7. 3 DCL - sterowanie danymi 9.

1 DML - zapytania, część II Grupowanie Operatory zbiorowe DML - modyfikacja 7. 3 DCL - sterowanie danymi 9. Plan wykładu Spis treści 1 DML - zapytania, część II 1 1.1 Grupowanie................................... 1 1.2 Operatory zbiorowe............................... 5 2 DML - modyfikacja 7 3 DCL - sterowanie

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

Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska

Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion Autor: Joanna Karwowska SQL zapewnia obsługę: zapytań - wyszukiwanie danych w bazie, operowania danymi - wstawianie, modyfikowanie

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

SQL DDL DML TECHNOLOGIE BAZ DANYCH. Wykład 5: Język DDL i DML. Małgorzata Krętowska

SQL DDL DML TECHNOLOGIE BAZ DANYCH. Wykład 5: Język DDL i DML. Małgorzata Krętowska SQL TECHNOLOGIE BAZ DANYCH Wykład 5: Język DDL i DML. SQL (ang. StructuredQueryLanguage) strukturalny język zapytań używany do tworzenia, modyfikowania relacyjnych baz danych oraz do umieszczania i pobierania

Bardziej szczegółowo

Bazy danych Ćwiczenia projektowe

Bazy danych Ćwiczenia projektowe Bazy danych Ćwiczenia projektowe Przygotował: Piotr Hajder Katedra Informatyki Stosowanej i Modelowania Wydział Inżynierii Metali i Informatyki Przemysłowej, AGH Agenda 01. Typy danych 02. Polecenia DDL

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

SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek

SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek SELECT SELECT kolumna1, kolumna2,, kolumnan FROM tabela wybrane kolumny SELECT * FROM tabela wszystkie kolumny select * from Orders select CustomerID, CompanyName, Country from Customers WHERE SELECT *

Bardziej szczegółowo

TEST E.14 BAZY DANYCH

TEST E.14 BAZY DANYCH TEST E.14 BAZY DANYCH 1 CZAS PRACY: 45 MINUT 1. W celu dodania rekordu do tabeli Pracownicy należy użyd polecenia SQL a. INSERT INTO Pracownicy VALUES ("Jan", "Kowalski"); b. INSERT VALUES (Jan; Kowalski)

Bardziej szczegółowo

Bazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD)

Bazy danych. Plan wykładu. Proces modelowania i implementacji bazy danych. Elementy ERD. Wykład 2: Diagramy zwizków encji (ERD) Plan wykładu Bazy danych Wykład 2: Diagramy zwizków encji (ERD) Diagramy zwizków encji elementy ERD licznoci zwizków podklasy klucze zbiory słabych encji Małgorzata Krtowska Katedra Oprogramowania e-mail:

Bardziej szczegółowo

Oracle PL/SQL. Paweł Rajba.

Oracle PL/SQL. Paweł Rajba. Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 8 Wprowadzenie Definiowanie typu obiektowego Porównywanie obiektów Tabele z obiektami Operacje DML na obiektach Dziedziczenie -

Bardziej szczegółowo

SQL Structured Query Language

SQL Structured Query Language SQL Structured Query Language stworzony na początku lat 70 ubiegłego wieku w IBM przez Donalda Messerly'ego, Donalda Chamberlina oraz Raymonda Boyce'a pod nazwą SEQUEL pierwszy SZBD System R utworzony

Bardziej szczegółowo

Bazy danych. Zaliczenie. Literatura. Strony WWW. Wykład 1: Wprowadzenie do baz danych. Semestr 1

Bazy danych. Zaliczenie. Literatura. Strony WWW. Wykład 1: Wprowadzenie do baz danych. Semestr 1 Zaliczenie Bazy Wykład 1: Wprowadzenie do baz Semestr 1 Wykład: Podstawowe informacje z zakresu baz - relacyjne bazy, DDL, SQL, indeksy, architektura baz Pracownia specjalistyczna: projekt bazy, SQL, Access

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

SQL w praktyce. Miłej i owocnej nauki!!!

SQL w praktyce. Miłej i owocnej nauki!!! SQL w praktyce Niniejsza praca objęta jest prawami autorskimi. Nielegalne jest kopiowanie żadnej częsci tej pracy w żadnej postaci. Niezgodne z prawem tym bardziej jest udostępnianie innym tej pracy odpłatnie

Bardziej szczegółowo

Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, Spis treści

Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, Spis treści Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, 2016 Spis treści Wprowadzenie Podziękowania xiii xvii 1 Podstawy zapytań i programowania T-SQL 1 Podstawy

Bardziej szczegółowo

Bazy danych Transakcje

Bazy danych Transakcje Wstp Pojcia podstawowe: Transakcja - sekwencja (uporzdkowany zbiór) logicznie powizanych operacji na bazie danych, która przeprowadza baz danych z jednego stanu spójnego w inny stan spójny. W!a"no"ci transakcji:

Bardziej szczegółowo

Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas)

Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Dr Michał Tanaś(http://www.amu.edu.pl/~mtanas) Bazy danych podstawowe pojęcia Baza danych jest to zbiór danych zorganizowany zgodnie ze ściśle określonym modelem danych. Model danych to zbiór ścisłych

Bardziej szczegółowo

Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne.

Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne. Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne. 1 Perspektywa Perspektywa (ang. view) jest strukturą

Bardziej szczegółowo

Bazy danych 9. Klucze obce Transakcje. P. F. Góra

Bazy danych 9. Klucze obce Transakcje. P. F. Góra Bazy danych 9. Klucze obce Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2009 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka sposobów. Sposób

Bardziej szczegółowo

Wykład 5. SQL praca z tabelami 2

Wykład 5. SQL praca z tabelami 2 Wykład 5 SQL praca z tabelami 2 Wypełnianie tabel danymi Tabele można wypełniać poprzez standardową instrukcję INSERT INTO: INSERT [INTO] nazwa_tabeli [(kolumna1, kolumna2,, kolumnan)] VALUES (wartosc1,

Bardziej szczegółowo

Instrukcja CREATE TABLE

Instrukcja CREATE TABLE Podstawy języka SQL 2 Instrukcja CREATE TABLE CREATE TABLE tabela (pole_1 typ [(rozmiar)] [NOT NULL] [indeks_1] [, pole_2 typ [(rozmiar)] [NOT NULL] [indeks_2] [,...]] [, CONSTRAINT indeks_wielopolowy

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

SQL (ang. Structured Query Language)

SQL (ang. Structured Query Language) SQL (ang. Structured Query Language) SELECT pobranie danych z bazy, INSERT umieszczenie danych w bazie, UPDATE zmiana danych, DELETE usunięcie danych z bazy. Rozkaz INSERT Rozkaz insert dodaje nowe wiersze

Bardziej szczegółowo

1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) możemy określić do której grupy plików trafi

1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) możemy określić do której grupy plików trafi 1 Zaznacz poprawne stwierdzenia dotyczące grup plików (filegroup) Tworząc tabelę nie możemy określić, do którego pliku trafi, lecz możemy określić do której grupy plików trafi Zawsze istnieje grupa zawierająca

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

Bazy danych 9. Klucze obce Transakcje

Bazy danych 9. Klucze obce Transakcje Bazy danych 9. Klucze obce Transakcje P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2007/08 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka

Bardziej szczegółowo

Model relacyjny. Wykład II

Model relacyjny. Wykład II Model relacyjny został zaproponowany do strukturyzacji danych przez brytyjskiego matematyka Edgarda Franka Codda w 1970 r. Baza danych według definicji Codda to zbiór zmieniających się w czasie relacji

Bardziej szczegółowo

Projekt jest finansowany ze środków Unii Europejskiej, Europejskiego Funduszu Społecznego i budŝetu państwa. Studia Podyplomowe dla Nauczycieli

Projekt jest finansowany ze środków Unii Europejskiej, Europejskiego Funduszu Społecznego i budŝetu państwa. Studia Podyplomowe dla Nauczycieli Projekt jest finansowany ze środków Unii Europejskiej, Europejskiego Funduszu Społecznego i budŝetu państwa Studia Podyplomowe dla Nauczycieli Bazy danych SQL Języki baz danych Interfejs DBMS składa się

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

SQL Structured Query Language

SQL Structured Query Language SQL Structured Query Language stworzony na początku lat 70 ubiegłego wieku w IBM przez Donalda Messerly'ego, Donalda Chamberlina oraz Raymonda Boyce'a pod nazwą SEQUEL pierwszy SZBD System R utworzony

Bardziej szczegółowo

Język SQL. Rozdział 9. Język definiowania danych DDL, cześć 1. Tworzenie relacji, typy danych, wartości domyślne atrybutów, słownik bazy danych.

Język SQL. Rozdział 9. Język definiowania danych DDL, cześć 1. Tworzenie relacji, typy danych, wartości domyślne atrybutów, słownik bazy danych. Język SQL. Rozdział 9. Język definiowania danych DDL, cześć 1. Tworzenie relacji, typy danych, wartości domyślne atrybutów, słownik bazy danych. 1 polecenie CREATE TABLE CREATE TABLE nazwa_relacji Tworzenie

Bardziej szczegółowo

Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT

Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT Studia podyplomowe Inżynieria oprogramowania współfinansowane przez Unię Europejska w ramach Europejskiego Funduszu Społecznego Projekt Studia podyplomowe z zakresu wytwarzania oprogramowania oraz zarządzania

Bardziej szczegółowo

Autor: Joanna Karwowska

Autor: Joanna Karwowska Autor: Joanna Karwowska Klucz podstawowy PRIMARY KEY Klucz kandydujący UNIQUE Klucz alternatywny - klucze kandydujące, które nie zostały wybrane na klucz podstawowy Klucz obcy - REFERENCES Tworząc tabelę,

Bardziej szczegółowo

Wykład 05 Bazy danych

Wykład 05 Bazy danych Wykład 05 Bazy danych Tabela składa się z: Kolumn Wierszy Wartości Nazwa Wartości Opis INT [UNSIGNED] -2^31..2^31-1 lub 0..2^32-1 Zwykłe liczby całkowite VARCHAR(n) n = długość [1-255] Łańcuch znaków o

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

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

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

Szkolenie Oracle SQL podstawy. Terminy. 15 17 lutego 2010 First Minute! 1100zł!

Szkolenie Oracle SQL podstawy. Terminy. 15 17 lutego 2010 First Minute! 1100zł! Szkolenie Oracle SQL podstawy Terminy 15 17 lutego 2010 First Minute! 1100zł! Opis szkolenia Baza danych Oracle od dawna cieszy się zasłużona sławą wśród informatyków. Jej wydajność, szybkość działania

Bardziej szczegółowo

Bazy danych 6. Klucze obce. P. F. Góra

Bazy danych 6. Klucze obce. P. F. Góra Bazy danych 6. Klucze obce P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2018 Dygresja: Metody przechowywania tabel w MySQL Tabele w MySQL moga być przechowywane na kilka sposobów. Sposób ten (żargonowo:

Bardziej szczegółowo

Bazy danych SQL. Wstp. SQL (Structured( Query Language) strukturalny jzyk zapyta

Bazy danych SQL. Wstp. SQL (Structured( Query Language) strukturalny jzyk zapyta Wstp (Structured( Query Language) strukturalny jzyk zapyta Podstawowe cechy jzyka : - zapytania wyszukiwanie danych w bazie danych, - operowanie danymi wstawianie, modyfikacja, usuwanie danych z bazy danych,

Bardziej szczegółowo

Po prawidłowym podłączeniu do serwera MySQL należy wybrać bazę, na której będziesz pracować:

Po prawidłowym podłączeniu do serwera MySQL należy wybrać bazę, na której będziesz pracować: Język SQL (Structured Query Language} służy do manipulowania danymi umieszczonymi w relacyjnych bazach danych. Jest językiem uniwersalnym, dzięki czemu praca na różnych systemach baz danych sprowadza się

Bardziej szczegółowo

Aplikacje bazodanowe. Laboratorium 1. Dawid Poªap Aplikacje bazodanowe - laboratorium 1 Luty, 22, / 37

Aplikacje bazodanowe. Laboratorium 1. Dawid Poªap Aplikacje bazodanowe - laboratorium 1 Luty, 22, / 37 Aplikacje bazodanowe Laboratorium 1 Dawid Poªap Aplikacje bazodanowe - laboratorium 1 Luty, 22, 2017 1 / 37 Plan 1 Informacje wst pne 2 Przygotowanie ±rodowiska do pracy 3 Poj cie bazy danych 4 Relacyjne

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

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

Typy bazy danych Textract

Typy bazy danych Textract Typy bazy danych Typy bazy danych bazy tekstowe, Textract, http://www.textract.com - bazy tekstowe, np. archiwum gazety, dla setek gigabajtów, szybkie wyszukiwanie i indeksacja informacji bazy danych bez

Bardziej szczegółowo

Internetowe bazy danych

Internetowe bazy danych Wyższa Szkoła Technologii Teleinformatycznych w Świdnicy Internetowe bazy danych wykład 3 dr inż. Jacek Mazurkiewicz e-mail: Jacek.Mazurkiewicz@pwr.wroc.pl Typy tabel MySQL domyślny MyISAM inne możliwe:

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

Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane.

Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane. 1 Perspektywa Perspektywa (ang. view) jest strukturą logiczną

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

PODSTAWY BAZ DANYCH 13. PL/SQL

PODSTAWY BAZ DANYCH 13. PL/SQL PODSTAWY BAZ DANYCH 13. PL/SQL 1 Wprowadzenie do języka PL/SQL Język PL/SQL - rozszerzenie SQL o elementy programowania proceduralnego. Możliwość wykorzystywania: zmiennych i stałych, instrukcji sterujących

Bardziej szczegółowo

Bazy danych 5. Samozłaczenie SQL podstawy

Bazy danych 5. Samozłaczenie SQL podstawy Bazy danych 5. Samozłaczenie SQL podstawy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ semestr letni 2007/08 Przykład kolejowy Tworzymy bazę danych zawierajac a (uproszczony) rozkład jazdy pociagów

Bardziej szczegółowo