- promocja
- W empik go
SQL w jeden dzień. Praktyczny kurs języka SQL - ebook
SQL w jeden dzień. Praktyczny kurs języka SQL - ebook
Odkryj moc SQL w rekordowym tempie! Ta wyjątkowa książka oferuje intensywny kurs, który pozwoli Ci opanować podstawy i zaawansowane techniki SQL w jeden dzień. To prawdziwa skarbnica wiedzy! Każda strona jest nasycona esencjonalną wiedzą, którą natychmiast przełożysz na praktykę. Od prostych zapytań SELECT po złożone operacje i optymalizację wydajności. Naucz się tworzyć efektywne zapytania, projektować wydajne schematy baz danych i optymalizować systemy. Zdobyta wiedza pozwoli Ci swobodnie poruszać się w świecie relacyjnych baz danych. Książka jest pełna praktycznych przykładów, które pomogą Ci zrozumieć zastosowanie SQL w realnych scenariuszach biznesowych. Niezależnie od Twojego poziomu zaawansowania, znajdziesz tu materiał dostosowany do swoich potrzeb. Zainwestuj jeden dzień, a zyskasz umiejętności na całe życie zawodowe. Nie czekaj - rozpocznij swoją przygodę z SQL już teraz i przekonaj się, jak wiele możesz osiągnąć w tak krótkim czasie!
Kategoria: | Bazy danych |
Zabezpieczenie: |
Watermark
|
ISBN: | 9788368316056 |
Rozmiar pliku: | 132 KB |
FRAGMENT KSIĄŻKI
1. Dlaczego SQL jest ważny?
1.1. Rola SQL w nowoczesnym rozwoju oprogramowania
1.2. Porównanie SQL z innymi technologiami
1.3. Szybki start: Pierwsze zapytanie SELECT
2. Podstawy: Struktura bazy i typy danych
2.1. Tabele, kolumny i wiersze
2.2. Klucze podstawowe i obce
2.3. Najważniejsze typy danych SQL i ich zastosowanie
2.4. Praktyka: Projektowanie prostej schematu bazy danych
3. Tworzenie i modyfikacja tabel
3.1. Składnia CREATE TABLE z przykładami
3.2. Dodawanie, modyfikacja i usuwanie kolumn za pomocą ALTER TABLE
3.3. Usuwanie tabel z DROP TABLE
3.4. Ćwiczenie: Stwórz schemat bazy danych dla sklepu internetowego
4. Wstawianie danych: INSERT INTO
4.1. Podstawowa składnia INSERT INTO
4.2. Wstawianie wielu wierszy jednocześnie
4.3. INSERT INTO SELECT: Kopiowanie danych między tabelami
4.4. Praktyka: Wypełnianie tabel sklepu internetowego danymi
5. Pobieranie danych: SELECT i klauzula WHERE
5.1. Anatomia zapytania SELECT
5.2. Filtrowanie z WHERE: operatory porównania i logiczne
5.3. Zaawansowane filtrowanie: LIKE, IN, BETWEEN
5.4. Ćwiczenie: Tworzenie raportów dla sklepu internetowego
6. Agregacja danych: GROUP BY i funkcje agregujące
6.1. Funkcje COUNT, SUM, AVG, MAX, MIN
6.2. Grupowanie wyników z GROUP BY
6.3. Filtrowanie grup z HAVING
6.4. Ćwiczenie: Analiza sprzedaży w sklepie internetowym
7. Modyfikacja i usuwanie danych: UPDATE i DELETE
7.1. Składnia UPDATE z przykładami
7.2. Masowe aktualizacje z JOIN
7.3. Bezpieczne usuwanie z DELETE
7.4. Praktyka: Aktualizacja cen i usuwanie nieaktualnych produktów
8. Indeksy: Optymalizacja wydajności zapytań
8.1. Tworzenie indeksów: składnia CREATE INDEX
8.2. Typy indeksów i kiedy ich używać
8.3. Analiza planu wykonania zapytania
8.4. Ćwiczenie: Optymalizacja zapytań w sklepie internetowym
9. Widoki i procedury składowane: Reużywalność kodu SQL
9.1. Tworzenie widoków dla często używanych zapytań
9.2. Pisanie i wywoływanie procedur składowanych
9.3. Funkcje zdefiniowane przez użytkownika
9.4. Ćwiczenie: Tworzenie raportów i automatyzacja procesów
10. Najczęstsze pułapki i jak ich unikać
10.1. Problemy z wydajnością: N+1 zapytania
10.2. Nieprawidłowe używanie indeksów
10.3. Błędy w złączeniach tabel
10.4. Ćwiczenie: Debugowanie i optymalizacja problematycznych zapytań
11. Narzędzia i zasoby do dalszej nauki
11.1. Popularne systemy zarządzania bazami danych: MySQL, PostgreSQL, SQLite
11.2. Narzędzia do wizualizacji i projektowania baz danych
11.3. Platformy online do ćwiczenia SQL
11.4. Rekomendowane książki i kursy online1.1. Rola SQL w nowoczesnym rozwoju oprogramowania
1.1. Rola SQL w nowoczesnym rozwoju oprogramowania
SQL (Structured Query Language) to język programowania stworzony do zarządzania i manipulowania relacyjnymi bazami danych. Jego główne zastosowania obejmują:
- Tworzenie, modyfikowanie i usuwanie struktur baz danych
- Wstawianie, aktualizowanie i usuwanie danych
- Pobieranie informacji z baz danych
- Zarządzanie uprawnieniami i kontrolą dostępu do danych
Bazy danych są fundamentem większości nowoczesnych aplikacji. Znajdziesz je w:
- Aplikacjach internetowych
- Systemach zarządzania treścią
- Aplikacjach mobilnych
- Systemach analitycznych
- Platformach e-commerce
- Systemach zarządzania relacjami z klientami (CRM)
Używanie SQL w projektach programistycznych przynosi liczne korzyści:
- Efektywne przechowywanie i zarządzanie dużymi ilościami danych
- Szybkie i precyzyjne wyszukiwanie informacji
- Zapewnienie integralności i spójności danych
- Łatwe skalowanie aplikacji wraz ze wzrostem ilości danych
- Możliwość tworzenia zaawansowanych raportów i analiz
- Standaryzacja dostępu do danych w różnych systemach i językach programowania
- Optymalizacja wydajności aplikacji poprzez efektywne zapytania do bazy danych
SQL można łatwo zintegrować z większością popularnych języków programowania:
- Języki oferują biblioteki i sterowniki do komunikacji z bazami danych
- Zapytania SQL można osadzać bezpośrednio w kodzie aplikacji
- Istnieją ORM (Object-Relational Mapping) ułatwiające pracę z bazami danych
- API bazodanowe umożliwiają abstrakcję niskopoziomowych operacji SQL
Aplikacje oparte na SQL charakteryzują się wysoką skalowalnością i wydajnością:
- Indeksy i optymalizacja zapytań poprawiają szybkość dostępu do danych
- Mechanizmy buforowania zmniejszają obciążenie bazy danych
- Partycjonowanie danych umożliwia efektywne zarządzanie dużymi zbiorami
- Replikacja i klastrowanie zapewniają wysoką dostępność i odporność na awarie
- Transakcje gwarantują spójność danych przy równoczesnym dostępie
SQL oferuje wysoki poziom standaryzacji i przenośności:
- Podstawowa składnia SQL jest wspólna dla większości systemów bazodanowych
- Zapytania można łatwo przenosić między różnymi bazami danych
- Standard ANSI SQL zapewnia kompatybilność między systemami
- Migracja danych między różnymi bazami jest stosunkowo prosta
- Umiejętności SQL są uniwersalne i przydatne w różnych środowiskach
SQL odgrywa kluczową rolę w analizie danych i Business Intelligence:
- Umożliwia tworzenie złożonych zapytań analitycznych
- Wspiera agregację danych i funkcje statystyczne
- Pozwala na łączenie danych z wielu źródeł poprzez operacje JOIN
- Ułatwia generowanie raportów i dashboardów
- Wspiera tworzenie widoków i procedur do cyklicznych analiz
- Umożliwia eksplorację danych i odkrywanie ukrytych wzorców
W kontekście Big Data i przetwarzania w czasie rzeczywistym:
- SQL adaptuje się do pracy z ogromnymi zbiorami danych
- Wspiera przetwarzanie strumieniowe dla analiz w czasie rzeczywistym
- Integruje się z narzędziami do przetwarzania rozproszonych danych
- Pozwala na tworzenie zapytań na danych strukturalnych i niestrukturalnych
- Umożliwia optymalizację wydajności dla bardzo dużych wolumenów danych
- Wspiera paralelizację zapytań dla szybszego przetwarzania
Przyszłość SQL w erze chmury i mikrousług:
- SQL adaptuje się do modeli chmurowych, oferując elastyczność i skalowalność
- Bazy SQL as a Service stają się coraz popularniejsze
- SQL integruje się z architekturami mikrousługowymi
- Rozwój SQL wspiera przetwarzanie danych na krawędzi sieci
- Ewolucja SQL w kierunku obsługi danych nierelacyjnych i semi-strukturalnych
- Automatyzacja zarządzania bazami SQL w środowiskach chmurowych
- Rozwój narzędzi do monitorowania i optymalizacji wydajności SQL w chmurze1.2. Porównanie SQL z innymi technologiami
Główne cechy SQL jako języka zapytań relacyjnych:
- Deklaratywność - opisujesz co chcesz osiągnąć, nie jak to zrobić
- Standaryzacja - wspólna podstawowa składnia dla różnych systemów
- Wsparcie dla złożonych zapytań i operacji na danych
- Możliwość łączenia danych z wielu tabel
- Wbudowane funkcje agregujące i analityczne
- Obsługa transakcji i zapewnienie integralności danych
- Kontrola dostępu i zarządzanie uprawnieniami
- Optymalizacja zapytań przez system zarządzania bazą danych
Struktura danych w bazach SQL:
- Tabele jako podstawowe jednostki przechowywania danych
- Wiersze reprezentujące pojedyncze rekordy lub encje
- Kolumny definiujące atrybuty lub właściwości danych
- Klucze główne do unikalnej identyfikacji rekordów
- Klucze obce do tworzenia relacji między tabelami
- Indeksy dla optymalizacji wyszukiwania
- Widoki jako wirtualne tabele dla często używanych zapytań
- Schematy do organizacji i grupowania obiektów bazodanowych
Typy operacji CRUD w SQL:
- Create (tworzenie) - dodawanie nowych rekordów do bazy danych
- Read (odczyt) - pobieranie danych z bazy za pomocą zapytań SELECT
- Update (aktualizacja) - modyfikowanie istniejących rekordów
- Delete (usuwanie) - usuwanie rekordów z bazy danych
- Operacje INSERT do dodawania nowych danych
- Zapytania SELECT do pobierania i filtrowania informacji
- Polecenia UPDATE do zmiany wartości w istniejących rekordach
- Instrukcje DELETE do usuwania niepotrzebnych danych
Bazy NoSQL:
- Dokumentowe: przechowują dane w elastycznych strukturach podobnych do JSON
- Klucz-wartość: proste magazyny danych oparte na unikalnych kluczach
- Kolumnowe: optymalizowane do przechowywania i analizy dużych ilości danych
- Grafowe: specjalizują się w reprezentacji i analizie relacji między danymi
Główne różnice między SQL a NoSQL:
- Struktura danych: SQL - sztywna, tabelaryczna; NoSQL - elastyczna, zależna od typu
- Schema: SQL - zdefiniowana z góry; NoSQL - często schema-less lub elastyczna
- Skalowalność: SQL - głównie wertykalna; NoSQL - często horyzontalna
- Spójność danych: SQL - silna; NoSQL - często eventual consistency
- Złożoność zapytań: SQL - zaawansowane zapytania; NoSQL - prostsze operacje
- Transakcje: SQL - pełne wsparcie ACID; NoSQL - różny poziom wsparcia
- Normalizacja: SQL - wysoki poziom; NoSQL - często denormalizacja
- Relacje: SQL - wbudowane; NoSQL - często symulowane lub w przypadku baz grafowych
Scenariusze użycia SQL vs NoSQL:
- SQL: • Aplikacje wymagające złożonych transakcji i integralności danych • Systemy raportowania i analizy biznesowej • Aplikacje z jasno zdefiniowaną strukturą danych • Systemy finansowe i bankowe • Tradycyjne systemy zarządzania treścią
- NoSQL: • Aplikacje z dużą ilością danych i wysokim obciążeniem • Systemy przetwarzające dane w czasie rzeczywistym • Aplikacje wymagające elastycznej struktury danych • Platformy społecznościowe i aplikacje mobilne • Systemy IoT i analiza logów • Magazyny danych dla mikrousług
Hybrydowe podejścia: łączenie SQL i NoSQL w projektach:
- Wykorzystanie SQL do krytycznych danych wymagających integralności
- Użycie NoSQL dla danych o zmiennej strukturze lub wymagających szybkiego dostępu
- Synchronizacja danych między systemami SQL i NoSQL
- Wykorzystanie SQL jako głównego magazynu z NoSQL jako cache
- Implementacja mikrousług z różnymi bazami danych dla różnych funkcji
- Użycie SQL do raportowania i analiz, NoSQL do gromadzenia surowych danych
- Integracja danych z różnych źródeł za pomocą narzędzi ETL
Ewolucja SQL w kierunku obsługi danych nierelacyjnych:
- Wprowadzenie typów danych JSON i XML w bazach relacyjnych
- Rozwój funkcji do przetwarzania i analizy danych semi-strukturalnych
- Implementacja indeksów dla danych nierelacyjnych w bazach SQL
- Wsparcie dla przechowywania i zapytywania danych geograficznych
- Rozszerzenia SQL do obsługi grafów i analiz sieciowych
- Rozwój funkcji analitycznych do przetwarzania dużych zbiorów danych
- Integracja z zewnętrznymi systemami przetwarzania danych
Trendy w rozwoju technologii bazodanowych:
- Wzrost popularności rozwiązań chmurowych i DBaaS (Database as a Service)
- Rozwój baz danych zaprojektowanych dla środowisk kontenerowych
- Zwiększenie nacisku na automatyzację zarządzania i optymalizacji baz danych
- Integracja machine learning w zarządzaniu i optymalizacji zapytań
- Rozwój systemów multi-model łączących różne paradygmaty bazodanowe
- Zwiększenie wsparcia dla przetwarzania strumieniowego i analiz w czasie rzeczywistym
- Rozwój technologii zapewniających większą skalowalność i odporność na awarie
- Nacisk na bezpieczeństwo i zgodność z regulacjami dotyczącymi ochrony danych
- Ewolucja w kierunku baz danych edge computing dla IoT i aplikacji rozproszonych
1.3. Szybki start: Pierwsze zapytanie SELECT
Struktura podstawowego zapytania SELECT:
- Słowo kluczowe SELECT rozpoczynające zapytanie
- Lista kolumn, które chcemy wybrać
- Słowo kluczowe FROM wskazujące tabelę źródłową
- Opcjonalna klauzula WHERE do filtrowania wyników
- Średnik (;) na końcu zapytania w większości systemów bazodanowych
Wybieranie kolumn z tabeli:
- Nazwy kolumn oddzielone przecinkami po słowie SELECT
- Możliwość wyboru dowolnej liczby kolumn
- Kolejność kolumn w zapytaniu określa kolejność w wynikach
- Możliwość używania aliasów dla kolumn za pomocą słowa AS
- Nazwy kolumn są zazwyczaj case-insensitive, ale najlepiej zachować konsystencję
- Możliwość używania funkcji na kolumnach, np. UPPER() dla tekstu
Użycie gwiazdki (\*) do wyboru wszystkich kolumn:
- Symbol \* zastępuje listę wszystkich kolumn w tabeli
- Pozwala na szybkie pobranie całej zawartości tabeli
- Użyteczne podczas eksploracji danych lub debugowania
- Może wpływać na wydajność przy dużych tabelach
- Nie zalecane w kodzie produkcyjnym ze względu na potencjalne zmiany struktury tabeli
- Lepiej jawnie wymieniać potrzebne kolumny w zapytaniach aplikacyjnych
Filtrowanie wyników za pomocą WHERE:
- Klauzula WHERE umieszczana po FROM w zapytaniu
- Określa warunki, które muszą spełniać zwracane wiersze
- Można łączyć wiele warunków za pomocą operatorów AND i OR
- Pozwala na precyzyjne zawężanie wyników zapytania
- Wspiera porównania z wartościami stałymi lub innymi kolumnami
- Możliwość używania funkcji w warunkach WHERE
- Warunki mogą odnosić się do dowolnych kolumn, nie tylko tych w SELECT
Proste operatory porównania:
- \= równe
- < mniejsze niż
- > większe niż
- <= mniejsze lub równe
- > \= większe lub równe
- <> lub != różne od
- Operatory działają na liczbach, tekście i datach
- Dla tekstu porównanie jest zazwyczaj case-insensitive
- Przy porównywaniu dat należy zwrócić uwagę na format
- Można używać IS NULL do sprawdzania wartości null
Sortowanie wyników za pomocą ORDER BY:
- Klauzula ORDER BY umieszczana na końcu zapytania
- Pozwala określić kolejność zwracanych wierszy
- Można sortować po jednej lub wielu kolumnach
- Domyślne sortowanie jest rosnące (ASC)
- Użyj DESC dla sortowania malejącego
- Możliwość sortowania po kolumnach nieuwzględnionych w SELECT
- Sortowanie może wpływać na wydajność przy dużych zbiorach danych
- Można sortować po wyrażeniach, np. ORDER BY LENGTH(nazwa)
Praktyczne przykłady prostych zapytań SELECT:
- SELECT imie, nazwisko FROM pracownicy;
- SELECT \* FROM produkty WHERE cena < 100;
- SELECT nazwa, data\_zamowienia FROM zamowienia ORDER BY data\_zamowienia DESC;
- SELECT DISTINCT kategoria FROM produkty;
- SELECT imie, nazwisko FROM klienci WHERE miasto = 'Warszawa';
- SELECT tytul, autor FROM ksiazki WHERE rok\_wydania >= 2000 AND rok\_wydania <= 2020;
- SELECT nazwa\_produktu, cena \* 1.23 AS cena\_z\_vat FROM produkty;
- SELECT imie, nazwisko FROM pracownicy WHERE data\_zatrudnienia IS NOT NULL;
Typowe błędy początkujących i jak ich unikać:
- Zapominanie o średniku na końcu zapytania - zawsze kończyć średnikiem
- Używanie pojedynczego cudzysłowu dla nazw kolumn - używać podwójnych cudzysłowów lub backticks
- Mieszanie AND i OR bez nawiasów - używać nawiasów dla jasności priorytetów
- Zapominanie o apostrofach dla wartości tekstowych - zawsze otaczać teksty apostrofami
- Próba używania aliasów kolumn w WHERE - aliasy działają tylko w ORDER BY i później
- Używanie \* w produkcyjnych zapytaniach - zawsze wymieniać potrzebne kolumny
- Nieprawidłowa kolejność klauzul - pamiętać o kolejności SELECT, FROM, WHERE, ORDER BY
- Literówki w nazwach tabel lub kolumn - dokładnie sprawdzać nazwy
Narzędzia do wykonywania zapytań SQL:
- Konsole terminalowe specyficzne dla danego systemu bazodanowego
- Graficzne interfejsy dostarczane przez producentów baz danych
- Uniwersalne narzędzia jak DBeaver, HeidiSQL czy MySQL Workbench
- Zintegrowane środowiska programistyczne (IDE) z wtyczkami do baz danych
- Webowe interfejsy administracyjne jak phpMyAdmin dla MySQL
- Narzędzia do wizualizacji danych z możliwością wykonywania zapytań SQL
- Platformy chmurowe oferujące interfejsy do zarządzania bazami danych
- Specjalistyczne narzędzia do monitorowania i optymalizacji wydajności baz danych
2. PODSTAWY: STRUKTURA BAZY I TYPY DANYCH2.1. Tabele, kolumny i wiersze
Tworzenie tabeli z określonymi kolumnami:
Aby utworzyć nową tabelę w bazie danych SQL, użyj polecenia CREATE TABLE. Składnia jest następująca:
CREATE TABLE nazwa_tabeli (
nazwa_kolumny1 typ_danych1 ,
nazwa_kolumny2 typ_danych2 ,
...
);
Przykład:
CREATE TABLE pracownicy (
id INT PRIMARY KEY,
imie VARCHAR(50) NOT NULL,
nazwisko VARCHAR(50) NOT NULL,
data_urodzenia DATE,
stanowisko VARCHAR(100),
pensja DECIMAL(10, 2)
);
W tym przykładzie:
- INT to typ całkowity dla identyfikatora
- VARCHAR to typ tekstowy o zmiennej długości
- DATE to typ daty
- DECIMAL to typ liczbowy z precyzją dziesiętną
Ograniczenia, takie jak PRIMARY KEY czy NOT NULL, definiują reguły dla danych w kolumnach.
Dodawanie wierszy do tabeli:
Aby dodać nowe wiersze do istniejącej tabeli, użyj polecenia INSERT INTO. Oto podstawowa składnia:
INSERT INTO nazwa_tabeli (kolumna1, kolumna2, ...)
VALUES (wartość1, wartość2, ...);
Przykład dodania pracownika do tabeli:
INSERT INTO pracownicy (id, imie, nazwisko, data_urodzenia, stanowisko, pensja)
VALUES (1, 'Jan', 'Kowalski', '1990-05-15', 'Programista', 5000.00);
Możesz też dodać wiele wierszy jednocześnie:
INSERT INTO pracownicy (id, imie, nazwisko, data_urodzenia, stanowisko, pensja)
VALUES
(2, 'Anna', 'Nowak', '1985-10-20', 'Manager', 7000.00),
(3, 'Piotr', 'Wiśniewski', '1992-03-08', 'Analityk', 4500.00);
Modyfikowanie istniejących kolumn w tabeli:
Do modyfikacji struktury istniejącej tabeli służy polecenie ALTER TABLE. Oto kilka przykładów:
Dodawanie nowej kolumny:
ALTER TABLE pracownicy
ADD COLUMN email VARCHAR(100);
Zmiana typu danych kolumny:
ALTER TABLE pracownicy
ALTER COLUMN pensja DECIMAL(12, 2);
Usuwanie kolumny:
ALTER TABLE pracownicy
DROP COLUMN stanowisko;
Zmiana nazwy kolumny (składnia może się różnić w zależności od systemu zarządzania bazą danych):
ALTER TABLE pracownicy
RENAME COLUMN imie TO pierwsze_imie;
Dodawanie ograniczenia:
ALTER TABLE pracownicy
ADD CONSTRAINT uq_email UNIQUE (email);
Nazywanie tabel i kolumn zgodnie z najlepszymi praktykami:
- Używaj rzeczowników w liczbie mnogiej dla nazw tabel: customers, orders, products.
- Stosuj konwencję snake\_case dla nazw tabel i kolumn: user\_accounts, first\_name.
- Unikaj słów kluczowych SQL jako nazw: zamiast "order" użyj "customer\_order".
- Bądź konsekwentny w nazewnictwie: jeśli używasz prefiksu "customer\_" w jednej tabeli, stosuj go we wszystkich powiązanych.
- Używaj pełnych, opisowych nazw: zamiast "addr", użyj "address".
- Unikaj skrótów, chyba że są powszechnie zrozumiałe: "id" jest akceptowalne, ale "qty" lepiej zapisać jako "quantity".
- Dla kolumn z kluczami obcymi, używaj nazwy tabeli w liczbie pojedynczej z sufiksem "\_id": user\_id w tabeli orders.
Określanie odpowiednich typów danych dla kolumn:
- Dla liczb całkowitych:
- TINYINT dla małych liczb (0 do 255)
- INT dla większości przypadków
- BIGINT dla bardzo dużych liczb
- Dla liczb zmiennoprzecinkowych:
- DECIMAL lub NUMERIC dla precyzyjnych obliczeń (np. kwoty pieniężne)
- FLOAT lub DOUBLE dla przybliżonych wartości naukowych
- Dla tekstu:
- CHAR(n) dla stałej długości tekstu
- VARCHAR(n) dla zmiennej długości tekstu
- TEXT dla długich fragmentów tekstu
- Dla dat i czasu:
- DATE dla samej daty
- TIME dla samego czasu
- DATETIME lub TIMESTAMP dla daty i czasu
- Dla wartości logicznych:
- BOOLEAN lub TINYINT(1)
- Dla danych binarnych:
- BLOB dla dużych obiektów binarnych
- Wybieraj najmniejszy możliwy typ danych, który pomieści wszystkie potencjalne wartości.
Usuwanie tabel i wierszy:
Usuwanie całej tabeli:
DROP TABLE nazwa_tabeli;
Przykład:
DROP TABLE pracownicy;
Usuwanie wszystkich wierszy z tabeli bez usuwania samej tabeli:
DELETE FROM nazwa_tabeli;
Przykład:
DELETE FROM pracownicy;
Usuwanie określonych wierszy z tabeli:
DELETE FROM nazwa_tabeli
WHERE warunek;
Przykład:
DELETE FROM pracownicy
WHERE data_urodzenia < '1980-01-01';
- Przed usunięciem danych zawsze twórz kopię zapasową.
- Używaj klauzuli WHERE ostrożnie, aby uniknąć przypadkowego usunięcia zbyt wielu danych.
- Rozważ użycie transakcji dla bezpieczniejszego usuwania:
BEGIN TRANSACTION;
DELETE FROM pracownicy WHERE id = 5;
-- Sprawdź, czy usunięto właściwe dane
COMMIT; -- lub ROLLBACK, jeśli coś poszło nie tak
- W przypadku dużych tabel, usuwanie partiami może być wydajniejsze:
DELETE TOP(1000) FROM duza_tabela
WHERE data < '2020-01-01';
Przeglądanie struktury istniejącej tabeli: