Wydział Inżynierii Mechanicznej i Robotyki Jakub Topolski Automatyka i Robotyka ROK III GR 22/I Ćwiczenie 4 SIECI KOMPUTEROWE I BAZY DANYCH TEMAT: TWORZENIE I ZARZĄDZANIE INTERNETOWĄ BAZĄ DANYCH 1. Cel ćwiczenia Student ma zaznajomić się z tym jak tworzy i edytuje się internetowe bazy danych. W jaki sposób można przeszukać rekordy oraz jak importować i eksportować dane. 2. Ćwiczenie Zadanie 1. Uruchomić narzędzie phpmyadmin (http://149.156.115.209/phpmyadmin/) a następnie przy jego pomocy utworzyć dwie tabele pozwalające na definiowanie systemu kontaków do wybranych osób. Pierwsza tabela może mieć nazwę osoby oraz zawierać: - pole przechowujące liczbę ID rekordu ( pole wymagane, liczba całkowita nadawana automatycznie) - pole przechowujące imię dowolnej osoby ( maksymalnie 30 znaków) - pole zawierające nazwisko osoby ( maksymalnie 100 znaków) - pole na datę urodzenia osoby - pole zawierające informację o wieku osoby Rys. 1 Tworzymy tabele osoby i wybieramy ilość kolumn Rys. 2 Edytujemy nazwę kolumn typ i nadajemy ograniczenie długości
Zadanie 2. Utworzyć drugą tabelę kontakty zawierającą: - pole przechowujące liczbę ID rekordu ( pole wymagane, liczba całkowita nadawana automatycznie) - pole ID_osoby identyfikujące osobę w tabeli osoby - pole odnoszące się do rodzaju kontaktu (np.: email, telefon stacjonarny, tel. komórkowy, nr komunikatora itp...) pole definujące kontakt ( maksymalnie 100 znaków) Rys. 3 Tworzymy tabele kontakty i wybieramy ilość kolumn Rys. 4 Postępujemy analogicznie jak z tabelą w Rys. 2 Rys. 5 Gotowe tabele Zadanie 3. Korzystając z phpmyadmin a lub skryptów dodać co najmniej 5 rekordów zawierających dane (np. kolegów z grupy) do tabeli osoby oraz co najmniej po dwa wpisy dla każdej osoby w tabeli kontakty. Rzowiązanie Rys. 6 Narzędzie za pomocą którego uzupełniamy rekordy Rys. 7 Wypełniona tabela osoby
Rys. 8 Wypełniona tabela kontakty Zadanie 4. Wyszukać w przygotowanym zestawie danych: rekordy osób, których imię zaczyna się na wybraną literę alfabetu Posługujemy się narzędziem szukaj Rys. 9 Szukamy osób których nazwisko zaczyna się na literę Z Rys. 10 Wynik szukania Zadanie 5. policzyć dostępne w bazie kontakty jednego wybranego rodzaju Rys. 11 Zapytanie Rys. 12 Wynik szukania
Zadanie 6. wybrać z danych wszystkie kontakty dla wybranej osoby Rys. 13 Zapytanie Rys. 14 Wynik szukania Zadanie 7. wyszukać w zestawieniu kontaktów zadany ciąg znaków (np. 12617 ) oraz określić osobę lub osoby związane z danym kontaktem. Rys. 13 Zapytanie Rys. 14 Wynik szukania Zadanie 8. Wyeksportować całą bazę danych do pliku w formacie *.sql, *.zip, *.xml. Używamy narzędzia eksport Rys. 15 Po kliknięciu pojawi nam się widok w którym zaznaczamy interesujące nas opcje. Wybieram typ pliku który nas interesuje.
Rys. 16 Kod programu o rozszerzeniu XML: <?xml version="1.0" encoding="utf-8"?> <!-- - phpmyadmin XML Dump - version 4.0.6deb1 - http://www.phpmyadmin.net - - Host: localhost - Czas wygenerowania: 09 Gru 2013, 18:50 - Wersja serwera: 5.5.34-0ubuntu0.13.10.1 - Wersja PHP: 5.5.3-1ubuntu2 --> <pma_xml_export version="1.0" xmlns:pma="http://www.phpmyadmin.net/some_doc_url/"> <!-- - Structure schemas --> <pma:structure_schemas> <pma:database name="s249211" collation="latin1_swedish_ci" charset="latin1"> <pma:table name="kontakty"> CREATE TABLE `Kontakty` ( `ID` int(11) NOT NULL, `ID_osoby` int(11) NOT NULL, `Rodzaj_kontaktu` text NOT NULL, `Kontakt` text NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; </pma:table> <pma:table name="osoby"> CREATE TABLE `Osoby` ( `ID` int(11) NOT NULL, `Imię` text NOT NULL, `Nazwisko` text NOT NULL, `Data_urodzenia` date NOT NULL, `Wiek` int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; </pma:table> </pma:database> </pma:structure_schemas> <!-- - Baza danych: 's249211' --> <database name="s249211"> <!-- Tabela Kontakty -->
<column name="id">1</column> <column name="id_osoby">1</column> <column name="kontakt">382910291</column> <column name="id">2</column> <column name="id_osoby">1</column> <column name="kontakt">dawid@gmail.com</column> <column name="id">3</column> <column name="id_osoby">2</column> <column name="kontakt">485795648</column> <column name="id">4</column> <column name="id_osoby">2</column> <column name="kontakt">janek@gmail.com</column> <column name="id">5</column> <column name="id_osoby">3</column> <column name="kontakt">168486579</column> <column name="id">6</column> <column name="id_osoby">3</column> <column name="kontakt">rafal@gmail.com</column> <column name="id">7</column> <column name="id_osoby">4</column> <column name="kontakt">446654456</column> <column name="id">8</column> <column name="id_osoby">4</column> <column name="kontakt">andzela@gmail.com</column> <column name="id">9</column> <column name="id_osoby">5</column> <column name="kontakt">157943654</column> <column name="id">10</column> <column name="id_osoby">5</column> <column name="kontakt">katarzynka@gmail.com</column> <!-- Tabela Osoby --> <column name="id">1</column> <column name="imię">jan</column> <column name="nazwisko">zajac</column> <column name="data_urodzenia">1991-12-04</column> <column name="wiek">22</column> <column name="id">2</column> <column name="imię">dawid</column>
<column name="nazwisko">szewczuk</column> <column name="data_urodzenia">1991-08-02</column> <column name="wiek">22</column> <column name="id">3</column> <column name="imię">rafal</column> <column name="nazwisko">sliwa</column> <column name="data_urodzenia">1992-04-10</column> <column name="wiek">21</column> <column name="id">4</column> <column name="imię">andzelika</column> <column name="nazwisko">szoldra</column> <column name="data_urodzenia">1992-06-12</column> <column name="wiek">21</column> <column name="id">5</column> <column name="imię">kasia</column> <column name="nazwisko">stepien</column> <column name="data_urodzenia">1994-12-04</column> <column name="wiek">19</column> </database> </pma_xml_export> Zadanie 9. Wyczyścić bazę danych z wpisów, a następnie dokonać importu danych z pliku *.sql. Należy urzyć opcji import w naszej bazie danych i wybrac plik z rozszerzeniem sql. Rys. 15