baza wiedzy
Słownik pojęć INF.03 - SQL, PHP, HTML, JavaScript
Największy słownik pojęć IT do egzaminu INF.03. SQL, PHP, HTML, JavaScript w jednym miejscu z przykładami.
RDBMS (Relational Database Management System) to system zarządzania bazą danych, w której dane są przechowywane w tabelach powiązanych relacjami. Model relacyjny opiera się na algebrze relacji: każda tabela to zbiór krotek (wierszy) o ustalonej strukturze kolumn.
ACID
Właściwości transakcji: Atomicity (niepodzielność - albo cała transakcja się wykona, albo żadna zmiana nie zostanie zapisana), Consistency (spójność - po zatwierdzeniu baza pozostaje w poprawnym stanie względem reguł), Isolation (izolacja - równoległe transakcje nie widzą nawzajem niezatwierdzonych zmian w sposób powodujący anomalie), Durability (trwałość - po COMMIT dane przetrwają awarię).
Klucz główny i obcy
Klucz główny (PRIMARY KEY) jednoznacznie identyfikuje wiersz w tabeli (np. id INT AUTO_INCREMENT PRIMARY KEY). Klucz obcy (FOREIGN KEY) to kolumna w tabeli zależnej, której wartości muszą odpowiadać kluczowi głównemu w tabeli nadrzędnej - realizuje integralność referencyjną (np. zamówienie wskazuje istniejącego klienta).
Normalizacja (1NF, 2NF, 3NF)
- 1NF: wartości atomowe (w komórce jedna wartość, brak powtarzających się grup w jednej kolumnie).
- 2NF: 1NF + każda niekluczowa kolumna zależy od całego klucza (nie od jego części) - ważne przy kluczach złożonych.
- 3NF: 2NF + brak zależności przechodnich (niekluczowe kolumny zależą tylko od klucza, nie od innych niekluczowych).
Przykład schematu (MySQL)
CREATE TABLE klienci (
id INT AUTO_INCREMENT PRIMARY KEY,
email VARCHAR(255) NOT NULL UNIQUE,
nazwa VARCHAR(120) NOT NULL
);
CREATE TABLE zamowienia (
id INT AUTO_INCREMENT PRIMARY KEY,
klient_id INT NOT NULL,
data_zam DATE NOT NULL,
FOREIGN KEY (klient_id) REFERENCES klienci(id)
ON DELETE RESTRICT ON UPDATE CASCADE
);