mysql. darmowa baza danych. Ćwiczenia praktyczne helion.pdf
(
5923 KB
)
Pobierz
4
MySQL. Darmowa baza danych • Ćwiczenia praktyczne
Rozdział 4.
Tworzenie struktury bazy danych
81
Ogólna postać instrukcji CREATE
81
Typy danych
85
Atrybuty kolumn
98
Kodowanie znaków dla tabel i kolumn
104
Pobieranie struktury tabel
106
Modyfikacja tabel
108
Usuwanie tabel
115
Kilka tabel w praktyce
116
Rozdział 5.
Elementy SQL (DML)
125
Wprowadzanie danych
125
Pobieranie danych
134
Modyfikacja danych
150
Usuwanie danych
153
Rozdział 6.
Złożone instrukcje SQL
157
Pobieranie danych z kilku tabel
157
Typy złączeń
160
Grupowanie danych
165
Dane w bazie przechowywane są w tabelach. Pojęcie tabeli
poznaliśmy w rozdziale 3., „Koncepcja relacyjnych baz da-
nych”. Czas więc dowiedzieć się, w jaki sposób można tworzyć
tabele. Służy do tego instrukcja
o schematycznej postaci:
CREATE TABLE
CREATE TABLE nazwa_tabeli
(
nazwa_kolumny_1 typ_kolumny_1 [atrybuty],
nazwa_kolumny_2 typ_kolumny_2 [atrybuty],
...
nazwa_kolumny_n typ_kolumny_n [atrybuty],
)
Nazwa tabeli może zawierać dowolne znaki, jakie może zawierać na-
zwa pliku w systemie operacyjnym, na którym działa serwer MySQL,
z wyjątkiem
Maksymalna długość nazwy to 64 bajty. Począw-
szy od wersji 3.23.6, nazwa tabeli może być nazwą słowa zastrze-
żonego dla konstrukcji języka (np.
,
i
/
\
.
,
), w takim wy-
SELECT
CREATE
padku musi być jednak zawsze ujęta w znaki
, np.
. Nie
‘
‘SELECT‘
82
MySQL. Darmowa baza danych • Ćwiczenia praktyczne
może również zawierać znaków o kodach 0 i 255 w standardzie ASCII,
a na jej końcu nie powinny się znajdować tzw. białe znaki (czyli
spacje, tabulatory itp.).
Nazwa kolumny może zawierać dowolne znaki, jednak jej długość
jest również ograniczona do 64 bajtów i także nie powinna być zakoń-
czona białym znakiem. Typ kolumny określa rodzaj danych, które
dana kolumna będzie mogła przechowywać, np. łańcuch znaków, licz-
by, itp. Występujące w MySQL typy danych zostaną omówione w na-
stępnej sekcji.
W nazwach tabel (oraz baz danych) mogą występować zarówno małe,
jak i duże litery, jednak to, czy będą rozróżniane, zależy od systemu
plików systemu operacyjnego, na którym został zainstalowany MySQL.
I tak w większości odmian Uniksa wielkie i małe litery są rozróżnia-
ne, natomiast w systemach Windows — nie. W systemach Mac OS
rozróżnianie wielkości liter zależy od tego, czy wykorzystywany jest
system plików HFS (nie są rozróżniane), czy USF (są rozróżniane).
W związku z tym, o ile to możliwe, najwygodniej przyjąć po prostu
zasadę, że nazwy baz i tabel zawsze są pisane małymi literami (najle-
piej alfabetu łacińskiego).
Nazwy kolumn również mogą zawierać małe i duże litery, jednak
w tym wypadku nie są one rozróżniane, niezależnie od wersji systemu
operacyjnego czy systemu plików. Począwszy od wersji 4.1, wszystkie
identyfikatory i nazwy odnoszące się do definicji zawartości tabel są
zapisywane w standardzie Unicode. Należy również pamiętać, że jeśli
identyfikator (np. nazwa kolumny) zawiera znaki spoza standardowe-
go zestawu ASCII (np. polskie litery), należy go ująć w lewe apostrofy
(podobnie jak w sytuacji, kiedy identyfikator jest nazwą zastrzeżoną
dla konstrukcji języka SQL).
Dla treningu spróbujmy teraz utworzyć prostą tabelę
, która bę-
klient
dzie zawierała dwie kolumny. Pierwsza — o nazwie
— będzie
Indeks
przechowywała liczby całkowite (typ danych
), druga — o na-
INTEGER
zwie
— będzie przechowywała ciągi maksymalnie 20 znaków
(typ
VARCHAR(20)
).
Nazwa
Rozdział 4. • Tworzenie struktury bazy danych
83
ĆWICZENIE
4.1
Utworzenie prostej tabeli
Utwórz tabelę o nazwie
zawierającą dwie kolumny — pierwszą
o nazwie
Indeks
typu
INTEGER
, drugą o nazwie
Nazwa
typu
VARCHAR(20)
.
Utworzenie takiej tabeli osiągniemy po wydaniu polecenia w postaci:
klient
CREATE TABLE klient
(
Indeks INTEGER,
Nazwa VARCHAR(20)
);
Oczywiście najpierw należy uruchomić klienta
, zalogować się
mysql
do serwera i wybrać bazę danych (np.
), tak jak było to opisywane
we wcześniejszych rozdziałach. Po wykonaniu opisanych czynności
w oknie konsoli zobaczymy widok zaprezentowany na rysunku 4.1.
test
Rysunek 4.1.
Zalogowanie
do serwera
i utworzenie tabeli
klient w bazie test
Co się jednak stanie, jeśli spróbujemy utworzyć tabelę o nazwie, która
już istnieje w bazie? W takiej sytuacji zostanie zgłoszony błąd widocz-
ny na rysunku 4.2. Jest to całkiem zrozumiałe zachowanie systemu.
Czasem jednak chcielibyśmy utworzyć tabelę o zadanej nazwie tylko
wtedy, gdy nie istnieje ona w bazie, a gdyby istniała — nie podej-
mować żadnego działania. W takiej sytuacji powinniśmy skorzystać
z dodatkowej konstrukcji
w ogólnej postaci:
II NOT EXISTS
CREATE TABLE IF NOT EXISTS nazwa_tabeli
(
definicje kolumn
)
którą możemy przetłumaczyć jako: utwórz tabelę
, o ile
nazwa_tabeli
nie istnieje ona jeszcze w bazie.
Plik z chomika:
juwi1
Inne pliki z tego folderu:
gimp. praktyczne projekty. wydanie ii pełna wersja.pdf
(80148 KB)
Ric Shreves joomla! biblia full scan.pdf
(21550 KB)
przechytrzyć google. odkryj skuteczną strategię seo i zdobądź szczyty wyszukiwarek cała książka.pdf
(20759 KB)
samba dla każdego full scan.pdf
(47936 KB)
chmura-obliczeniowa.-rozwiazania-dla-biznesu full scan.pdf
(33885 KB)
Inne foldery tego chomika:
2012
6.0
Aero2
ALLEGRO
AUDIO HUMOR
Zgłoś jeśli
naruszono regulamin