Wstęp: Plan działania
Cześć,
Dziś zaczniemy od szybkiego podsumowania co już wiesz, i przy tej okazji wejdziemy troszkę w teorię, ale spróbujemy jak zawsze bardzo prosto. Na koniec pobierzesz na komputer darmowe narzędzie, i stworzymy plik z bazą danych. Pokażę Ci, jak zainstalować darmowe, profesjonalne narzędzia do pracy z bazami danych. Stworzymy plik Twojej pierwszej lokalnej bazy danych, która w kolejnej lekcji zostanie wypełniona realistycznymi danymi sklepu internetowego. Przygotuj się na praktykę!
Zaczynamy
Przypominajka
Wiemy już, że BAZA DANYCH to zbiór TABEL. Bazę danych można rozumieć jako cały plik Excela, a poszczególne tabele jako arkusze w tym pliku. Albo wyobraź sobie szafkę z szufladami, gdzie każda szuflada to osobna tabela, a w niej precyzyjnie uporządkowane dane.

Spójrzmy na przykład naszej tabeli zawierającej dane klientów:
id | nazwa | miasto | telefon | data_dodania | |
1 | Jan Kowalski | Warszawa | +48251457856 | jan.kowal234@poczta.mail | 2025-02-15 14:54 |
2 | Anna Batory | Łódź | +48123456789 | anna@annabatory.pl | 2023-10-05 10:20 |
Niech nasza powyższa tabela nazywa się klienci.
Zawiera kolumny id – czyli klucz główny, wartość ta nigdy się w danej tabeli nie powtarza. Ona dokładnie wskazuje na konkretny rekord, czyli wiersz.
Potem widzimy kolumny nazwa
, miasto
, telefon
, email
– to są nasze zwykłe pola z danymi. Na końcu zaś mamy data_dodania
. W większości realnych systemów takie pola, zazwyczaj nazwane created_at
(data utworzenia) lub modified_at
(data ostatniej modyfikacji), są standardem.
Dodajmy do bazy tabelę produkty
id | nazwa | dostawca | jednostka | cena |
1 | Koszulka damska XS | 4F | szt. | 75.99 |
2 | Blacha na metry 😉 | Mrówka | m2 | 150.23 |
3 | Spodnie Jeans | Amerikanos | szt. | 98.14 |
I znów mamy pole id, nazwę, dostawcę, jednostkę w której sprzedaje się towar (sztuki i metry kwadratowe) oraz cenę za jednostkę.
Mamy więc dwie niezależne na razie tabele. Nie są one w żaden sposób ze sobą powiązane. Mamy kartotekę klientów, i kartotekę produktów.
Możemy wyświetlić produkty i klientów używając SQL.
SELECT * FROM klienci; – pokaże nam wszystkie rekordy i wszystkie kolumny z tabeli klienci.
SELECT nazwa, cena FROM produkty WHERE jednostka = 'szt.’; – wyświetli tylko dwie kolumny z tabeli produkty które sprzedawane są na sztuki.
Łączenie danych: Tabela zakup
i moc JOIN
!
W realnych systemach sklepowych takie niezależne dane są ze sobą łączone. Wyobraźmy sobie, że dany klient kupuje dany towar w konkretnej ilości sztuk. Do tego potrzebujemy dodatkowej tabeli, którą nazwiemy zakup
:
id | produkt_id | klient_id | ilosc | data_zamowienia |
1 | 1 | 2 | 2 | 2025-01-02 |
2 | 3 | 2 | 1 | 2025-05-01 |
3 | 2 | 1 | 100 | 2025-05-01 |
Zanim spojrzysz dalej, spróbuj patrząc już na trzy tabele zrozumieć co tu się dzieje.
SELECT klient.nazwa, – wybieramy poszczególne kolumny z trzech tabel NAZWA_TABELI.NAZWA_KOLUMNY
produkt.nazwa,
zakup.ilosc,
zakup.ilosc*produkt.cena AS wartosc, – UWAGA!: to jest nowość. na kolumnach tabel możemy wykonywać działania matematyczne oraz co później statystyczne. wynik działania nazywamy za pomocą klauzuli AS jako wartosc
zakup.data_zamowienia
FROM zakup – wybieramy tabelę zakup
JOIN klient ON zakup.klient_id=klient.id – dołączamy kolejną tabelę, klient, i wiążemy po polach id. Zobacz, w tabeli zakup mamy id klienta i id produktu
JOIN produkt ON zakup.produkt_id-produkt.id – teraz dodajemy tabelę produkt
i o to co się stanie, wynik dostaniemy taki:
nazwa | nazwa | ilosc | wartosc | data_zamowienia |
Anna Batory | Koszulka damska XS | 2 | 151.98 | 2025-01-02 |
Anna Batory | Spodnie Jeans | 1 | 98.14 | 2025-05-01 |
Jan Kowalski | Blacha na metry 😉 | 100 | 15 023 | 2025-05-01 |
Oczywiście widzimy pewien problem, mamy dwie kolumny nazwa. A to dlatego, że w obu tabelach mamy tak samo nazywające się kolumny, i aby było dobrze, trzeba użyć AS. (SELECT klient.nazwa AS nazwa_klienta, produkt.nazwa AS nazwa_produktu).

Lokalna Baza!
To tyle przypomnień na dziś. Mamy już jasny obraz tego, jak bazy danych przechowują i łączą informacje. Teraz nadszedł czas, aby przenieść tę wiedzę na Twój własny komputer.
W poprzedniej lekcji pisałem o HeidiSQL (https://www.heidisql.com). Jest prostą aplikacją, dobrze działa ale jest tylko na Windows i Linux, a co gdy masz Mac OS?
A wiec zmiana, kurs poprowadzę na darmowym produkcie na wszystkie platformy, w tym na MAx OS: DBeaver Community – https://dbeaver.io/download

Pobierz wersje na swój komputer, ja pobieram Windows installer i o niego oprę kolejne poradniki.
Instalacja: krok po kroku

Wybierz język i kliknij ok a nastepnie cąły czas ok i next aż do

Uruchamiamy aplikację.
Zaznacz wszystkie opcje o ile nie używasz innego oprogramowania do baz danych i jesteś początkujący, i potem znów next cały czas i OK aż instalacja się skończy


DBeaver na samym początku pyta czy utworzyć dla nas przykładową bazę danych! Ale nie robimy tego, założymy sami, a w następnej lekcji wypełnimy ją danymi by móc kontynuować kurs.

Klikamy No
I mamy widok podobny do tego:

Praktycznie tak samo wyglądają wszelkie narzędzia do baz danych.
Klikamy na przycisk z plusikiem

I wybieramy SQLite

Pojawia się okno na którym klikamy Create

Wybieramy folder na komputerze gdzie ma być nasza baza, dla prostoty możecie wybrać pulpit, ale ja stworzyłem folder

Klikamy zapisz

i na dole, z lewej wybieramy Test Connection
Pojawi się okno pobierania sterownika do bazy, i klikamy Download

po tym mamy informację, iż baza jest połączona

Wybieramy OK a potem finish i już widzimy bazę w nawigatorze z lewej strony

Nasza baza już czeka, na kolejną lekcję, gdzie wypełnimy ją danymi i wykonamy pierwsze zapytania wprost na własnym komputerze.
Na dziś koniec, i zapraszam za tydzień.
0 komentarzy