MySQL
Wyszukiwarka
Wprowadzenie do MySQL
Tworzenie i modyfikowanie tabel
- Zapytanie CREATE: Tworzenie tabeli
- Instrukcja ALTER: Modyfikacja tabeli
- Zapytanie DROP: Usuwanie tabeli
Zapytania pobierające dane
- Zapytanie SELECT: Podstawy
- Zapytanie SELECT: Klauzula WHERE
- Zapytanie SELECT: Sortowanie danych (ORDER BY)
- Zapytanie SELECT: Filtrowanie danych (LIKE, IN, BETWEEN)
Zapytania modyfikujące dane
- Zapytanie INSERT: Dodawanie danych
- Zapytanie UPDATE: Aktualizacja danych
- Zapytanie REPLACE: Zastępowanie danych
Zapytania usuwające dane
Złączenia i relacje
- Podstawy złączeń (JOIN): INNER JOIN
- Zewnętrzne złączenia (OUTER JOIN)
- Złączenia CROSS JOIN i SELF JOIN
- Tworzenie relacji między tabelami
Funkcje agregujące i grupowanie
- Funkcje agregujące: COUNT, SUM, AVG
- Grupowanie danych: GROUP BY i HAVING
- Zapytania z funkcjami MAX i MIN
Zarządzanie użytkownikami
- Tworzenie nowego użytkownika
- Przydzielanie uprawnień użytkownikom
- Usuwanie użytkowników i cofanie uprawnień
- Zarządzanie hasłami użytkowników
Zaawansowane funkcje MySQL
- Transakcje w MySQL: BEGIN, COMMIT, ROLLBACK
- Tworzenie widoków (VIEWS)
- Procedury składowane: Tworzenie i wywoływanie
- Funkcje użytkownika (USER FUNCTIONS)
Instrukcja ALTER: Modyfikacja tabeli
Instrukcja ALTER TABLE w MySQL pozwala na modyfikację istniejącej tabeli bez konieczności jej usuwania i tworzenia od nowa. Możemy dodawać, usuwać i zmieniać kolumny, a także zarządzać kluczami i indeksami.
Możliwe operacje w ALTER TABLE
✅ Dzięki ALTER TABLE możemy:
- Dodawać nowe kolumny do tabeli.
- Usuwać istniejące kolumny.
- Zmieniać typ danych kolumny.
- Zmieniać nazwę kolumny.
- Zmieniać nazwę tabeli.
- Dodawać i usuwać klucze główne oraz obce.
- Dodawać i usuwać indeksy.
📌 Dodawanie nowej kolumny
Przykład: Dodanie nowej kolumny telefon do tabeli uzytkownicy
📝 Opis:- ADD COLUMN - dodaje nową kolumnę.
- telefon - nazwa nowej kolumny.
- VARCHAR(15) - typ danych (do 15 znaków).
- DEFAULT NULL - jeśli wartość nie zostanie podana, będzie NULL.
📌Usuwanie kolumny
📝 Opis:
- DROP COLUMN - usuwa kolumnę telefon wraz z jej danymi.
UWAGA: Operacja jest nieodwracalna – dane w kolumnie zostaną utracone!
Przykład
// Dodawanie kolumny
ALTER TABLE uzytkownicy
ADD COLUMN telefon VARCHAR(15) DEFAULT NULL;
// Usuwanie kolumny
ALTER TABLE uzytkownicy
DROP COLUMN telefon;
📌 Zmiana nazwy tabeli
✅ Przykład: Zmiana nazwy tabeli uzytkownicy na klienci
📝 Opis:
- RENAME TO - zmienia nazwę tabeli na nową.
Przykład
ALTER TABLE uzytkownicy
RENAME TO klienci;
📌 Zmiana typu danych w kolumnie
✅ Przykład: Zmiana typu danych w kolumnie email na TEXT
📝 Opis:
- MODIFY COLUMN - zmienia typ danych istniejącej kolumny.
- TEXT - nowy typ danych dla kolumny email.
📌 Zmiana nazwy kolumny
✅ Przykład: Zmiana nazwy kolumny imie na first_name
📝 Opis:
- CHANGE COLUMN - zmienia nazwę i ewentualnie typ danych kolumny.
- imie → first_name - nowa nazwa kolumny.
- VARCHAR(50) - typ danych pozostaje bez zmian.
Przykład
-- Zmiana typu danych w kolumnie
ALTER TABLE uzytkownicy
CHANGE COLUMN imie first_name VARCHAR(50);
-- Zmiana nazwy tabeli
ALTER TABLE uzytkownicy
CHANGE COLUMN imie first_name VARCHAR(50);
📌 Dodawanie klucza głównego (PRIMARY KEY)
✅ Przykład: Dodanie klucza głównego do tabeli zamowienia
📝 Opis:
- ADD PRIMARY KEY - ustawia id jako klucz główny.
📌 Dodawanie klucza głównego (PRIMARY KEY)
✅ Przykład: Powiązanie uzytkownik_id z tabelą uzytkownicy
📝 Opis:
- ADD CONSTRAINT - dodaje ograniczenie (fk_uzytkownik).
- FOREIGN KEY - tworzy klucz obcy powiązany z tabelą uzytkownicy.
- ON DELETE CASCADE - jeśli użytkownik zostanie usunięty, jego zamówienia także.
Przykład
-- Dodawanie klucza głównego (PRIMARY KEY)
ALTER TABLE zamowienia
ADD PRIMARY KEY (id);
-- Dodawanie klucza obcego (FOREIGN KEY)
ALTER TABLE zamowienia
ADD CONSTRAINT fk_uzytkownik
FOREIGN KEY (uzytkownik_id) REFERENCES uzytkownicy(id)
ON DELETE CASCADE;
Podsumowanie
- Instrukcja ALTER TABLE pozwala na modyfikację tabel w MySQL.
- Możemy dodawać, usuwać i zmieniać kolumny.
- Możemy zmieniać nazwę tabeli.
- Możemy dodawać klucze główne i obce.
- Modyfikacje są trwałe i mogą powodować utratę danych (np. DROP COLUMN).