Wyobraź sobie, że masz pusty budynek i chcesz urządzić w nim bibliotekę. Zanim wstawisz książki (czyli dane), musisz najpierw zbudować półki, szuflady i regały – czyli ustalić strukturę.
W świecie baz danych tym właśnie zajmuje się DDL (Data Definition Language) – język definiowania danych.
Polecenia DDL pozwalają tworzyć, zmieniać i usuwać elementy struktury bazy danych, takie jak:
- bazy danych,
- tabele,
- widoki,
- indeksy.
Ważne: DDL nie zmienia danych, tylko sposób ich przechowywania.
1. CREATE – tworzenie nowych obiektów
Polecenie CREATE służy do tworzenia nowych obiektów w bazie danych: tabel, baz, indeksów czy widoków.
To jak budowanie nowych „półek” w naszej bibliotece.
Przykłady:
a) Tworzenie nowej bazy danych
CREATE DATABASE sklep;
b) Tworzenie nowej tabeli
CREATE TABLE klienci (
id INT PRIMARY KEY,
imie VARCHAR(50),
nazwisko VARCHAR(50),
wiek INT,
miasto VARCHAR(100)
);
c) Tworzenie indeksu na kolumnie (przyspiesza wyszukiwanie)
CREATE INDEX idx_nazwisko ON klienci(nazwisko);
d) Tworzenie widoku (wirtualnej tabeli z wynikami zapytania)
CREATE VIEW aktywni_klienci AS
SELECT imie, nazwisko, miasto
FROM klienci
WHERE wiek > 18;
2. ALTER – modyfikowanie istniejących obiektów
Polecenie ALTER pozwala zmieniać strukturę istniejących tabel, bez ich usuwania.
To jak dobudowanie dodatkowej półki lub zmiana etykiety w bibliotece.
Przykłady:
a) Dodanie nowej kolumny
ALTER TABLE klienci ADD email VARCHAR(100);
b) Zmiana typu danych w kolumnie
ALTER TABLE klienci MODIFY wiek TINYINT;
c) Usunięcie kolumny
ALTER TABLE klienci DROP COLUMN miasto;
d) Zmiana nazwy tabeli
ALTER TABLE klienci RENAME TO nowi_klienci;
3. DROP – usuwanie obiektów z bazy danych
Polecenie DROP usuwa cały obiekt z bazy danych – bezpowrotnie.
To jak wyrzucenie całej półki razem z książkami.
Dlatego należy używać go z dużą ostrożnością.
Przykłady:
a) Usunięcie tabeli
DROP TABLE klienci;
b) Usunięcie bazy danych
DROP DATABASE sklep;
c) Usunięcie widoku
DROP VIEW aktywni_klienci;
d) Usunięcie indeksu
DROP INDEX idx_nazwisko ON klienci;
4. TRUNCATE – czyszczenie tabeli z danych
Polecenie TRUNCATE usuwa wszystkie rekordy z tabeli, ale zostawia jej strukturę.
Można to porównać do opróżnienia półki z książek – sama półka zostaje.
Przykład:
TRUNCATE TABLE klienci;
Po wykonaniu tego polecenia tabela klienci będzie pusta, ale nadal będzie istnieć w bazie danych.
Podsumowanie
| Polecenie | Działanie | Przykład zastosowania |
|---|---|---|
| CREATE | tworzy nowe obiekty | nowa baza, tabela, indeks, widok |
| ALTER | modyfikuje istniejące obiekty | dodanie lub zmiana kolumny |
| DROP | usuwa obiekty z bazy | usunięcie tabeli lub widoku |
| TRUNCATE | usuwa dane, ale nie strukturę | czyszczenie tabeli z rekordów |
Polecenia DDL są fundamentem projektowania bazy danych. Dzięki nim możesz zbudować szkielet systemu, zanim zaczniesz wprowadzać dane.
Ćwiczenia praktyczne
Zadanie 1 – Utwórz prostą bazę danych
W terminalu MySQL (XAMPP) wykonaj kolejno:
- Utwórz bazę danych o nazwie
firma. - Wybierz ją poleceniem
USE firma; - Utwórz tabelę
pracownicyz kolumnami:id(INT, klucz główny)imie(VARCHAR(50))nazwisko(VARCHAR(50))stanowisko(VARCHAR(100))
Zadanie 2 – Zmodyfikuj strukturę tabeli
- Dodaj kolumnę
emaildo tabelipracownicy. - Zmień typ danych kolumny
stanowiskonaVARCHAR(80). - Usuń kolumnę
email. - Zmień nazwę tabeli na
personel.
Zadanie 3 – Uważaj na DROP i TRUNCATE
- Utwórz tabelę
testz jedną kolumnąnazwa. - Wstaw do niej kilka rekordów (np. INSERT).
- Wykonaj
TRUNCATE TABLE test;i sprawdź, co się stało. - Następnie wykonaj
DROP TABLE test;i spróbuj ponownie ją wyświetlić (SHOW TABLES;).
– Jaka jest różnica?

