1. Wprowadzenie
Tabele są podstawowymi elementami bazy danych MySQL. To w nich przechowujemy dane w postaci wierszy i kolumn. Aby móc pracować z danymi, najpierw musimy utworzyć tabelę za pomocą polecenia CREATE TABLE. W tej lekcji dowiesz się:
- Jak działa polecenie CREATE TABLE
- Jak definiować kolumny i ich typy danych
- Jak ustawiać klucz główny (PRIMARY KEY) i inne ograniczenia
- Jak stworzyć tabelę w phpMyAdmin
Po tej lekcji będziesz w stanie samodzielnie tworzyć tabele w MySQL i rozumieć ich strukturę.
2. Tworzenie tabeli w MySQL – podstawowa składnia
Aby utworzyć tabelę, używamy następującego polecenia SQL:
CREATE TABLE nazwa_tabeli (
nazwa_kolumny1 typ_danych opcje,
nazwa_kolumny2 typ_danych opcje
);
Przykład prostej tabeli:
CREATE TABLE klienci (
id INT PRIMARY KEY AUTO_INCREMENT,
imie VARCHAR(50) NOT NULL,
nazwisko VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE NOT NULL
);
W powyższym przykładzie:
id
to klucz główny, który automatycznie zwiększa swoją wartość przy dodawaniu nowych rekordówimie
to pole tekstowe o maksymalnej długości 50 znaków, które nie może być pusteemail
to unikalny adres e-mail, który nie może się powtarzać w tabeli
3. Typy danych w MySQL
Podczas tworzenia tabel musimy określić typy danych dla każdej kolumny. Oto podstawowe typy:
Typy liczbowe
INT
– liczba całkowitaDECIMAL(8,2)
– liczba zmiennoprzecinkowa, np. 12345.67TINYINT(1)
– liczba całkowita, np. 0 lub 1, często używana dla wartości logicznych
Typy znakowe
CHAR(10)
– tekst o stałej długości, np. kod pocztowyVARCHAR(100)
– tekst o zmiennej długości, np. nazwisko, e-mail
Typy daty i czasu
DATE
– data w formacieYYYY-MM-DD
DATETIME
– data i czas w formacieYYYY-MM-DD HH:MM:SS
TIMESTAMP
– czas systemowy, automatycznie uzupełniany
4. Klucz główny i inne ograniczenia
Klucz główny (PRIMARY KEY)
Każda tabela powinna mieć klucz główny, czyli kolumnę (lub kilka kolumn), która jednoznacznie identyfikuje każdy rekord.
CREATE TABLE zamowienia (
id_zamowienia INT PRIMARY KEY AUTO_INCREMENT,
id_klienta INT NOT NULL,
kwota DECIMAL(10,2) NOT NULL
);
NOT NULL
Określa, że dana kolumna nie może pozostawać pusta.
email VARCHAR(100) NOT NULL
UNIQUE
Zapewnia, że wartości w danej kolumnie nie będą się powtarzać.
telefon VARCHAR(15) UNIQUE
FOREIGN KEY (klucz obcy)
Służy do łączenia tabel i tworzenia relacji między nimi.
CREATE TABLE zamowienia (
id INT PRIMARY KEY AUTO_INCREMENT,
id_klienta INT,
FOREIGN KEY (id_klienta) REFERENCES klienci(id)
);
Klucz obcy id_klienta
łączy tabelę zamowienia
z tabelą klienci
.
5. Tworzenie tabeli w phpMyAdmin
Jeśli nie chcesz pisać kodu SQL, możesz utworzyć tabelę graficznie w phpMyAdmin.
- Otwórz phpMyAdmin i wybierz bazę danych
- Kliknij „Nowa tabela” i wpisz nazwę tabeli, np.
produkty
- Dodaj kolumny – określ nazwy, typy danych i opcje, np. klucz główny, NOT NULL
- Kliknij „Zapisz”, aby utworzyć tabelę
6. Ćwiczenia
Ćwiczenie 1: Tworzenie prostej tabeli klientów
Utwórz tabelę klienci
, która zawiera następujące kolumny:
id
– klucz główny, numer klienta (liczba całkowita, auto numerowanie)imie
– imię klienta (lancuch znaków o zmiennej długosci(50), nie puste)nazwisko
– nazwisko klienta (lancuch znaków o zmiennej długosci(50), nie puste)email
– adres e-mail (lancuch znaków o zmiennej długosci(100), musi być unikalny)data_rejestracji
– data rejestracji (data)
Ćwiczenie 2: Tworzenie tabeli zamówień
Stwórz tabelę zamowienia
. Tabela powinna zawierać:
id_zamowienia
– klucz główny (liczba całkowita, auto numerowanie)id_klienta
– identyfikator klienta (liczba całkowita)produkt
– nazwa produktu (lancuch znaków o zmiennej długosci(100))kwota
– kwota zamówienia (typ liczbowy zniennoprzecinkowy o długosci 10 i z 2 miejscami po przecinku)data_zamowienia
– data zamówienia (data)
Ćwiczenie 3: Tworzenie tabeli w phpMyAdmin
- Otwórz phpMyAdmin i wybierz bazę danych
- Stwórz tabelę
produkty
, która zawiera:id
(klucz główny, liczba całkowita, auto numerowanie)nazwa_produktu
(lancuch znaków o zmiennej długosci(100), nie puste)cena
(DECIMAL(8,2), nie puste)ilosc_w_magazynie
(liczba całkowita, nie puste)
- Zapisz tabelę
Ćwiczenie 4: Tworzenie tabeli pracownicy
Napisz zapytanie SQL, które stworzy tabelę pracownicy
, zawierającą:
id_pracownika
– klucz główny (liczba całkowita, auto numerowanie)imie
(lancuch znaków o zmiennej długosci(50))nazwisko
(lancuch znaków o zmiennej długosci(50))stanowisko
(lancuch znaków o zmiennej długosci(50))wynagrodzenie
(typ liczbowy zniennoprzecinkowy o długosci 10 i z 2 miejscami po przecinku)data_zatrudnienia
(DATE)
7. Podsumowanie
- Polecenie CREATE TABLE służy do tworzenia tabel w MySQL
- Tabele składają się z kolumn o różnych typach danych, np. INT, VARCHAR, DATE
- Możemy ustawić klucz główny (PRIMARY KEY), ograniczenia (NOT NULL, UNIQUE) i klucze obce (FOREIGN KEY)
- Tabele można tworzyć zarówno za pomocą SQL, jak i w phpMyAdmin
Dzięki tej lekcji potrafisz już tworzyć podstawowe tabele w MySQL i rozumiesz, jak je zaprojektować.