Powtórzenie kluczowych pojęć i zasad
Poniżej znajdziesz skrócone podsumowanie najważniejszych pojęć, zasad i operacji z zakresu baz danych i SQL. Ta ściąga pomoże Ci przypomnieć kluczowe informacje na temat zarządzania bazami danych.
Wprowadzenie do baz danych i SQL
- Bazy danych: Zbiór uporządkowanych informacji przechowywanych i zarządzanych za pomocą odpowiednich narzędzi. Przykłady: MySQL, SQLite, Microsoft SQL Server.
- SQL (Structured Query Language): Język służący do komunikacji z bazą danych, który umożliwia tworzenie, modyfikowanie, przeszukiwanie i usuwanie danych.
- Diagram ERD (Entity-Relationship Diagram): Graficzne przedstawienie encji, ich atrybutów oraz relacji między nimi.
- Encja: Obiekt lub pojęcie, które chcemy przechowywać w bazie danych, np.
Student
,Zamowienie
. - Atrybut: Właściwości encji, np.
imie
inazwisko
dla encjiStudent
. - Relacja: Połączenie między encjami, które pokazuje, jak są one ze sobą powiązane, np.
Student
jest zapisany naKurs
.
- Encja: Obiekt lub pojęcie, które chcemy przechowywać w bazie danych, np.
- DBMS (Systemy Zarządzania Bazami Danych): Oprogramowanie do tworzenia i zarządzania bazami danych, np. MySQL.
Zarządzanie strukturą bazy danych
- Tworzenie bazy danych (
CREATE DATABASE
): Tworzy nową bazę danych, w której będą przechowywane wszystkie tabele i dane. - Modyfikacja bazy danych (
ALTER DATABASE
): Pozwala zmieniać nazwę lub ustawienia istniejącej bazy danych. - Usuwanie bazy danych (
DROP DATABASE
): Trwale usuwa bazę danych wraz z jej tabelami i danymi. - Tworzenie tabel (
CREATE TABLE
): Definiowanie tabel do przechowywania danych, w tym określanie kolumn oraz ich typów danych, np.INT
,VARCHAR
,DATE
. - Klucze główne i obce (
PRIMARY KEY
,FOREIGN KEY
): Klucz główny jednoznacznie identyfikuje każdy wiersz w tabeli, a klucz obcy tworzy powiązania między tabelami, co pozwala na tworzenie relacji między danymi. - Modyfikacja tabel (
ALTER TABLE
): Dodawanie, zmienianie lub usuwanie kolumn w tabelach, aby dostosować ich strukturę do potrzeb. - Usuwanie tabel (
DROP TABLE
): Usuwa całą tabelę z bazy danych, co oznacza utratę wszystkich jej danych. - Widoki (
CREATE VIEW
,ALTER VIEW
,DROP VIEW
): Widoki to wirtualne tabele oparte na wynikach zapytań SQL, które ułatwiają pracę z danymi.
Operacje na danych
- Wstawianie danych (
INSERT INTO
): Dodaje nowe rekordy (wiersze) do tabeli. - Usuwanie danych (
DELETE
): Usuwa rekordy z tabeli na podstawie określonych warunków. - Transakcje (
BEGIN
,COMMIT
,ROLLBACK
): Grupują operacje, aby zapewnić spójność danych.COMMIT
zatwierdza zmiany, aROLLBACK
cofa je, jeśli coś poszło nie tak.
Wyszukiwanie i przetwarzanie danych w SQL
- Tworzenie zapytań (
SELECT
): Pobiera dane z tabeli na podstawie określonych kryteriów. - Filtrowanie danych (
WHERE
): Wybiera wiersze, które spełniają określone warunki, np.WHERE wiek > 18
. - Operatory porównania (
=
,>
,<
) i operatory logiczne (AND
,OR
,NOT
): Używane do budowania bardziej złożonych warunków wyszukiwania. - Sortowanie wyników (
ORDER BY
): Sortuje wyniki zapytania według określonych kolumn, np.ORDER BY nazwisko
. - Zaawansowane filtrowanie (
LIKE
,BETWEEN
):LIKE
dopasowuje wzorce, np.LIKE 'A%'
dla imion zaczynających się na A.BETWEEN
wybiera wartości z określonego zakresu, np.BETWEEN 100 AND 200
. - Operatory matematyczne (
+
,-
,*
,/
) i operatory logiczne (AND
,OR
): Wykonują operacje na danych, np. obliczenia matematyczne w zapytaniach. - Aliasowanie (
AS
): Nadaje nową nazwę kolumnie lub tabeli w wynikach zapytania, aby były bardziej czytelne.
Funkcje agregujące i grupowanie
- Funkcje agregujące (
COUNT
,SUM
,AVG
,MIN
,MAX
): Służą do wykonywania operacji na grupach danych, np. zliczania wierszy (COUNT
), sumowania wartości (SUM
), obliczania średniej (AVG
), znajdowania minimalnej (MIN
) lub maksymalnej (MAX
) wartości. - Grupowanie wyników (
GROUP BY
): Grupuje rekordy, aby można było zastosować funkcje agregujące do każdej grupy, np.GROUP BY nazwa_klienta
. - Filtracja grup (
HAVING
): Filtruje grupy utworzone za pomocąGROUP BY
, aby wyświetlić tylko te, które spełniają określone warunki, np.HAVING SUM(kwota) > 1000
.
Łączenie tabel w SQL
- Łączenia tabel (
JOIN
): Łączy dane z różnych tabel, aby uzyskać pełniejsze informacje.- INNER JOIN: Pobiera tylko te wiersze, które mają dopasowanie w obu tabelach.
- LEFT JOIN: Pobiera wszystkie wiersze z lewej tabeli, nawet jeśli nie mają dopasowania w prawej tabeli.
- RIGHT JOIN: Pobiera wszystkie wiersze z prawej tabeli, nawet jeśli nie mają dopasowania w lewej tabeli.
- FULL JOIN: Pobiera wszystkie wiersze z obu tabel, niezależnie od tego, czy mają dopasowanie.
Podzapytania
- Podzapytania: Zapytania wykonywane wewnątrz innych zapytań, aby zwrócić wyniki do zapytania głównego.
- Operatory ilościowe (
ANY
,ALL
,SOME
) i operator EXISTS: Używane z podzapytaniami, aby sprawdzić, czy spełnione są określone warunki, np.EXISTS
sprawdza, czy podzapytanie zwraca wynik.
Zabezpieczenia i prawa dostępu
- Użytkownicy i role: Zarządzanie użytkownikami i nadawanie im uprawnień do korzystania z bazy danych, takich jak odczyt, zapis lub modyfikacja danych.
- Bezpieczeństwo danych: Ochrona danych przed nieuprawnionym dostępem za pomocą szyfrowania, maskowania danych oraz zarządzania kluczami szyfrowania.
Indeksy i optymalizacja zapytań
- Indeksy (
INDEX
): Służą do przyspieszania wyszukiwania danych w tabelach, podobnie jak indeks w książce pozwala szybciej znaleźć informacje. - Indeksy złożone: Indeksy obejmujące więcej niż jedną kolumnę, aby przyspieszyć bardziej złożone zapytania.
- Analiza planu wykonania zapytań (
EXPLAIN
): Narzędzie, które pomaga zrozumieć, jak baza danych wykonuje zapytania, co jest przydatne do ich optymalizacji.
Normalizacja baz danych
- Normalizacja: Proces organizowania danych w bazie, aby usunąć nadmiarowość i zapewnić spójność danych.
- 1NF (Pierwsza forma normalna): Dane w każdej kolumnie muszą być atomowe, czyli jednowartościowe.
- 2NF (Druga forma normalna): Eliminuje zależności częściowe — każda kolumna niekluczowa powinna zależeć od całego klucza głównego.
- 3NF (Trzecia forma normalna): Eliminuje zależności przechodnie, czyli kolumny niekluczowe nie powinny zależeć od innych kolumn niekluczowych.
- Denormalizacja: Proces odwrotny do normalizacji, polegający na łączeniu tabel w celu przyspieszenia odczytu danych.
Aby widzieć ocenę lekcji - Zaloguj się