POLITECHNIKA WROCŁAWSKA WROCŁAWSKIE CENTRUM SIECIOWO-SUPERKOMPUTEROWE. Relacyjne Bazy Danych
|
|
- Mieczysław Markowski
- 8 lat temu
- Przeglądów:
Transkrypt
1 POLITECHNIKA WROCŁAWSKA WROCŁAWSKIE CENTRUM SIECIOWO-SUPERKOMPUTEROWE Relacyjne Bazy Danych mgr inż. Ireneusz Tarnowski Ireneusz Tarnowski, Relacyjne Bazy Danych
2 PLAN SEMINARIUM 1. Wprowadzenie (definicje - małe powtórzenie) 2. System Zarządzania Bazą danych 3. Relacyjne bazy danych 4. Dane, struktury, relacje 5. Projektowanie bazy danych 6. MySQL jako SZBD 7. Oracle Database jako SZBD 8. Język SQL 9. Aplikacja bazodanowa Ireneusz Tarnowski, Relacyjne Bazy Danych
3 Wprowadzenie (definicje - małe powtórzenie) Dana (ang. data) - najmniejsza, elementarna jednostka informacji o obiekcie będąca przedmiotem przetwarzania komputerowego. Rekord (ang. record) - zwany także krotką lub wierszem, to pozioma struktura danych opisująca jeden obiekt. Rekord składa się z pól opisujących dokładnie cechy obiektu Pole (ang. field) - zwane także atrybutem lub kolumną, to struktura danych opisująca pojedynczą daną w rekordzie Tabela (ang. table) - nazywamy zbiór rekordów opisujących obiekty w sposób ujednolicony tj. każdy rekord posiada te same nazwy pól Ireneusz Tarnowski, Relacyjne Bazy Danych
4 Wprowadzenie (definicje - małe powtórzenie) Klucz podstawowy (ang. primary key) Klucz podstawowy (klucz główny) to jedno lub więcej pól, których wartość jednoznacznie identyfikuje każdy rekord w tabeli (cecha: unikatowość). Klucz jest nazywany kluczem obcym (ang. foreign key), jeśli odwołuje się do klucza głównego innej tabeli. Klucz podstawowy jednopolowy (ang. single primary key) Jeśli istnieje pole zawierające dane unikatowe, można je zadeklarować jako klucz podstawowy. Klucz podstawowy wielopolowy zwany też kluczem złożonym (ang. composed key) Gdy żadne z pól nie gwarantuje unikatowości wartości w nim zawartych, należy utworzyć klucz podstawowy złożonego z kilku pól. Ireneusz Tarnowski, Relacyjne Bazy Danych
5 System Zarządzania Bazą Danych (1) System Zarządzania Bazą Danych, SZBD (ang. Database Management System, DBMS) (potocznie: serwer baz danych, system baz danych) to oprogramowanie bądź system informatyczny służący do zarządzania komputerowymi bazami danych. Systemy baz danych mogą być sieciowymi serwerami baz danych lub udostępniać bazę danych lokalnie. Większość obecnie spotykanych systemów działa w trybie klient-serwer, gdzie baza danych jest udostępniana klientom przez SZBD będący serwerem. Najpopularnijesz dostępne systemy baz danych (Baza danych + System Zarządznaia Bazą Danych): klient-serwer: Oracle, MySQL, PosgreSQL, DB2, msql, dbase, Microsoft SQL Server, Inter- Base, Informix Dynamic Server, Firebird lokalne:microsoft Access, SQLite Ireneusz Tarnowski, Relacyjne Bazy Danych
6 System Zarządzania Bazą Danych (2) ZSBD musi zapewnić: - środki do gromadzenia, utrzymywania i administrowania trwałymi i masowymi zbiorami danych, - środki zapewniające spójność i bezpieczeństwo danych, - sprawny dostęp do danych (zwykle poprzez język zapytań, np. SQL), - środki programistyczne służące do aktualizacji/przetwarzania danych (API dla popularnych języków programowania), - jednoczesny dostęp do danych dla wielu użytkowników (z reguły realizowany poprzez transakcje), - środki pozwalające na regulację dostępu do danych (autoryzację), - środki pozwalające na odtworzenie zawartości bazy danych po awarii, - środki do zarządzania katalogami, schematami i innymi metadanymi, - środki optymalizujące zajętość pamięci oraz czas dostępu (np. indeksy), - środki do pracy lub współdziałania w środowiskach rozproszonych. Ireneusz Tarnowski, Relacyjne Bazy Danych
7 Relacyjne bazy danych (1) Relacyjna baza danych (RDBMS ang. Relational Database Management Systems) oparta jest ma modelu relacyjnym. Model relacyjny to model baz danych oparty na postulatach relacyjności. Twórcą teorii relacyjnych baz danych jest nieżyjący już Edgar Frank Codd. Dane w modelu relacyjnym są reprezentowane jako zbiór krotek, które w znormalizowanych bazach danych są unikatowe i nie gra roli ich kolejność. Dostęp do nich jest realizowany za pomocą algebry relacji - czyli dostęp do danych definiujemy poprzez operatory relacyjne takie jak: rzutowanie, selekcja, złączenie, suma, różnica, produkt kartezjański. Ograniczenie redundancji danych dokonuje się w procesie przejścia do kolejnych postaci normalnych. Zbiory danych powiązane są logicznie za pomocą encji. W ten sposób uniezależnia się widziany przez użytkownika obraz bazy danych od jej postaci fizycznej. Ireneusz Tarnowski, Relacyjne Bazy Danych
8 Relacyjne bazy danych (2) W modelu relacyjnym każda relacja (prezentowana w postaci np. tabeli) posiada nagłówek i zawartość. Nagłówek relacji to zbiór atrybutów, gdzie atrybut jest parą nazwa atrybutu:nazwa typu, zawartość natomiast jest zbiorem krotek (reprezentowanych najczęściej w postaci wiersza lecz ściślej określane jako zbiór wartości atrybutów). Sukces relacyjnych baz danych leży w istnieniu formalnej matematycznej struktury zwanej rachunkiem relacyjnym, pozwalającym przeprowadzić automatyczne sprawdzanie pewnych konstrukcji. Gwarantuje to wykonalność pewnych operacji i spójność zbiorów danych. Ireneusz Tarnowski, Relacyjne Bazy Danych
9 Relacje (1) Relacja (ang. relation) - informacja na temat sposobu poprawnego łączenia powiązanych danych w logiczną całość. Typy relacji: Relacja jeden-do-jednego (1:1) W relacji 1:1 każdy rekord w tabeli A może mieć tylko jeden dopasowany rekord z tabeli B, i tak samo każdy rekord w tabeli B może mieć tylko jeden dopasowany rekord z tabeli A. Ten typ relacji spotyka się rzadko, ponieważ większość informacji powiązanych w ten sposób byłoby zawartych w jednej tabeli. Relacji 1:1 można używać do podziału tabeli z wieloma polami, do odizolowania części tabeli ze względów bezpieczeństwa, albo do przechowania informacji odnoszącej się tylko do podzbioru tabeli głównej. Ireneusz Tarnowski, Relacyjne Bazy Danych
10 Relacje (2) Typy relacji: (c.d.) Relacja jeden-do-wielu Relacja (1:n) W relacji jeden-do-wielu rekord w tabeli A może mieć wiele dopasowanych do niego rekordów z tabeli B, ale rekord w tabeli B ma tylko jeden dopasowany rekord w tabeli A. Relacja wiele-do-wielu Relacja (m:n) W relacji m:n, rekord w tabeli A może mieć wiele dopasowanych do niego rekordów z tabeli B i tak samo rekord w tabeli B może mieć wiele dopasowanych do niego rekordów z tabeli A. Jest to możliwe tylko przez zdefiniowanie trzeciej tabeli (nazywanej tabelą łącza), której klucz podstawowy składa się z dwóch pól - kluczy obcych z tabel A i B. Relacja m:n jest w istocie dwiema relacjami 1:n z trzecią tabelą. Ireneusz Tarnowski, Relacyjne Bazy Danych
11 Projektowanie bazy danych (1) - Przechowywanie wymaganych danych podstawowa struktura musi być prawidłowa w pierwszej iteracji - Tworzenie wymaganych relacji schemat musi pozwolić na utworzenie relacji między tabelami - Rozwiązywanie problemów baza musi rozwiązywać problemy - a nie być ich źródłem - Wymuszenie integralnosci danych unikać degradacji danych oraz niekompletnych danych - Efektywny dostęp do danych tworzyć z zasadami sztuki; na końcu optymalizacja - Rozszerzalność nie zablokować rozbudowy bazy danych oraz tabel Ireneusz Tarnowski, Relacyjne Bazy Danych
12 Projektowanie bazy danych (2) - Zbieranie informacji - Projekt logiczny - Określanie encji - Konwersja encji na tabele - Określanie relacji i liczebności - Diagram związkow encji - Konwersja do modelu fizycznego - Tworzenie kluczy głównych - Tworzneie kluczy obcych - Ustalanie typów danych - Dokończenie definicji tabel - Sprawdzenie projektu - Normalizacja (zmiana postaci normalnej 1 2 3) - Wzorce projektowe (relacja wiele-do-wielu, hierarchia, rekurencja) Ireneusz Tarnowski, Relacyjne Bazy Danych
13 MySQL jako SZBD MySQL jest szybkim, wielowątkowym serwerem relacyjnych baz danych obsługującym język zapytań baz danych - SQL. Pracuje z wieloma użytkownikami jednocześnie, jest szybki, wydajny, ma wbudowane wydajne i bezpieczne mechanizmy transakcji i widoków. Działa na niemal wszystkich systemach operacyjnych, tj. Microsoft Windows, Oracle (Sun) Solaris, FreeBSD, IBM i5/os, IBM AIX, Mac OS X HP-UX, Red Hat Enterprise Linux, SuSE Linux Enterprise Server, Linux - Generic (Ubuntu, Fedora, Debian, CentOS,...). Mechanizmy HA: replikacja, klaster Ireneusz Tarnowski, Relacyjne Bazy Danych
14 MySQL - licencjonowanie, ograniczenia Dwa modele licencyjne 1. GNU General Public License (Community Edition) 2. komercyjne (Enterprise Edition) Ograniczenia związane są z możliwością przetworzenia rekordów oraz wielkościami plików bazy danych (ograniczenie wynikające z systemu plików OS). Otwarte źródła (Open Source) Uznaje się, że: doskonale pracuje do rekordów, producent zaleca nie więcej niż rekordów, pracujące sa instalacje z tabel i rekordów. Ireneusz Tarnowski, Relacyjne Bazy Danych
15 MySQL w praktyce (1) > mysql -u root -p Enter password: ******* Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 456 to server version Type help for help. mysql> use - polecenie służące do wyboru interesującej nas bazy danych (nie podaliśmy nazwy bazy danych w sposób jawny lub chcemy zmienić bazę danych, z którą do tej pory interaktywnie pracowaliśmy). show databases; - wyświetla nazwy baz danych na serwerze (do których mamy dostęp). show tables; - wyświetla listę wszystkich tabel wybranej bazy danych. Ireneusz Tarnowski, Relacyjne Bazy Danych
16 MySQL w praktyce (2) describe nazwa tabeli; - wyświetla informacje o strukturze tabeli (nazwy kolumn wybranej tabeli, typy danych kolumn, domyślne wartościach pól danych, które znajdą się w rekordach). source - polecenia SQL w zebrane pliku tekstowym, który jako parametr polecenia source (wykonamy polecenia zebrane w pliku). pager - polecenie pager nazwa programu możemy uruchomić odpowiedni program nazwa programu aby włączyć odpowiedni mechanizm przeglądania wyników przez formatowanie ich na ekranie zewnętrznym programem. Takim programem może być albo program less albo more. Kiedy chcemy wyłączyć mechanizm stronicowania można wydać polecenie nopager. tee - polecenie używane do zapisu sesji pracy z bazą danych (podając jednocześnie nazwę pliku jako parametr wywołania). Od momentu wydania tego polecenia wszystkie polecenia będą zapisywane do pliku. Aby zakończy zapisywanie do pliku wystarczy wydać polecenie notee. Ireneusz Tarnowski, Relacyjne Bazy Danych
17 Oracle Database Oracle Enterprise Edition, Oracle Standard Edition, Oracle Standard Edition One bazy komercyjne o różnej funkcjonalności, najnowszy wydanie Oracle Database 11g, Oracle Database Express Edition (Oracle Database XE) wersja darmowa, ograniczona (m.in. jeden procesor, obsługa maksymalnie 4 GB danych użytkownika, etc.), udostępniona od wersji 10g. Ireneusz Tarnowski, Relacyjne Bazy Danych
18 Oracle Database - architektura Ireneusz Tarnowski, Relacyjne Bazy Danych
19 PL/SQL - co to jest? Proceduralne rozszerzenie programistyczne języka SQL, stworzone, udostępnione przez Oracle i przeznaczone do obsługi narzędzi tej firmy, Wywodzi się z języka ADA, wiele pomysłów jest zapożyczonych z tego języka, PL w nazwie to skrót od procedural language (z ang.), czyli języka proceduralnego, Jest chroniony prawami autorskimi, Jest językiem trzeciej generacji 3GL, Początkowo jedynie proceduralny, obecnie możemy go traktować jako obiektowy, Powstał jako odpowiedź na zapotrzebowanie samych pracowników firmy Oracle oraz zewnętrznych użytkowników jej produktów. Ireneusz Tarnowski, Relacyjne Bazy Danych
20 PL/SQL zalety Łączy SQL z konstrukcjami proceduralnymi SQL jest prosty, ale ma ograniczone możliwości, Poprawia wydajność pozwala przetwarzać bloki instrukcji, a nie pojedyncze zapytania SQL, Modularyzacja pozwala na tworzenie bloków, które mogą skupiać logicznie powiązane wyrażenia, zagnieżdżać bloki, dzielić program na mniejsze logiczne jednostki, to pozwala na łatwiejsze utrzymywanie i debugowanie kodu, Jest zintegrowany z innymi narzędziami Oracle (Reprots, Forms), dzięki temu kod przetwarzany jest przez lokalny silnik a do bazy danych przesyłane są tylko zapytania SQL, Jest przenośny działa tak samo na różnych platformach i w różnych systemach operacyjnych, Posiada obsługę wyjątków Ireneusz Tarnowski, Relacyjne Bazy Danych
21 Oracle SQL*Plus Podstawowy interfejs bazy danych niezależnie od wersji, Dołączany do wszystkich wersji serwera bazodanowego, Dostępny z poziomu serwera i klienta, Wykorzystywane poprzez wiersz poleceń, graficzny interfejs bądź przeglądarkę, Jest zawsze dostępny i niezmienny. Ireneusz Tarnowski, Relacyjne Bazy Danych
22 Oracle SQL Developer Darmowe, graficzne narzędzie dla programistów Oracle, Wspomaga i ułatwia pracę z bazą danych, Ułatwia przeglądanie obiektów bazy i zarządzanie nimi, wykonywanie zapytań i skryptów, edycję i debugowanie poleceń PL/SQL, kreowanie raportów, Posiada udogodnienia typu: podpowiedzi, kolorowanie kodu, etc. Ireneusz Tarnowski, Relacyjne Bazy Danych
23 Oracle JDeveloper Wymaga licencji w przypadku zastosowań komercyjnych, darmowy w przypadku gdy używany w celach niekomercyjnych, Od wersji 9i umożliwia tworzenie, pielęgnację i diagnozowanie kodu PL/SQL, JDeveloper 10g pozwala na: wyświetlanie wszystkich obiektów bazodanowych, edycję kodu PL/SQL oraz dostarcza szablony kodu, porady w sprawie optymalizacji SQL i mechanizmy diagnostyczne. Ireneusz Tarnowski, Relacyjne Bazy Danych
24 Język SQL SQL (ang. Structured Query Language) strukturalny język zapytań używany do tworzenia, modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych. SQL - standard w komunikacji z serwerami relacyjnych baz danych; W 1986 roku SQL stał się oficjalnym standardem, wspieranym przez Międzynarodową Organizację Normalizacyjną (ISO) oraz Amerykański Narodowy Instytut Normalizacji (ANSI). Język SQL pozwala wprowadzać zmiany w strukturze bazy danych, jak również zmiany danych w bazie i wybieranie informacji z bazy danych. Język ten opiera się na silniku bazy danych, który pozwala zadawać w języku SQL pewnego rodzaju pytania (kwerendy) i wyświetlać dane, które spełniają warunki zapytania. Zapytania SQL mogą także wykonywać operacje wstawiania danych, usuwania danych i ich aktualizacji. Język SQL zapewnia również zarządzanie bazą danych. Informacja o samej bazie przechowywana jest w postaci relacji (tabel) wewnątrz bazy danych. Ireneusz Tarnowski, Relacyjne Bazy Danych
25 Język SQL - typy danych Typ danej - rodzaj danej, czyli forma zapisu informacji: - znakowy (ang.character) - dana może przybierać tylko wartości znaków pisarskich, - liczbowy (ang.number) - dana może przechowywać tylko liczby, - logiczny (ang.logical) - dana może przybierać tylko dwie wartości: prawda, fałsz (tak, nie), - data (ang.date) - dana może przyjmować postać daty i czasu np. rok.miesiąc.dzień godz:min:sek, - alfanumeryczny (ang.alphanumeric) - dana może przybierać wartości znaków ASCII oraz cyfry, - numeryczny (ang.numeric) - wartościami danej mogą być tylko cyfry i znaki: + (plus), - (minus), - walutowy (ang.currency) - dana może przyjmować wartości liczbowe razem z symbolem waluty, - notatnikowy (ang.memo) - dana może być oddzielnym zbiorem tekstowym służącym do przechowywania dowolnych opisów, - binarny (ang.binary) - dana może być np. plikiem dźwiękowym lub filmowym, - graficzny (ang.graphic) - dana przechowuje grafikę np. rysunki, - obiektowy (ang.ole) - dana przechowuje obiekty. Ireneusz Tarnowski, Relacyjne Bazy Danych
26 Język SQL - tworzenie bazy danych CREATE {DATABASE SCHEMA} [IF NOT EXISTS] db_name [create_specification...] create_specification: [DEFAULT] CHARACTER SET [=] charset_name [DEFAULT] COLLATE [=] collation_name Ireneusz Tarnowski, Relacyjne Bazy Danych
27 Język SQL - tworzenie tabel CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name (create_definition,...) [table_option]... create_definition: col_name column_definition [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,...) {INDEX KEY} [index_name] [index_type] (index_col_name,...) column_definition: data_type [NOT NULL NULL] [DEFAULT default_value] [AUTO_INCREMENT] [UNIQUE [KEY] [PRIMARY] KEY] [COMMENT string ] [reference_definition] Ireneusz Tarnowski, Relacyjne Bazy Danych
28 Język SQL - tworzenie tabel data_type: BIT[(length)] TINYINT[(length)] [UNSIGNED] [ZEROFILL] SMALLINT[(length)] [UNSIGNED] [ZEROFILL] MEDIUMINT[(length)] [UNSIGNED] [ZEROFILL] INT[(length)] [UNSIGNED] [ZEROFILL] INTEGER[(length)] [UNSIGNED] [ZEROFILL] BIGINT[(length)] [UNSIGNED] [ZEROFILL] REAL[(length,decimals)] [UNSIGNED] [ZEROFILL] DOUBLE[(length,decimals)] [UNSIGNED] [ZEROFILL] FLOAT[(length,decimals)] [UNSIGNED] [ZEROFILL] DECIMAL[(length[,decimals])] [UNSIGNED] [ZEROFILL] NUMERIC[(length[,decimals])] [UNSIGNED] [ZEROFILL] DATE TIME TIMESTAMP DATETIME YEAR CHAR[(length)][CHARACTER SET charset_name] [COLLATE collation_name] VARCHAR(length) [CHARACTER SET charset_name] [COLLATE collation_name] BINARY[(length)] VARBINARY(length) TINYBLOB MEDIUMBLOB LONGBLOB TINYTEXT [BINARY][CHARACTER SET charset_name] [COLLATE collation_name] TEXT [BINARY][CHARACTER SET charset_name] [COLLATE collation_name] MEDIUMTEXT [BINARY][CHARACTER SET charset_name] [COLLATE collation_name] LONGTEXT [BINARY][CHARACTER SET charset_name] [COLLATE collation_name] ENUM(value1,value2,value3,...) [CHARACTER SET charset_name] [COLLATE collation_name] SET(value1,value2,value3,...) [CHARACTER SET charset_name] [COLLATE collation_name] Ireneusz Tarnowski, Relacyjne Bazy Danych
29 Język SQL - zmiana struktury tabeli ALTER TABLE tbl_name alter_specification [, alter_specification]... alter_specification: ADD [COLUMN] col_name column_definition [FIRST AFTER col_name ] ADD [COLUMN] (col_name column_definition,...) ADD {INDEX KEY} [index_name] [index_type] (index_col_name,...) [index_type] ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_type] (index_col_name,...) [index_type] ADD [CONSTRAINT [symbol]] UNIQUE [INDEX KEY] [index_name] [index_type] (index_col_name,...) [index_type] ADD [FULLTEXT SPATIAL] [INDEX KEY] [index_name] (index_col_name,...) [index_type] ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,...) ALTER [COLUMN] col_name {SET DEFAULT literal DROP DEFAULT} CHANGE [COLUMN] old_col_name new_col_name column_definition [FIRST AFTER col_name] MODIFY [COLUMN] col_name column_definition [FIRST AFTER col_name] DROP [COLUMN] col_name DROP PRIMARY KEY DROP {INDEX KEY} index_name DROP FOREIGN KEY fk_symbol RENAME [TO] new_tbl_name ORDER BY col_name [, col_name]... CONVERT TO CHARACTER SET charset_name [COLLATE collation_name] [DEFAULT] CHARACTER SET [=] charset_name [COLLATE [=] collation_name] Ireneusz Tarnowski, Relacyjne Bazy Danych
30 Język SQL - wstawianie danych INSERT [LOW_PRIORITY DELAYED HIGH_PRIORITY] [IGNORE] [INTO] tbl_name [(col_name,...)] VALUES ({expr DEFAULT},...),(...),... Ireneusz Tarnowski, Relacyjne Bazy Danych
31 Język SQL - modyfikacja danych UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2...] [WHERE where_condition] [ORDER BY...] [LIMIT row_count] Ireneusz Tarnowski, Relacyjne Bazy Danych
32 Język SQL - usuwanie danych DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name [WHERE where_condition] [ORDER BY...] [LIMIT row_count] DELETE [LOW_PRIORITY] [QUICK] [IGNORE] tbl_name[.*] [, tbl_name[.*]]... FROM table_references [WHERE where_condition] Ireneusz Tarnowski, Relacyjne Bazy Danych
33 Język SQL - usuwanie tabeli i bazy danych DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name]... [RESTRICT CASCADE] DROP {DATABASE SCHEMA} [IF EXISTS] db_name Ireneusz Tarnowski, Relacyjne Bazy Danych
34 Język SQL - wydobywanie danych SELECT [ALL DISTINCT DISTINCTROW ] [HIGH_PRIORITY] [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_CACHE SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS] select_expr,... [FROM table_references [WHERE where_condition] [GROUP BY {col_name expr position} [ASC DESC],... [WITH ROLLUP]] [HAVING where_condition] [ORDER BY {col_name expr position} [ASC DESC],...] [LIMIT {[offset,] row_count row_count OFFSET offset}] [PROCEDURE procedure_name(argument_list)] [INTO OUTFILE file_name export_options INTO DUMPFILE file_name INTO var_name [, var_name]] [FOR UPDATE LOCK IN SHARE MODE]] Ireneusz Tarnowski, Relacyjne Bazy Danych
35 Język SQL - uprawneinia GRANT priv_type [(column_list)] ON [object_type] { * *.* db_name.* db_name.tbl_name tbl_name db_name.routine_name } TO user [IDENTIFIED BY [PASSWORD] password ] [WITH with_option [with_option]...] object_type = TABLE FUNCTION PROCEDURE with_option = GRANT OPTION MAX_QUERIES_PER_HOUR count MAX_UPDATES_PER_HOUR count MAX_CONNECTIONS_PER_HOUR count MAX_USER_CONNECTIONS count Ireneusz Tarnowski, Relacyjne Bazy Danych
36 Język SQL - uprawneinia REVOKE priv_type [(column_list)] ON [object_type] { * *.* db_name.* db_name.tbl_name tbl_name db_name.routine_name } FROM user [, user]... REVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user]... CREATE USER DROP USER SET PASSWORD RENAME USER Ireneusz Tarnowski, Relacyjne Bazy Danych
37 Język SQL - złączenia tabel Model relacyjny zakłada, że dane, zawarte w bazie danych, podzielone są na tabele. W pewnych sytuacjach konieczne będzie połączenie danych, zawartych w kilku tabelach, w celu uzyskania tabeli wynikowej. Proces taki nazywamy złączeniem (ang. join), ze względu na sposób łączenia dzieli się operacje złączeń na trzy grupy: - złączenia wewnętrzne - złączenia zewnętrzne - samozłączenia SELECT * FROM tabela1, tabela2 SELECT * FROM tabela1, tabela2 WHERE tabela1.klucz_główny = tabela2.klucz_obcy SELECT * FROM tabela1 JOIN tabela2 ON warunek_złączenia_tabel SELECT * FROM tabela1 LEFT OUTER JOIN tabela2... SELECT * FROM tabela1 RIGHT OUTER JOIN tabela2... SELECT * FROM tabela1 FULL OUTER JOIN tabela2... Ireneusz Tarnowski, Relacyjne Bazy Danych
38 Język SQL - podzapytania Podzapytanie, to instrukcja SELECT zagnieżdżona w innej instrukcji SQL, która dostarcza dla tej drugiej danych wejściowych. Podzapytanie jest zapytaniem zagnieżdżonym. Język SQL nie wprowadza ograniczeń na ilość zagnieżdżeń, w związku z czym zapytanie otaczające też może być podzapytaniem. SELECT * FROM t1 WHERE column1 = (SELECT column1 FROM t2); Ireneusz Tarnowski, Relacyjne Bazy Danych
39 Język SQL - transakcje Transakcja wykonuje się albo w całości, albo wcale. Jeżeli w trakcie wykonywania transakcji wystąpi jakiś błąd, całą sekwencję operacji można odwołać, przywracając bazę do stanu sprzed rozpoczęcia tej sekwencji. START TRANSACTION [WITH CONSISTENT SNAPSHOT] BEGIN [WORK] COMMIT [WORK] [AND [NO] CHAIN] [[NO] RELEASE] ROLLBACK [WORK] [AND [NO] CHAIN] [[NO] RELEASE] SET AUTOCOMMIT = {0 1} START TRANSACTION; FROM table1 WHERE type=1; UPDATE table2 SET summary=@a WHERE type=1; COMMIT; Ireneusz Tarnowski, Relacyjne Bazy Danych
40 Język SQL - wyzwalacze (ang. triggers) Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. Dzięki triggerom można: - sprawdzać i zapobiegać dostawaniu się do bazy danych nieodpowiednich danych. - zmieniać polecenia INSERT, UPDATE i DELETE lub w ogóle ich zaniechać w zależności od tego, jakie informacje dostarczy nam trigger. - monitorować aktywność działań na danych w bazie danych w czasie sesji z bazą danych. CREATE [DEFINER = { user CURRENT_USER }] TRIGGER trigger_name trigger_time trigger_event ON tbl_name FOR EACH ROW trigger_stmt CREATE TABLE konto (numer INT, ile DECIMAL(10,2)); CREATE TRIGGER konto_bi BEFORE INSERT ON konto FOR EACH ROW + NEW.ile; Ireneusz Tarnowski, Relacyjne Bazy Danych
41 Język SQL - funckje i operatory Duża grupa wewnętrznych funkcji: SUM, RAND, CONCAT, AVG, COUNT, MAX, MIN, SQRT ROUND, DATE, DATE_FORMAT, TIME_FORMAT, TIME, SUBDATE, FLOOR, EXP, MOD, PI, SIN, RADIANS, UPPER, LOWER, ASCII, ORD, QUOTE operatory: BINARY, COLLATE! - (unary minus), ~ (unary bit inversion) ^ *, /, DIV, %, MOD -, +, <<, >> &,, =, <=>, >=, >, <=, <, <>,!=, IS, LIKE, REGEXP, IN BETWEEN, CASE, WHEN, THEN, ELSE NOT, &&, AND, XOR,, OR, := Ireneusz Tarnowski, Relacyjne Bazy Danych
42 Aplikacja bazodanowa Program komputerowy pośredniczący w wymianie danych między użytkownikiem a bazą danych (za pośrednictwem SZBD). 1. Aplikacja stanowi najwyższy element systemu bazodanowego. 2. Nie należy do SZBD ani do samej bazy danych. 3. Apliakcja musi się składać z interfejsu komunikacji z użytkownikiem (GUI lub CLI), w którego skład wchodzą: formularze, raportów, mechanizm kwerend. Ireneusz Tarnowski, Relacyjne Bazy Danych
43 Więcej na temat... [ 1 ] Ramez Elmasri, Shamkant B. Navathe, Wprowadzenie do systemów baz danych, Helion, 2005 [ 2 ] Richard Stones, Neil Matthew, Bazy danych i MySQL. Od podstaw, Helion, 2003 [ 3 ] Mark Whitehorn, Bill Marklyn, Relacyjne bazy danych, Helion, 2003 [ 4 ] Luke Welling, Laura Thomson, MySQL. Podstawy, oficjalny podręcznik, Helion, 2004 [ 5 ] Michael Abbey, Michael Corey, Ian Abramson, Oracle9i. Przewodnik dla początkujących, Helion, 2003 [ 6 ] Scott Urman, Oracle9i. Programowanie w języku PL/SQL, Helion, 2003 [ 7 ] MySQL, podręcznik użytkownika, dokumentacja producenta oprogramowania [ 8 ] Oracle 11g, podręcznik użytkownika, dokumentacja producenta oprogramowania Ireneusz Tarnowski, Relacyjne Bazy Danych
44 POLITECHNIKA WROCŁAWSKA WROCŁAWSKIE CENTRUM SIECIOWO-SUPERKOMPUTEROWE Relacyjne Bazy Danych mgr inż. Ireneusz Tarnowski Ireneusz Tarnowski, Relacyjne Bazy Danych
Organizacja zajęć BAZY DANYCH II WYKŁAD 1. Plan wykładu. SZBD Oracle 2010-10-21
Organizacja zajęć BAZY DANYCH II WYKŁAD 1 Wykładowca dr inż. Agnieszka Bołtuć, pokój 304, e-mail: aboltuc@ii.uwb.edu.pl Liczba godzin i forma zajęć: 15 godzin wykładu oraz 30 godzin laboratorium Konsultacje:
Bardziej szczegółowoKrzysztof Kadowski. PL-E3579, PL-EA0312,
Krzysztof Kadowski PL-E3579, PL-EA0312, kadowski@jkk.edu.pl Bazą danych nazywamy zbiór informacji w postaci tabel oraz narzędzi stosowanych do gromadzenia, przekształcania oraz wyszukiwania danych. Baza
Bardziej szczegółowoWykł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ółowoSystemy baz danych. mgr inż. Sylwia Glińska
Systemy baz danych Wykład 1 mgr inż. Sylwia Glińska Baza danych Baza danych to uporządkowany zbiór danych z określonej dziedziny tematycznej, zorganizowany w sposób ułatwiający do nich dostęp. System zarządzania
Bardziej szczegółowoWprowadzenie 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ółowoPawel@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ółowostrukturalny 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ółowoPRZESTRZENNE 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ółowoBazy 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ółowoLaboratorium nr 1. Temat: Wprowadzenie do MySQL-a
Laboratorium nr 1 Temat: Wprowadzenie do MySQL-a MySQL jest najpopularniejszym darmowym systemem obsługi baz danych rozpowszechnianym na zasadach licencji GPL. Jego nowatorska budowa pozwoliła na stworzenie
Bardziej szczegółowoSQL 4 Structured Query Lenguage
Wykład 5 SQL 4 Structured Query Lenguage Instrukcje sterowania danymi Bazy Danych - A. Dawid 2011 1 CREATE USER Tworzy nowego użytkownika Składnia CREATE USER specyfikacja użytkownika [, specyfikacja użytkownika]...
Bardziej szczegółowoProjektowanie systemów baz danych
Projektowanie systemów baz danych Seweryn Dobrzelewski 4. Projektowanie DBMS 1 SQL SQL (ang. Structured Query Language) Język SQL jest strukturalnym językiem zapewniającym możliwość wydawania poleceń do
Bardziej szczegółowoSystemy 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ółowoPodstawowe informacje o bazach danych. Technologie Informacyjne
Podstawowe informacje o bazach danych Technologie Informacyjne dr inż. Michna Michał, Politechnika Gdańska 2010/2011 Przykłady systemów baz danych Książka telefoniczna, książka kucharska Zarządzanie magazynem/hurtownią
Bardziej szczegółowo77. 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ółowoBazy 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ółowoJę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ółowoBazy Danych i Usługi Sieciowe
Bazy Danych i Usługi Sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2011 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2011 1 / 15 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_Danych_i_Usługi_Sieciowe_-_2011z
Bardziej szczegółowoBazy danych i usługi sieciowe
Bazy danych i usługi sieciowe Ćwiczenia I Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS ćw. I Jesień 2014 1 / 16 Strona wykładu http://bioexploratorium.pl/wiki/ Bazy_danych_i_usługi_sieciowe_-_2014z
Bardziej szczegółowoSQL - 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ółowoPodstawy 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Ć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ółowoBazy 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ółowoOgó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ółowoWPROWADZENIE DO BAZ DANYCH
WPROWADZENIE DO BAZ DANYCH Pojęcie danych i baz danych Dane to wszystkie informacje jakie przechowujemy, aby w każdej chwili mieć do nich dostęp. Baza danych (data base) to uporządkowany zbiór danych z
Bardziej szczegółowoBlaski 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ółowo3 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ółowoBazy danych. Polecenia SQL
Bazy danych Baza danych, to miejsce przechowywania danych. Dane w bazie danych są podzielone na tabele. Tabele składają się ze ściśle określonych pól i rekordów. Każde pole w rekordzie ma ściśle ustalony
Bardziej szczegółowoRelacyjne 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ółowoPaweł 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ółowoBazy 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ółowoJę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ółowoPawel@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ółowoRef. 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ółowoWykł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ółowoPrzestrzenne 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ółowoRelacyjne 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ółowoAby 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ółowoWprowadzenie do baz danych
Wprowadzenie do baz danych Dr inż. Szczepan Paszkiel szczepanpaszkiel@o2.pl Katedra Inżynierii Biomedycznej Politechnika Opolska Wprowadzenie DBMS Database Managment System, System za pomocą którego można
Bardziej szczegółowoZarządzanie systemami informatycznymi. Zarządzanie internetową bazą danych MySQL
Zarządzanie systemami informatycznymi Zarządzanie internetową bazą danych MySQL Bazy danych Koncepcja bazy danych Relacyjna baza danych Projektowanie internetowej bazy danych Koncepcja bazy danych Bazą
Bardziej szczegółowoZaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I
Wydział Informatyki Politechnika Białostocka Plan wykładu Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I 1. MySQL 2. Powtórzenie SQL WYKŁAD 2: MySQL: podstawowe obiekty Powtórzenie
Bardziej szczegółowoBazy danych Wykład zerowy. P. F. Góra
Bazy danych Wykład zerowy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 Patron? Św. Izydor z Sewilli (VI wiek), biskup, patron Internetu (sic!), stworzył pierwszy katalog Copyright c 2011-12 P.
Bardziej szczegółowoWyzwalacze (triggery) Przykład
Wyzwalacze (triggery) Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. W poniższym przykładzie definiujemy tablicę, a następnie trigger związany
Bardziej szczegółowoP 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ółowo2010-11-22 PLAN WYKŁADU BAZY DANYCH PODSTAWOWE KWESTIE BEZPIECZEŃSTWA OGRANICZENIA DOSTĘPU DO DANYCH
PLAN WYKŁADU Bezpieczeństwo w języku SQL Użytkownicy Uprawnienia Role BAZY DANYCH Wykład 8 dr inż. Agnieszka Bołtuć OGRANICZENIA DOSTĘPU DO DANYCH Ograniczenie danych z tabeli dla określonego użytkownika
Bardziej szczegółowoOracle11g: 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ółowoBaza danych. Modele danych
Rola baz danych Systemy informatyczne stosowane w obsłudze działalności gospodarczej pełnią funkcję polegającą na gromadzeniu i przetwarzaniu danych. Typowe operacje wykonywane na danych w systemach ewidencyjno-sprawozdawczych
Bardziej szczegółowoWykład 2. Relacyjny model danych
Wykład 2 Relacyjny model danych Wymagania stawiane modelowi danych Unikanie nadmiarowości danych (redundancji) jedna informacja powinna być wpisana do bazy danych tylko jeden raz Problem powtarzających
Bardziej szczegółowoSQL 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ółowo15. Funkcje i procedury składowane PL/SQL
15. Funkcje i procedury składowane PLSQL 15.1. SQL i PLSQL (Structured Query Language - SQL) Język zapytań strukturalnych SQL jest zbiorem poleceń, za pomocą których programy i uŝytkownicy uzyskują dostęp
Bardziej szczegółowoE.14 Bazy Danych cz. 18 SQL Funkcje, procedury składowane i wyzwalacze
Funkcje użytkownika Tworzenie funkcji Usuwanie funkcji Procedury składowane Tworzenie procedur składowanych Usuwanie procedur składowanych Wyzwalacze Wyzwalacze a ograniczenia i procedury składowane Tworzenie
Bardziej szczegółowoProgramowanie 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ółowoWidok 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ółowoT-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15
T-SQL dla każdego / Alison Balter. Gliwice, cop. 2016 Spis treści O autorce 11 Dedykacja 12 Podziękowania 12 Wstęp 15 Godzina 1. Bazy danych podstawowe informacje 17 Czym jest baza danych? 17 Czym jest
Bardziej szczegółowoBAZY DANYCH wprowadzenie do języka SQL. Opracował: dr inż. Piotr Suchomski
BAZY DANYCH wprowadzenie do języka SQL Opracował: dr inż. Piotr Suchomski Wprowadzenie Język SQL używany jest do pracy z relacyjną bazą danych. Jest to język nieproceduralny, należący do grupy języków
Bardziej szczegółowoPrzykł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ółowoPodstawy 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ółowoKurs. Podstawy MySQL
Kurs Podstawy MySQL Krótkie info. Autorem kursu jest Piotr Jędrusik. Kurs jest własnością serwisu MySQL FAQ www.mysqlfaq.prv.pl, email: mysqlfaq@twister.pl. 1. Tworzymy bazę. Stworzymy pierwszą bazę o
Bardziej szczegółowoBazy 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ółowoUPDATE 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ółowoPODSTAWY 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ółowoSkładowane procedury i funkcje
Składowane procedury i funkcje Procedury i funkcje są zestawem poleceń SQL, które są przechowywane na serwerze (tak jak dane w tablicach). Istnieją sytuacje, kiedy procedury i funkcje są szczególnie przydatne.
Bardziej szczegółowoCREATE USER
Temat: Administrowanie użytkownikami bazy danych. Po instalacji serwera MYSQL dostępne jest konto o nazwie root. Domyślnie nie ma ono przypisanego hasła, aczkolwiek podczas procesu konfiguracji jest możliwość
Bardziej szczegółowoWykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze
Wykład 5 funkcje i procedury pamiętane widoki (perspektywy) wyzwalacze 1 Funkcje i procedury pamiętane Następujące polecenie tworzy zestawienie zawierające informację o tym ilu jest na naszej hipotetycznej
Bardziej szczegółowoSystemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi
Systemy baz danych w zarządzaniu przedsiębiorstwem W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Proces zarządzania danymi Zarządzanie danymi obejmuje czynności: gromadzenie
Bardziej szczegółowoAutor: 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ółowoDefinicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.
TECHNOLOGIE BAZ DANYCH WYKŁAD 1 Wprowadzenie do baz danych. Normalizacja. (Wybrane materiały) Dr inż. E. Busłowska Definicja bazy danych Uporządkowany zbiór informacji, posiadający własną strukturę i wartość.
Bardziej szczegółowoPodstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38
Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem zajęcia 1 dr Jakub Boratyński pok. A38 Program zajęć Bazy danych jako podstawowy element systemów informatycznych wykorzystywanych
Bardziej szczegółowoBazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8
Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8 Bazowy skrypt PHP do ćwiczeń z bazą MySQL: Utwórz skrypt o nazwie cw7.php zawierający następującą treść (uzupełniając go o właściwą nazwę uŝytkownika
Bardziej szczegółowoTrigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie.
Temat: Wyzwalacze (triggery). Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie. W poniższym przykładzie definiujemy tablicę a następnie trigger
Bardziej szczegółowoAspekty 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ółowoPodyplomowe Studium Programowania i Baz Danych
Podyplomowe Studium Programowania i Baz Danych Wybrany system baz danych MySQL 15 godz. wykładu / 30 godz. laboratorium dr inż. Paweł Syty, 413GB, sylas@mif.pg.gda.pl, http://sylas.info Literatura P. DuBois,
Bardziej szczegółowoNARZĘDZIA WIZUALIZACJI
Kurs interaktywnej komunikacji wizualnej NARZĘDZIA WIZUALIZACJI Andrzej Łachwa andrzej.lachwa@uj.edu.pl 3 4/8 Zobacz film: http://www.ted.com/talks/david_mccandless_the_beauty_of_dat a_visualization.html
Bardziej szczegółowoSQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści
SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop. 2016 Spis treści O autorach 11 Podziękowania 12 Część I Wprowadzenie do języka SQL 13 Godzina 1. Witamy w świecie języka SQL 15
Bardziej szczegółowoProgramowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika
Programowanie w SQL procedury i funkcje UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika 1. Funkcje o wartościach skalarnych ang. scalar valued
Bardziej szczegółowoJęzyk SQL podstawy zapytań
Język SQL podstawy zapytań 1 Plan prezentacji 1. Krótka historia języka SQL 2. Cechy języka SQL 3. Przykładowa baza danych 4. Podstawy zapytań - operacje na modelu relacyjnym 5. Polecenie SELECT zapytania
Bardziej szczegółowoTechnologia informacyjna
Technologia informacyjna Bazy danych Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2016 Plan wykładu Wstęp do baz danych Modele baz danych Relacyjne bazy danych Język SQL Rodzaje
Bardziej szczegółowoWprowadzenie do baz danych
Wprowadzenie do baz danych Bazy danych stanowią obecnie jedno z ważniejszych zastosowań komputerów. Podstawowe zalety komputerowej bazy to przede wszystkim szybkość przetwarzania danych, ilość dostępnych
Bardziej szczegółowoZaawansowane bazy danych i hurtownie danych studia niestacjonarne II stopnia, sem. I
Ważne informacje Wydział Informatyki Politechnika Białostocka Zaawansowane bazy danych i hurtownie danych studia niestacjonarne II stopnia, sem. I aragorn.pb.bialystok.pl/~gkret: Materiały do wykładów,
Bardziej szczegółowoCREATE DATABASE ksiegarnia_internetowa DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Zestaw ćwiczeń1 Dzięki DDL (Data Definition Language) można operować na strukturach, w których dane są przechowywane czyli np. dodawać, zmieniać i kasować tabele lub bazy. Najważniejsze polecenia tej grupy
Bardziej szczegółowoSzkolenie 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ółowo2017/2018 WGGiOS AGH. LibreOffice Base
1. Baza danych LibreOffice Base Jest to zbiór danych zapisanych zgodnie z określonymi regułami. W węższym znaczeniu obejmuje dane cyfrowe gromadzone zgodnie z zasadami przyjętymi dla danego programu komputerowego,
Bardziej szczegółowoSZKOLENIE: Administrator baz danych. Cel szkolenia
SZKOLENIE: Administrator baz danych. Cel szkolenia Kurs Administrator baz danych skierowany jest przede wszystkim do osób zamierzających rozwijać umiejętności w zakresie administrowania bazami danych.
Bardziej szczegółowoInternetowe 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ółowoWyzwalacz - 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ółowoSQL (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ółowoLaboratorium nr 4. Temat: SQL część II. Polecenia DML
Laboratorium nr 4 Temat: SQL część II Polecenia DML DML DML (Data Manipulation Language) słuŝy do wykonywania operacji na danych do ich umieszczania w bazie, kasowania, przeglądania, zmiany. NajwaŜniejsze
Bardziej szczegółowoPrzykład 3 Zdefiniuj w bazie danych hurtownia_nazwisko przykładową funkcję użytkownika fn_rok;
Temat: Funkcje, procedury i wyzwalacze. Oprócz tabel i widoków w bazach danych możemy tworzyć własne funkcje, procedury i specjalny typ procedur, które będą automatycznie wywoływanie przez MySQL w memencie
Bardziej szczegółowoWprowadzenie do projektowania i wykorzystania baz danych Relacje
Wprowadzenie do projektowania i wykorzystania baz danych Relacje Katarzyna Klessa Dygresja nt. operatorów SELECT 2^2 SELECT 2^30 SELECT 50^50 2 Dygresja nt. operatorów SELECT 2^30 --Bitwise exclusive OR
Bardziej szczegółowo040 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ółowoDECLARE <nazwa_zmiennej> typ [(<rozmiar> )] [ NOT NULL ] [ { := DEFAULT } <wartość> ];
Braki w SQL obsługi zdarzeń i sytuacji wyjątkowych funkcji i procedur użytkownika definiowania złożonych ograniczeń integralnościowych Proceduralny SQL Transact- SQL używany przez Microsoft SQL Server
Bardziej szczegółowoDECLARE VARIABLE zmienna1 typ danych; BEGIN
Procedury zapamiętane w Interbase - samodzielne programy napisane w specjalnym języku (właściwym dla serwera baz danych Interbase), który umożliwia tworzenie zapytań, pętli, instrukcji warunkowych itp.;
Bardziej szczegółowoTworzenie 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ółowoI. 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ółowoINTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X
Wrocław 2006 INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl INTERNETOWE BAZY DANYCH PLAN NA DZIŚ zajęcia 1: 2. Procedury składowane
Bardziej szczegółowoWykł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ółowoJęzyk SQL. instrukcja laboratoryjna. Politechnika Śląska Instytut Informatyki. laboratorium Bazy Danych
Politechnika Śląska Instytut Informatyki instrukcja laboratoryjna laboratorium Bazy Danych przygotowali: mgr inż. Paweł Kasprowski (Kasprowski@zti.iinf.polsl.gliwice.pl) mgr inż. Bożena Małysiak (bozena@ivp.iinf.polsl.gliwice.pl)
Bardziej szczegółowoWykład I. Wprowadzenie do baz danych
Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles
Bardziej szczegółowoD 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