Polecenia DML w MySQL
1. Wprowadzenie
Polecenia DML (Data Manipulation Language) służą do zarządzania danymi w tabelach bazy danych. Umożliwiają one dodawanie, modyfikowanie oraz usuwanie rekordów. W MySQL do najczęściej używanych poleceń należą:
INSERTUPDATEDELETETRUNCATE(choć formalnie jest poleceniem DDL, często omawia się je razem z DML ze względu na podobne zastosowanie).
2. Polecenie INSERT
Polecenie INSERT służy do dodawania nowych rekordów do tabeli.
Podstawowa składnia
Wstawianie danych do wszystkich kolumn
Wstawianie wielu rekordów jednocześnie
Cechy polecenia INSERT
- dodaje nowe dane do tabeli,
- nie nadpisuje istniejących rekordów,
- może powodować błędy, jeśli narusza ograniczenia (np. klucz główny, NOT NULL).
3. Polecenie UPDATE
Polecenie UPDATE służy do modyfikowania istniejących rekordów w tabeli.
Podstawowa składnia
Aktualizacja wielu kolumn
Aktualizacja wszystkich rekordów
⚠️ Uwaga: Brak klauzuli WHERE spowoduje zmianę danych we wszystkich wierszach tabeli.
Cechy polecenia UPDATE
- zmienia istniejące dane,
- może modyfikować jeden lub wiele rekordów,
- powinno być stosowane ostrożnie.
4. Polecenie DELETE
Polecenie DELETE służy do usuwania rekordów z tabeli.
Podstawowa składnia
Usuwanie wybranych rekordów
Usuwanie wszystkich rekordów
Cechy polecenia DELETE
- usuwa dane w sposób logiczny (rekord po rekordzie),
- można używać warunków
WHERE, - operację można cofnąć przy użyciu
ROLLBACK(w transakcjach).
5. Polecenie TRUNCATE
Polecenie TRUNCATE służy do szybkiego usuwania wszystkich danych z tabeli.
Składnia
Cechy polecenia TRUNCATE
- usuwa wszystkie rekordy z tabeli jednocześnie,
- nie można używać klauzuli WHERE,
- jest znacznie szybsze niż
DELETE, - resetuje licznik AUTO_INCREMENT,
- nie można cofnąć operacji (
ROLLBACKnie działa), - jest poleceniem typu DDL, a nie DML.
6. Porównanie DELETE i TRUNCATE
| Cecha | DELETE | TRUNCATE |
|---|---|---|
| Typ polecenia | DML | DDL |
| WHERE | Tak | Nie |
| Usuwa wybrane rekordy | Tak | Nie |
| Usuwa wszystkie rekordy | Tak | Tak |
| Możliwość ROLLBACK | Tak | Nie |
| Szybkość | Wolniejsze | Bardzo szybkie |
| Reset AUTO_INCREMENT | Nie | Tak |
7. Podsumowanie
Polecenia INSERT, UPDATE, DELETE oraz TRUNCATE są podstawowymi narzędziami do pracy z danymi w MySQL:
INSERT– dodaje nowe rekordy,UPDATE– modyfikuje istniejące dane,DELETE– usuwa wybrane lub wszystkie rekordy,TRUNCATE– szybko usuwa całą zawartość tabeli.
Poprawne i ostrożne stosowanie tych poleceń pozwala na bezpieczne zarządzanie danymi w bazie danych.