1. Cel ćwiczenia 2. Ćwiczenie

Transkrypt

1. Cel ćwiczenia 2. Ćwiczenie
Wydział Inżynierii
Mechanicznej i Robotyki
Jakub Topolski
Automatyka i
Robotyka
Ćwiczenie
GR 22/I
ROK III
SIECI KOMPUTEROWE I
BAZY DANYCH
4
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
Rozwiązanie
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)
Rozwiązanie
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
Rozwiązanie
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
Rozwiązanie
Rys. 11 Zapytanie
Rys. 12 Wynik szukania
Zadanie 6.
wybrać z danych wszystkie kontakty dla wybranej osoby
Rozwiązanie
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.
Rozwiązanie
Rys. 13 Zapytanie
Rys. 14 Wynik szukania
Zadanie 8.
Wyeksportować całą bazę danych do pliku w formacie *.sql, *.zip, *.xml.
Rozwiązanie
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 -->
<table name="Kontakty">
<column name="ID">1</column>
<column name="ID_osoby">1</column>
<column name="Rodzaj_kontaktu">Telefon</column>
<column name="Kontakt">382910291</column>
</table>
<table name="Kontakty">
<column name="ID">2</column>
<column name="ID_osoby">1</column>
<column name="Rodzaj_kontaktu">email</column>
<column name="Kontakt">[email protected]</column>
</table>
<table name="Kontakty">
<column name="ID">3</column>
<column name="ID_osoby">2</column>
<column name="Rodzaj_kontaktu">Telefon</column>
<column name="Kontakt">485795648</column>
</table>
<table name="Kontakty">
<column name="ID">4</column>
<column name="ID_osoby">2</column>
<column name="Rodzaj_kontaktu">email</column>
<column name="Kontakt">[email protected]</column>
</table>
<table name="Kontakty">
<column name="ID">5</column>
<column name="ID_osoby">3</column>
<column name="Rodzaj_kontaktu">Telefon</column>
<column name="Kontakt">168486579</column>
</table>
<table name="Kontakty">
<column name="ID">6</column>
<column name="ID_osoby">3</column>
<column name="Rodzaj_kontaktu">email</column>
<column name="Kontakt">[email protected]</column>
</table>
<table name="Kontakty">
<column name="ID">7</column>
<column name="ID_osoby">4</column>
<column name="Rodzaj_kontaktu">Telefon</column>
<column name="Kontakt">446654456</column>
</table>
<table name="Kontakty">
<column name="ID">8</column>
<column name="ID_osoby">4</column>
<column name="Rodzaj_kontaktu">email</column>
<column name="Kontakt">[email protected]</column>
</table>
<table name="Kontakty">
<column name="ID">9</column>
<column name="ID_osoby">5</column>
<column name="Rodzaj_kontaktu">Telefon</column>
<column name="Kontakt">157943654</column>
</table>
<table name="Kontakty">
<column name="ID">10</column>
<column name="ID_osoby">5</column>
<column name="Rodzaj_kontaktu">email</column>
<column name="Kontakt">[email protected]</column>
</table>
<!-- Tabela Osoby -->
<table name="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>
</table>
<table name="Osoby">
<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>
</table>
<table name="Osoby">
<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>
</table>
<table name="Osoby">
<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>
</table>
<table name="Osoby">
<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>
</table>
</database>
</pma_xml_export>
Zadanie 9.
Wyczyścić bazę danych z wpisów, a następnie dokonać importu danych z pliku *.sql.
Rozwiązanie
Należy urzyć opcji import w naszej bazie danych i wybrac plik z rozszerzeniem sql.
Rys. 15