Skrypty SQL, import i eksport bazy, formularze i raporty

INF.03 · teoria
autor: redakcja · 07.09.2026 · aktualizacja: 08.09.2026
Jak wygląda plik .sql i w jakiej kolejności stoją w nim polecenia, jak zaimportować i wyeksportować bazę w phpMyAdmin oraz przez mysqldump, czym różni się eksport SQL od CSV i czym są formularze, kwerendy i raporty. Lekcja 8.8 kursu INF.03.
Skrypt SQL to zwykły plik tek­sto­wy z po­le­ce­nia­mi, które baza wy­ko­nu­je po kolei. Import wczy­tu­je taki plik do bazy, eks­port za­pi­su­je bazę do pliku. Od tej lekcji za­czy­na się każdy eg­za­min prak­tycz­ny INF.03: pierw­szym po­le­ce­niem ar­ku­sza jest utwo­rze­nie bazy i za­im­por­to­wa­nie do niej tabel z go­to­we­go pliku, a do­wo­dem jest zrzut ekranu.

Jak wy­glą­da skrypt SQL

Plik z roz­sze­rze­niem .sql za­wie­ra po­le­ce­nia od­dzie­lo­ne śred­ni­ka­mi. Ko­lej­ność wynika z za­leż­no­ści: baza, potem tabele nad­rzęd­ne, potem tabele z klu­cza­mi obcymi, na końcu dane.
-- Baza egzaminacyjna, wersja z 07.09.2026 DROP DATABASE IF EXISTS egzamin; CREATE DATABASE egzamin DEFAULT CHARACTER SET utf8mb4; USE egzamin; CREATE TABLE klient ( id INT AUTO_INCREMENT PRIMARY KEY, imie VARCHAR(40) NOT NULL, miasto VARCHAR(40) ); CREATE TABLE zamowienie ( id INT AUTO_INCREMENT PRIMARY KEY, klient_id INT, kwota DECIMAL(8,2) NOT NULL, FOREIGN KEY (klient_id) REFERENCES klient(id) ); INSERT INTO klient (imie, miasto) VALUES ('Anna', 'Kraków'), ('Piotr', 'Gdańsk'); INSERT INTO zamowienie (klient_id, kwota) VALUES (1, 650), (1, 120), (2, 25);
Cztery rzeczy, które w takim pliku muszą się zga­dzać:
  • Śred­nik po każdym po­le­ce­niu. Bez niego baza skleja dwa po­le­ce­nia w jedno i zgła­sza błąd skład­ni.
  • USE baza; albo wybór bazy w na­rzę­dziu. Bez tego po­le­ce­nia CREATE TABLE nie wiedzą, gdzie two­rzyć tabele.
  • Ko­lej­ność tabel. zamowienie z klu­czem obcym musi po­wstać po klient.
  • Ko­do­wa­nie pliku UTF-8. Skrypt za­pi­sa­ny w innym ko­do­wa­niu wstawi „Kraków" jako „Kraków".

Import w phpMyAdmin

Na eg­za­mi­nie plik z ta­be­la­mi jest w ar­chi­wum, które roz­pa­ko­wu­jesz na pulpit. Kroki:
  • 1.
    Uru­chom XAMPP Con­trol Panel i wy­star­tuj usługi Apache oraz MySQL.
  • 2.
    Wejdź na http://localhost/phpmyadmin.
  • 3.
    Utwórz bazę o nazwie z ar­ku­sza (zwykle egzamin), zestaw znaków utf8mb4_polish_ci.
  • 4.
    Klik­nij nazwę bazy na liście po lewej, żeby była wy­bra­na. To jest krok, który naj­czę­ściej się pomija: import bez wy­bra­nej bazy tworzy tabele w złym miej­scu albo kończy się błędem.
  • 5.
    Za­kład­ka Import, przy­cisk wyboru pliku, wskaż plik .sql, ko­do­wa­nie utf-8, format SQL, na dole Wy­ko­naj.
  • 6.
    Sprawdź, czy tabele po­ja­wi­ły się na liście i mają wier­sze. Do­pie­ro teraz zrób zrzut ekranu.
Arkusz zwykle każe za­pi­sać zrzut jako import.jpg i wymaga, żeby było na nim widać CAŁY ekran razem z pa­skiem zadań. Zrzut samego okna prze­glą­dar­ki nie speł­nia tego wa­run­ku.

Eks­port i kopia za­pa­so­wa

Eks­port za­pi­su­je bazę do pliku, który można wczy­tać z po­wro­tem. W phpMyAdmin służy do tego za­kład­ka Eks­port z dwiema me­to­da­mi:
Metoda
Co daje
Szybka
cały wy­bra­ny obiekt, usta­wie­nia do­myśl­ne, jeden klik
Własna
wybór tabel, zakres (struk­tu­ra, dane, oba), kom­pre­sja, do­dat­ki jak DROP TABLE
Wybór „struk­tu­ra i dane" jest tym, czego zwykle chcesz: struk­tu­ra to po­le­ce­nia CREATE TABLE, dane to po­le­ce­nia INSERT. Sama struk­tu­ra daje pustą bazę, same dane nie za­dzia­ła­ją bez tabel.
Format
Co za­wie­ra
Kiedy używać
SQL
po­le­ce­nia CREATE i INSERT
kopia za­pa­so­wa i prze­no­sze­nie bazy
CSV
same wier­sze, war­to­ści roz­dzie­lo­ne prze­cin­ka­mi
dane do ar­ku­sza kal­ku­la­cyj­ne­go
XML, JSON
dane ze struk­tu­rą znacz­ni­ków
wy­mia­na danych z inną apli­ka­cją
PDF
wydruk
tylko do czy­ta­nia, nie da się wczy­tać z po­wro­tem
To samo z wier­sza po­le­ceń robi mysqldump:
mysqldump -u root -p egzamin > kopia.sql # eksport całej bazy mysqldump -u root -p egzamin klient > klient.sql # eksport jednej tabeli mysql -u root -p egzamin < kopia.sql # przywrócenie z kopii
Zwróć uwagę na strzał­ki: > za­pi­su­je wynik do pliku, < wczy­tu­je plik do bazy. Do eks­por­tu służy pro­gram mysqldump, do im­por­tu zwykły klient mysql.
Pu­łap­ka: eks­port CSV nie jest kopią za­pa­so­wą bazy. Nie ma w nim struk­tu­ry tabel, kluczy ani re­la­cji, więc z samego pliku CSV nie da się od­two­rzyć bazy.

