Oprogramowanie DBMS MySQL można ściągnąć z adresu http://www.mysql.com/downloads/mysql.html.
1. Co to jest MySQL? Cechy MySQL
|
MySQL to kolejny SZBD, czyli DBMS. MySQL jest najpopularniejszym na świecie oprogramowaniem tego typu, wyłączywszy może Access, jednak trudno je w ogóle porównywać. Interfejs Accessa do tworzenia bazy danych został w skrócie przedstawiony na poprzednich zajęciach (jeszcze do niego wrócimy). Naturalny interfejs MySQL wygląda tak, jak na rysunku obok. Do obsługiwania MySQL niezbędna jest znajomość języka programowania baz danych SQL. Do obsługi Access jest ona co najwyżej przydatna (będziemy ją wykorzystywać później). MySQL jest darmowy dla użytkowników niekomercyjnych, ale |
niestety, dla użytkowników firmowych jest dość drogi i w dodatku, w związku z polskim prawodawstwem, powoduje same problemy licencyjne. W zastosowaniach WWW MySQL jest zawsze darmowy. Aby uruchomić MySQL, trzeba go zainstalować, a potem w podkatalogu bin MySQL’a, najlepiej z linii komend, uruchomić program mysql.exe.
1. SQL – skok na głęboką wodę
Na pierwszych zajęciach zostało wspomniane, że SQL to zestandaryzowany język do tworzenia i obsługi baz danych. W tym punkcie zostaną pokazane podstawowe składnie języka SQL.
Poleceniem :-). Na przykład bazę danych biblioteka tworzymy poleceniem:
mysql> CREATE DATABASE biblioteka;
Polecenie zawsze kończymy średnikiem. Jeśli teraz uruchomimy polecenie:
mysql> SHOW DATABASES;
to zobaczymy istniejące w systemie MySQL bazy danych, a wśród nich bazę biblioteka. Aby pracować z bazą danych, należy ustawić ją jako bazę bieżącą:
mysql> USE biblioteka;
Polecenia USE nie musimy kończyć średnikiem.
Również poleceniem. Od teraz wszystko będziemy robić poleceniami :-). po „autor VARCHAR(50),” jest enter, ale nie kończy on polecenia – ma się ono kończyć średnikiem:
mysql> CREATE TABLE ksiazki (numer INT(7), tytul VARCHAR(50), autor VARCHAR(50),
-> rokwyd INT(4), stron INT(5), wydawnictwo VARCHAR(50), pozyczyl INT(7),
-> data DATE, zamawia INT(7));
Następne przykłady nie będą tak trudne, żeby nie było dużo wstukiwania. Jeśli kopiujesz je ze strony, pamiętaj o tym, że polecenia możesz kopiować i wklejać, a nie przepisywać.
Jeśli chcemy zobaczyć tabele w bazie książki, piszemy:
mysql> SHOW TABLES;
A co jeśli chcemy, aby wartość nie mogła być pusta, miała jakąś
wartość domyślną i klucz podstawowy? Wtedy:
mysql> CREATE TABLE przyklad (numer INT(7) DEFAULT '0001' NOT NULL PRIMARY KEY(numer));
Do usunięcia tabeli służy polecenie:
mysql> DROP TABLE przyklad;
A jeśli wartość ma się zwiększać automatycznie?
mysql> CREATE TABLE przyklad (numer INT(7) NOT NULL AUTO_INCREMENT PRIMARY KEY (numer));
Jak wpisać jakąś wartość do tabeli?
mysql> INSERT INTO przyklad VALUES (4);
Jak wpisać więcej wartości do tabeli?
mysql> INSERT INTO przyklad VALUES (4), (5), (CURRENT_DATE);
Jak usunąć wszystkie wartości z tabeli?
mysql> DELETE FROM przyklad;
Jak usunąć jedną wartość z tabeli?
mysql> DELETE FROM przyklad where numer=4;
Jak wybrać wszystkie wartości z tabeli?
mysql> SELECT * FROM przyklad;
Jak wybrać jedną wartości z tabeli?
mysql> SELECT * FROM przyklad WHERE numer=CURRENT_DATE;
Jak zmienić wartość w tabeli?
mysql> UPDATE przyklad SET numer=7 WHERE numer=5;
mysql> DROP DATABASE przyklad;
Proszę teraz wstukać definicję tabeli czytelników z odpowiednimi definicjami wartości (niezerowymi, o odpowiednich deklaracjach i z kluczem podstawowym).