Import danych z pliku

Od­wrot­na ope­ra­cja też bywa w za­da­niach: masz dane w pliku CSV i musisz je wsta­wić do ist­nie­ją­cej tabeli. W phpMyAdmin wy­bie­ra się tabelę, za­kład­kę Import, format CSV i usta­wia se­pa­ra­tor (prze­ci­nek albo śred­nik) oraz to, czy pierw­szy wiersz za­wie­ra nazwy kolumn. Z wier­sza po­le­ceń robi to LOAD DATA INFILE.
Wa­ru­nek jest jeden: ko­lum­ny w pliku muszą od­po­wia­dać ko­lum­nom tabeli co do liczby i ko­lej­no­ści.

For­mu­la­rze, kwe­ren­dy i ra­por­ty

Pod­sta­wa pro­gra­mo­wa wy­mie­nia „for­mu­la­rze, za­py­ta­nia i ra­por­ty". Te trzy nazwy po­cho­dzą z pro­gra­mów typu Mi­cro­soft Access i LibreOffice Base, gdzie baza i in­ter­fejs siedzą w jednym pliku.
Ele­ment
Do czego służy
Tabela
prze­cho­wu­je dane
Kwe­ren­da (za­py­ta­nie)
wy­bie­ra i prze­li­cza dane, czyli to samo, co SELECT
For­mu­larz
okno do WPROWADZANIA i po­pra­wia­nia danych, wy­god­niej­sze niż tabela
Raport
wydruk danych z pod­su­mo­wa­nia­mi, do czy­ta­nia i dru­ko­wa­nia
W MySQL z phpMyAdmin for­mu­la­rzy i ra­por­tów nie ma: rolę for­mu­la­rza pełni strona z for­mu­la­rzem HTML i skryp­tem PHP, a rolę ra­por­tu wydruk strony albo eks­port. To dla­te­go INF.03 uczy jed­no­cze­śnie SQL i PHP: for­mu­larz na stro­nie plus za­py­ta­nie do bazy to do­kład­nie ta sama para pojęć, tylko zbu­do­wa­na z kloc­ków we­bo­wych.
Stare py­ta­nia w ban­kach pytają wprost o Access („w widoku pro­jek­tu kwe­ren­dy", „maska wpro­wa­dza­nia"). To po­zo­sta­łość po kwa­li­fi­ka­cji E.14; dzi­siej­szy eg­za­min prak­tycz­ny INF.03 używa MySQL i phpMyAdmin.

Na eg­za­mi­nie

Py­ta­nia pi­sem­ne: co za­wie­ra eks­port „tylko struk­tu­ra", które po­le­ce­nie tworzy kopię za­pa­so­wą bazy, do czego służy for­mu­larz, a do czego raport, oraz roz­po­zna­nie ko­lej­no­ści po­le­ceń w skryp­cie.
W części prak­tycz­nej cała ta lekcja to pierw­sze za­da­nie ar­ku­sza. Ko­lej­ność bez skró­tów: uru­chom Apache i MySQL, utwórz bazę, wy­bierz ją, za­im­por­tuj plik, sprawdź tabele, zrób zrzut całego ekranu i zapisz go pod nazwą z ar­ku­sza, w fol­de­rze na­zwa­nym twoim nu­me­rem PESEL. Do­pie­ro potem pisz kwe­ren­dy.

Ściąga

Za­da­nie
Jak
skrypt SQL
po­le­ce­nia po śred­ni­ku, ko­lej­ność: baza, tabele nad­rzęd­ne, tabele z klu­czem obcym, dane
start śro­do­wi­ska
XAMPP: Apache i MySQL, potem localhost/phpmyadmin
import
wy­bierz bazę, za­kład­ka Import, plik .sql, ko­do­wa­nie utf-8
eks­port w GUI
za­kład­ka Eks­port, metoda Własna, zakres „struk­tu­ra i dane"
eks­port z kon­so­li
mysqldump -u root -p baza > kopia.sql
przy­wró­ce­nie
mysql -u root -p baza < kopia.sql
kopia za­pa­so­wa
format SQL; CSV to tylko dane
kwe­ren­da, for­mu­larz, raport
wy­bie­ra­nie danych, wpro­wa­dza­nie danych, wydruk
Pobierz ściągę PDF
ZAWODNIK
egzamin zawodowy INF.02 · INF.03 · INF.04
Serwer Discord
Egzaminy zawodowe IT/Matury/Studia
@yastor
© 2026 Zawodnik · by Yastor
Arkusze i zasady oceniania pochodzą z CKE. Serwis nie jest powiązany z Centralną Komisją Egzaminacyjną.