Wyniki egzaminu

Informacje o egzaminie:
  • Zawód: Technik informatyk
  • Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
  • Data rozpoczęcia: 8 czerwca 2026 09:40
  • Data zakończenia: 8 czerwca 2026 09:54

Egzamin zdany!

Wynik: 38/40 punktów (95,0%)

Wymagane minimum: 20 punktów (50%)

Nowe
Analiza przebiegu egzaminu- sprawdź jak rozwiązywałeś pytania
Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

W SQL polecenie ALTER TABLE służy do

A. dodawania tabeli do bazy danych
B. usuwania tabeli z bazy danych
C. zmiany kolumn w tabeli
D. zmiany danych w rekordach tabeli
Polecenie ALTER TABLE w języku SQL jest kluczowym narzędziem do modyfikacji struktury tabeli w bazie danych. Umożliwia dodawanie, modyfikowanie oraz usuwanie kolumn, co jest niezbędne w przypadku zmieniających się wymagań biznesowych lub technicznych. Na przykład, jeśli firma decyduje się na dodanie nowego atrybutu do produktu, można to zrobić za pomocą ALTER TABLE, co zapewni elastyczność w zarządzaniu danymi. Przykładowe polecenie może wyglądać tak: ALTER TABLE produkty ADD COLUMN kolor VARCHAR(30); Warto podkreślić, że zmiany wprowadzone za pomocą ALTER TABLE są trwałe i mogą wpływać na już istniejące dane, dlatego przed ich zastosowaniem zaleca się wykonanie kopii zapasowej bazy danych. Praktyki związane z właściwym używaniem ALTER TABLE powinny obejmować także testowanie w środowisku developerskim przed wdrożeniem zmian w produkcji, aby uniknąć nieprzewidzianych problemów.

Pytanie 2

Jak nazywa się czynność wykrywania i usuwania błędów w kodzie źródłowym programu?

A. debugowanie
B. normalizacja
C. standaryzacja
D. kompilowanie
Czynność wykrywania i usuwania błędów w kodzie źródłowym nazywa się debugowaniem (od ang. debugging) - programista lokalizuje usterkę i poprawia kod. Dlatego ta czynność to debugowanie.

Pytanie 3

W SQL polecenie INSERT INTO służy do

A. wprowadzania nowych pól do tabeli
B. tworzenia nowej tabeli
C. zmiany rekordów na wskazaną wartość
D. dodawania danych do tabeli
Polecenie INSERT INTO w języku SQL jest kluczowym narzędziem do wprowadzania danych do tabeli w bazie danych. Umożliwia dodawanie nowych rekordów, co jest niezwykle istotne w kontekście zarządzania danymi. Przykładowo, jeśli mamy tabelę 'Klienci' z kolumnami 'ID', 'Imię', 'Nazwisko', można użyć polecenia INSERT INTO, aby dodać nowego klienta: 'INSERT INTO Klienci (ID, Imię, Nazwisko) VALUES (1, 'Jan', 'Kowalski');'. Poprawne użycie tego polecenia zgodnie z najlepszymi praktykami SQL wymaga również przestrzegania reguł dotyczących typów danych oraz unikalności kluczy głównych, co pozwala na zachowanie integralności danych. Dzięki INSERT INTO można efektywnie zarządzać danymi w aplikacjach biznesowych, takich jak systemy CRM czy ERP, gdzie regularne dodawanie nowych informacji jest niezbędne do bieżącego funkcjonowania organizacji. Dodatkowo, polecenie to może być używane w połączeniu z innymi instrukcjami SQL, takimi jak SELECT, co pozwala na bardziej złożone operacje na danych.

Pytanie 4

Istnieje tabela o nazwie wycieczki z kolumnami: nazwa, cena oraz miejsca (reprezentujące liczbę dostępnych miejsc). Aby wyświetlić tylko nazwy wycieczek, których cena jest mniejsza od 2000 zł oraz mają co najmniej cztery wolne miejsca, należy użyć zapytania

A. SELECT * FROM wycieczki WHERE cena < 2000 AND miejsca > 4
B. SELECT * FROM wycieczki WHERE cena < 2000 OR miejsca > 3
C. SELECT nazwa FROM wycieczki WHERE cena < 2000 AND miejsca > 3
D. SELECT nazwa FROM wycieczki WHERE cena < 2000 OR miejsca > 4
Twoja odpowiedź jest jak najbardziej na miejscu, bo trafnie wskazuje, jakie warunki trzeba spełnić, żeby uzyskać odpowiednie nazwy wycieczek. W tym zapytaniu SQL 'SELECT nazwa FROM wycieczki WHERE cena < 2000 AND miejsca > 3' użyto operatora AND, co oznacza, że oba warunki muszą być spełnione naraz. Pierwszy mówi, że cena wycieczki musi być mniejsza niż 2000 zł, co pomaga znaleźć tańsze oferty. Drugi warunek wymaga, żeby było przynajmniej cztery wolne miejsca, co jest ważne, gdy ktoś myśli o podróżach z rodziną lub przyjaciółmi. Takie podejście jest zgodne z tym, co powinniśmy stosować, pisząc zapytania SQL, bo powinny być one precyzyjne i skuteczne. Warto też pamiętać o dobrym używaniu operatorów logicznych, żeby uzyskać oczekiwane rezultaty. Dlatego zrozumienie, jak te operatory działają oraz jak je zastosować w kontekście danych, jest kluczowe w pracy z bazami danych.

Pytanie 5

Wskaż kod CSS, który odpowiada layoutowi bloków 2 – 5, zakładając, że są one utworzone na podstawie podanego kodu HTML.

Ilustracja do pytania
A. Kod 2
B. Kod 1
C. Kod 3
D. Kod 4
Kod 2 jest poprawny, ponieważ najlepiej odpowiada przedstawionemu układowi bloków. W tym układzie blok 2 ma style float: left i szerokość 40%, co oznacza, że jest wypływany w lewo i zajmuje 40% dostępnej szerokości. Blok 3 również jest ustawiony z float: left, ale z szerokością 30%, co pozwala na ułożenie go obok bloku 2, o ile suma szerokości nie przekracza 100%. Blok 4 jest ustawiony z float: right i szerokością 30%, co umieszcza go po prawej stronie kontenera. Takie ustawienie float pozwala na zapełnienie przestrzeni między blokiem 2 i 4 blokiem 3, przy zachowaniu równowagi wizualnej. Blok 5 został ustawiony z float: left i szerokością 30%, co pozwala mu na umieszczenie poniżej bloku 3, ale z wyrównaniem do lewej. Taki układ jest częsty w projektowaniu stron, gdzie używa się systemu float do tworzenia responsywnych układów. W praktyce jednak, float jest coraz częściej zastępowany flexboxem lub gridem, które oferują bardziej elastyczne i intuicyjne sposoby zarządzania układem elementów na stronie.

Pytanie 6

W celu uzyskania efektu widocznego na rysunku, w kodzie HTML, należy umieścić znacznik skrótu <abbr> z atrybutem

Ilustracja do pytania
A. dfn
B. alt
C. title
D. name
Gratulacje, to jest prawidłowa odpowiedź. Znacznik &lt;abbr&gt; w HTML jest używany do określenia skrótu lub akronimu. Atrybut 'title' jest używany w połączeniu z tym znacznikiem, aby dostarczyć pełną formę skrótu, która jest wyświetlana, gdy użytkownik najedzie na skrót. Jest to zgodne ze standardami i dobrymi praktykami branżowymi, które zalecają ułatwianie zrozumienia treści dla wszystkich użytkowników, w tym tych z dysfunkcjami. Atrybut 'title' jest zatem przydatny, gdy skrót jest ryzykowny lub ma wiele znaczeń. Na przykład, skrót 'WHO' może oznaczać 'World Health Organization' lub 'Whois protocol' w zależności od kontekstu. Dlatego atrybut 'title' pomaga wyjaśnić zamierzone znaczenie.

Pytanie 7

Fragment kwerendy SQL zaprezentowany w ramce ma na celu uzyskanie

SELECT COUNT(wartosc) FROM ...
A. średnią wartość w kolumnie wartosc.
B. sumę wartości w kolumnie wartosc.
C. liczbę kolumn.
D. liczbę wierszy.
Instrukcja COUNT w kwerendzie SQL służy do zliczania liczby wierszy w tabeli, które spełniają określone kryteria. Wyrażenie SELECT COUNT(wartosc) FROM ... zlicza wiersze, które mają niepustą wartość w kolumnie wartosc. Funkcja COUNT jest jedną z funkcji agregujących w SQL, które pozwalają na wykonywanie operacji na zestawach danych. Zastosowanie tej funkcji jest szczególnie istotne w sytuacjach, gdy potrzebujemy szybko uzyskać informację o liczebności danych, co jest kluczowe w analizie danych oraz raportowaniu. Warto zauważyć, że COUNT(*) policzyłoby wszystkie wiersze, niezależnie od tego, czy zawierają wartości NULL, natomiast COUNT(kolumna) ignoruje wiersze z wartościami NULL w podanej kolumnie. To rozróżnienie jest kluczowe w optymalizacji zapytań oraz w zapewnieniu dokładności wyników. W praktyce biznesowej, zliczanie wierszy może być wykorzystywane do śledzenia liczby zamówień, ilości produktów w magazynie oraz innych wskaźników operacyjnych, co sprawia, że funkcja COUNT jest podstawowym narzędziem każdego analityka danych.

Pytanie 8

Który zapis HTML deklaruje KODOWANIE znaków w dokumencie?

A.
<meta encoding="UTF-8">
B.
<encoding="UTF-8">
C.
<charset="UTF-8">
D.
<meta charset="UTF-8">
Kodowanie znaków deklaruje się w sekcji <head> zapisem <meta charset="UTF-8"> - dzięki temu przeglądarka poprawnie wyświetli polskie znaki. Dlatego poprawny jest <meta charset="UTF-8">.

Pytanie 9

Jak zabezpieczyć CREATE USER, aby nie utworzyć konta, gdy już istnieje?

A.
CREATE OR REPLACE USER 'anna'@'localhost' IDENTIFIED BY 'haslo';
B.
CREATE USER OR DROP 'anna'@'localhost' IDENTIFIED BY 'haslo';
C.
CREATE USER IF NOT EXISTS 'anna'@'localhost' IDENTIFIED BY 'haslo';
D.
CREATE USER 'anna'@'localhost' IDENTIFIED BY 'haslo';
Aby nie utworzyć konta, które już istnieje (i uniknąć błędu), używa się klauzuli IF NOT EXISTS: CREATE USER IF NOT EXISTS 'anna'@'localhost' IDENTIFIED BY 'haslo';. Gdy użytkownik istnieje, polecenie zostanie pominięte. Dlatego poprawny jest wariant z IF NOT EXISTS.

Pytanie 10

DOM oferuje metody oraz właściwości, które w języku JavaScript umożliwiają

A. przesyłanie danych formularzy bezpośrednio do bazy danych
B. przeprowadzanie operacji na zmiennych zawierających liczby
C. pobieranie i zmianę elementów strony, która jest wyświetlana przez przeglądarkę
D. manipulację łańcuchami zdefiniowanymi w kodzie
Dobra robota! Odpowiedź jest poprawna, bo to właśnie DOM, czyli Document Object Model, pozwala programistom na zmianę struktury i stylu dokumentów HTML i XML. Dzięki DOM w JavaScript można na bieżąco zmieniać treść i układ strony bez konieczności jej przeładowania. Weźmy na przykład taki przypadek: chcemy zmienić tekst w elemencie <h1>. Robimy to, wybierając ten element metodą `document.getElementById()` i przypisując nową wartość do `innerHTML`. Standardy W3C mówią, jak to wszystko ma działać, dzięki czemu DOM jest uznawany w branży. Umiejętność manipulacji DOM jest mega ważna przy tworzeniu interaktywnych aplikacji webowych, jak różne formularze, które pozwalają użytkownikom dodawać i edytować dane. Dobrze wykorzystany DOM sprawia, że aplikacje są szybsze i bardziej responsywne, co jest kluczowe w nowoczesnym programowaniu front-end.

Pytanie 11

Dzięki któremu mechanizmowi możliwe jest dostosowanie wyglądu strony do konkretnego użytkownika i jego identyfikacja w serwisie?

A. formularzy
B. połączenia z bazą
C. obiektów DOM
D. cookie (ciasteczek)
Ciasteczka (cookies) to małe dane zapisywane przez serwis w przeglądarce użytkownika. Pozwalają rozpoznać go przy kolejnych wizytach i dostosować stronę (język, motyw, koszyk). Dlatego personalizację i identyfikację umożliwiają cookie.

Pytanie 12

Który parametr obrazu zmieni się po zmianie wartości NASYCENIA (saturacji)?

A. kolejność wyświetlania pikseli
B. intensywność (żywość) barw
C. ostrość krawędzi
D. przezroczystość
Nasycenie (saturacja) określa INTENSYWNOŚĆ i czystość barw. Przy nasyceniu bliskim zera kolory bledną aż do skali szarości, a przy wysokim stają się soczyste i żywe - to typowy suwak w GIMP-ie czy Photoshopie, gdy zdjęcie ma wyglądać „mocniej” lub „spokojniej”. Sama jasność i barwa (odcień) pozostają, zmienia się tylko siła kolorów. Zapamiętaj: saturacja steruje żywością barw.

Pytanie 13

Jaką funkcję pełni funkcja CONCAT() w SQL?

A. wyodrębnianie podłańcucha znaków z tekstu wejściowego
B. łącznienie tekstu wyświetlanego
C. usuwanie określonego tekstu
D. przycinanie tekstu wyświetlanego
Funkcja CONCAT() w SQL to naprawdę super opcja, bo pozwala na łączenie różnych ciągów tekstowych. To jest mega przydatne, zwłaszcza przy pracy z bazami danych, kiedy potrzebujemy stworzyć np. pełne imię i nazwisko z osobnych pól. Jak mamy tabelę z imionami i nazwiskami, to możemy użyć CONCAT(), żeby to wszystko połączyć w jedną całość: CONCAT(imie, ' ', nazwisko). Takie operacje są dość popularne w raportach i przy tworzeniu dynamicznych zapytań, gdzie często łączymy różne dane. Fajnie też pamiętać, żeby uważać na wartości NULL, bo mogą nam namieszać w wynikach. Poza tym, w różnych systemach bazodanowych są też inne metody łączenia tekstów, jak operator || w PostgreSQL, co może być przydatne, jeśli przenosisz zapytania między systemami.

Pytanie 14

Aby obraz w filmie zmieniał się gładko, liczba klatek (niezachodzących na siebie) w ciągu sekundy musi mieścić się przynajmniej w zakresie

A. 24 do 30 fps
B. 31 do 36 fps
C. 16 do 19 fps
D. 20 do 23 fps
Odpowiedź '24 do 30 fps' jest na miejscu, bo w tym zakresie klatki na sekundę zapewniają naprawdę płynny obraz w filmach. Standard to 24 fps, co uznaje się za minimalną liczbę klatek, aby widzowie widzieli ruch jako gładki, a nie poskakujący. W praktyce w telewizji oraz przy niektórych formatach wideo można spotkać się z 30 fps, co jeszcze bardziej poprawia wrażenia wizualne. Warto tu wspomnieć, że wiele produkcji, zwłaszcza animacji, trzyma się tych standardów. Na przykład, filmy animowane z 24 fps mają dobrą dynamikę, ale w transmisjach sportowych często korzysta się z 30 fps, żeby lepiej uchwycić szybko poruszające się obiekty. Ostatecznie, trzymanie się tych standardów w filmach i telewizji to klucz do dobrego odbioru wizualnego.

Pytanie 15

Które stwierdzenie o języku PHP jest PRAWDZIWE?

A. w nazwach zmiennych wielkość liter nie ma znaczenia
B. jest językiem o słabej (luźnej) kontroli typów
C. nazwy zmiennych poprzedza znak !
D. zmienne deklaruje się po słowie var
PHP ma SŁABĄ (luźną) kontrolę typów - typ zmiennej wynika z przypisanej wartości i bywa automatycznie konwertowany, np. napis "5" w działaniu liczbowym zostanie potraktowany jak liczba 5. Ułatwia to pisanie, ale bywa źródłem subtelnych błędów (stąd operator === porównujący też typ). Zapamiętaj: w PHP typ „idzie za wartością”, a nie jest sztywno deklarowany.

Pytanie 16

Na stronie umieszczono obrazek, a po nim akapit. Aby obrazek znalazł się w tej samej linii, po LEWEJ stronie tekstu, w stylu CSS obrazka należy ustawić:

A.
style: left;
B.
align: left;
C.
alt: left;
D.
float: left;
Aby obrazek znalazł się po LEWEJ stronie, a tekst go oblewał z prawej, stosuje się w CSS float: left;. Właściwość float „wypycha” element w bok i pozwala innej treści ułożyć się obok. Dlatego potrzebne jest float: left;.

Pytanie 17

Pokazane pole input pozwala na

<input type="checkbox" name="text1" value="text2">
A. wprowadzenie hasła
B. wybranie opcji
C. selekcję opcji z listy zawierającej wartości text1 oraz text2
D. wpisanie dowolnego ciągu znaków
Pole input typu checkbox to fajna opcja, bo pozwala użytkownikom zaznaczać jedną albo więcej opcji z dostępnych wyborów. Takie checkboxy można zobaczyć na różnych stronach internetowych, są super przydatne, a użytkownik może je odznaczać kiedy chce. W HTML mamy atrybut type, który mówi, co użytkownik może wpisać. W przypadku checkboxa mamy to pole, które można zaznaczyć i dzięki temu dodajemy wartość do formularza, gdy go wysyłamy. Przykładem mogą być formularze zgód, gdzie trzeba potwierdzić kilka polityk prywatności lub warunków korzystania z serwisu. Ważne jest także, żeby każdy checkbox miał odpowiednio przypisane atrybuty name i value, bo dzięki temu łatwiej jest je zidentyfikować, gdy przesyłamy dane. I pamiętajmy, żeby dobrze oznaczać checkboxy etykietami przez element label – to pomaga, zwłaszcza osobom korzystającym z technologii wspomagających. Takie poprawne używanie checkboxów to klucz do budowania intuicyjnych i użytecznych interfejsów użytkowników.

Pytanie 18

Kolor określony kodem RGB, mający wartość rgb(255, 128, 16) w przedstawieniu szesnastkowym, przyjmie jaką wartość?

A. #ff8011
B. #ff0fl0
C. #ff8010
D. #008010
Odpowiedź #ff8010 jest trafna. Konwersja wartości RGB na szesnastkowy to w sumie przekształcanie kolorów: czerwony, zielony i niebieski. W przypadku rgb(255, 128, 16), czerwony (255) zmienia się w 'ff', zielony (128) w '80', a niebieski (16) w '10'. Gdy to wszystko połączymy, dostajemy kod #ff8010. To wiedza, która naprawdę się przydaje, gdy pracujesz z kolorami w stronach www, aplikacjach graficznych czy przy projektowaniu interfejsów. W branży IT używanie standardu RGB i konwersji do HEX to normalka, bo to pozwala na dokładne określenie kolorów w kodzie. Na przykład, w CSS łatwo będzie używać kolorów w tym formacie, a to pomaga w lepszej czytelności kodu.

Pytanie 19

Deklaracja w języku JavaScript var x = true; powoduje, że zmienna x jest typu:

A. logicznego
B. liczbowego
C. wyliczeniowego
D. ciągu znaków
Przypisanie var x = true; sprawia, że zmienna x jest typu LOGICZNEGO (boolean) - może przyjmować jedną z dwóch wartości: true lub false. Takich zmiennych używa się w warunkach. Dlatego x jest typu logicznego.

Pytanie 20

Interpreter PHP zgłosi błąd i nie zrealizuje kodu, jeśli programista:

A. będzie definiował zmienne w obrębie warunku
B. będzie pisać kod bez zastosowania wcięć
C. pobierze dane z formularza, w którym pole input pozostało puste
D. nie umieści średnika po wyrażeniu w instrukcji if, gdy po nim występuje sekcja else
W przypadku instrukcji warunkowej if w PHP, każdy blok kodu, który jest wykonywany w przypadku prawdziwego warunku, powinien być poprawnie zakończony średnikiem, z wyjątkiem konstrukcji, które są wstawiane bezpośrednio w ramy instrukcji, jak else. Jeżeli programista nie postawi średnika po wyrażeniu if, a następnie użyje sekcji else, to interpreter PHP zgłosi błąd składniowy. Jest to istotne, ponieważ każda linia kodu w PHP, która wykonuje jakąkolwiek operację, musi być zakończona średnikiem, co jest standardową praktyką w językach programowania. Przykład poprawnej konstrukcji: if ($warunek) { // kod } else { // kod }. W przypadku braku średnika może to prowadzić do nieprzewidzianych błędów w kodzie, co z kolei wpłynie na stabilność aplikacji. Przestrzeganie takich zasad jest kluczowe dla osiągnięcia dobrej jakości kodu oraz jego łatwości w utrzymaniu.

Pytanie 21

Podczas definiowania tabeli produkty należy stworzyć pole cena, które będzie reprezentować wartość produktu. Odpowiedni typ danych dla tego pola to

A. TINYTEXT
B. DECIMAL(10, 2)
C. INTEGER(11)
D. ENUM
Typ DECIMAL(10, 2) jest optymalnym wyborem dla pola reprezentującego cenę produktu w bazie danych. Pozwala on na przechowywanie liczb dziesiętnych z określoną precyzją, co jest kluczowe w kontekście finansowym, gdzie dokładność kwot ma fundamentalne znaczenie. Wartość '10' oznacza maksymalną liczbę cyfr, które mogą zostać zapisane, a '2' definiuje liczbę cyfr po przecinku. Oznacza to, że możemy przechowywać wartości od -99999999.99 do 99999999.99, co jest wystarczające dla większości zastosowań komercyjnych. Użycie tego typu danych zapewnia, że operacje matematyczne, takie jak dodawanie, odejmowanie czy mnożenie cen, będą wykonywane z zachowaniem dokładności. Jest to zgodne z najlepszymi praktykami w projektowaniu baz danych, gdzie unika się typów danych, które mogą prowadzić do utraty precyzji, jak np. FLOAT czy DOUBLE. Przykładowo, w aplikacji e-commerce, gdzie ceny produktów są często wyświetlane z dwoma miejscami po przecinku, typ DECIMAL jest idealnym rozwiązaniem, aby uniknąć błędów w obliczeniach i zapewnić pełną przejrzystość cenową dla użytkowników.

Pytanie 22

Jak, wykorzystując język PHP, można zapisać w ciasteczku wartość z zmiennej dane na okres jednego dnia?

A. setcookie("dane", "dane", 0);
B. setcookie("dane", $dane, 0);
C. setcookie("dane", $dane, time());
D. setcookie("dane", $dane, time() + (3600*24));
Odpowiedź setcookie("dane", $dane, time() + (3600*24)); jest prawidłowa, gdyż prawidłowo ustawia ciasteczko o nazwie 'dane' z wartością zmiennej $dane na czas jednego dnia. Funkcja setcookie w PHP wymaga trzech podstawowych argumentów: nazwy ciasteczka, wartości oraz czasu wygaśnięcia. W tym przypadku używamy time() + (3600*24), co oznacza aktualny czas plus 24 godziny (3600 sekund w godzinie pomnożone przez 24). Taki sposób określenia czasu wygaśnięcia jest zgodny z zaleceniami bezpieczeństwa i zarządzania danymi w aplikacjach webowych, ponieważ umożliwia precyzyjne kontrolowanie okresu ważności ciasteczek. Przykładowo, jeśli nasze ciasteczko jest używane do przechowywania sesji użytkownika, wartość 'dane' może zawierać identyfikator sesji, co pozwala na zachowanie stanu użytkownika przez 24 godziny. Ważne jest także, aby przed użyciem setcookie nie było wysyłanych żadnych danych do przeglądarki. Dobrą praktyką jest również ustawianie flagi HttpOnly, aby zwiększyć bezpieczeństwo, oraz SameSite, aby ograniczyć ryzyko ataków CSRF.

Pytanie 23

Tabela psy ma pola imie, rasa, telefon_wlasciciela, rok_szczepienia. Która kwerenda zwróci telefony właścicieli psów szczepionych PRZED 2015?

A.
SELECT psy FROM rok_szczepienia < 2015;
B.
SELECT telefon_wlasciciela FROM psy WHERE rok_szczepienia < 2015;
C.
SELECT imie, rasa FROM psy WHERE rok_szczepienia > 2015;
D.
SELECT telefon_wlasciciela FROM psy WHERE rok_szczepienia > 2015;
Po SELECT wymienia się kolumny do POBRANIA, a w WHERE warunek wyboru wierszy. Chcemy telefony psów szczepionych przed 2015, więc bierzemy kolumnę telefon_wlasciciela i warunek rok_szczepienia < 2015: SELECT telefon_wlasciciela FROM psy WHERE rok_szczepienia < 2015;. Dlatego ta kwerenda jest poprawna.

Pytanie 24

Grafika, która ma być umieszczona na stronie, powinna mieć przezroczyste tło. Jakim formatem graficznym powinien być zapisany taki plik?

A. JPEG
B. CDR
C. BMP
D. PNG
Format PNG (Portable Network Graphics) jest szczególnie ceniony w kontekście grafiki internetowej, ponieważ obsługuje przezroczystość, co czyni go idealnym wyborem dla obrazów, które wymagają tła transparentnego. Przezroczystość w formacie PNG jest realizowana poprzez zastosowanie kanału alfa, co pozwala na uzyskanie różnorodnych efektów wizualnych, takich jak cienie, gradienty czy delikatne przejścia między kolorami. Przykłady zastosowania to ikony, logo, grafiki na stronach internetowych, które muszą harmonizować z różnymi kolorami tła. W przeciwieństwie do formatów takich jak JPEG, który nie obsługuje przezroczystości i używa kompresji stratnej, PNG oferuje kompresję bezstratną, co oznacza, że jakość obrazu nie ulega pogorszeniu po zapisaniu. W kontekście praktyk webowych, użycie PNG jest zgodne z zaleceniami dotyczącymi optymalizacji obrazów w sieci, co przyczynia się do szybszego ładowania stron i lepszej jakości wizualnej.

Pytanie 25

W SQL, aby zaktualizować informacje w wierszach w tabeli, konieczne jest użycie polecenia

A. UPDATE
B. INSERT INTO
C. SELECT
D. ALTER TABLE
Odpowiedź "UPDATE" jest właściwa, bo w SQL to właśnie to polecenie używamy do zmiany danych w już istniejących wierszach tabeli. Żeby zaktualizować konkretne kolumny w danym wierszu, trzeba wpisać coś takiego: "UPDATE nazwa_tabeli SET kolumna1 = wartość1, kolumna2 = wartość2 WHERE warunek". Dzięki klauzuli WHERE możemy dokładnie wskazać, które wiersze chcemy zmienić, co jest naprawdę ważne, żeby wszystko działało sprawnie i bezpiecznie. Na przykład, jeśli chcemy zmienić nazwisko użytkownika o id równym 1, napiszemy: "UPDATE Użytkownicy SET nazwisko = 'NoweNazwisko' WHERE id = 1". Używanie tego polecenia to dobra praktyka w zarządzaniu bazami danych. Nie zapominajmy o transakcjach, żeby mieć pewność, że dane są bezpieczne. A jak korzystamy z przygotowanych zapytań, to zminimalizujemy ryzyko ataków SQL injection, co jest bardzo istotne w kontekście bezpieczeństwa aplikacji bazodanowych.

Pytanie 26

Co wykonuje poniższy fragment kodu w JavaScript?

n = "Napis1";
s = n.length;
A. Przypisze zmienną n do zmiennej s
B. Przypisze zmiennej s wartość, która odpowiada długości tekstu ze zmiennej n
C. Przypisze zmiennej s fragment tekstu ze zmiennej n, o długości określonej przez zmienną length
D. Wyświetli długość tekstu ze zmiennej n
W języku JavaScript właściwość length dla obiektów typu String zwraca liczbę znaków w danym napisie. W przedstawionym fragmencie skryptu zmiennej n przypisano wartość stringa 'Napis1'. Kiedy używamy n.length uzyskujemy długość tego stringa czyli liczbę 6 ponieważ są w nim dokładnie sześć znaków. Następnie tę wartość przypisujemy zmiennej s co oznacza że s przechowuje liczbę 6. Jest to użyteczne w wielu sytuacjach takich jak walidacja danych wejściowych w formularzach sprawdzanie czy dany tekst mieści się w określonych limitach lub po prostu kontrola poprawności danych w procesach biznesowych. Wartość length jest często stosowana w pętlach do iteracji przez każdy znak w stringu lub w operacjach takich jak odcinanie fragmentów tekstu. Praktyka korzystania z length jest standardem w programowaniu webowym i zaliczana jest do dobrych praktyk ponieważ umożliwia łatwą manipulację tekstowymi danymi i kontrolę ich wymiaru co bywa krytyczne zwłaszcza w aplikacjach o dużej skali gdzie efektywność i klarowność kodu mają znaczenie kluczowe.

Pytanie 27

Efekt przedstawiony w filmie powinien być zdefiniowany w selektorze

A. tr:active { background-color: Pink; }
B. tr { background-color: Pink; }
C. td, th { background-color: Pink; }
D. tr:hover { background-color: Pink; }
Poprawny selektor to tr:hover { background-color: Pink; }, bo dokładnie opisuje sytuację pokazaną na filmie: efekt pojawia się dopiero po najechaniu kursorem na cały wiersz tabeli. Pseudo-klasa :hover w CSS służy właśnie do definiowania stylów w momencie, gdy użytkownik „najeżdża” myszką na dany element. Jeśli więc chcemy, żeby podświetlał się cały rząd tabeli, logiczne i zgodne z dobrymi praktykami jest przypięcie efektu do znacznika tr, a nie do pojedynczych komórek.

W praktyce taki zapis stosuje się bardzo często w interfejsach webowych: w panelach administracyjnych, listach zamówień, tabelach z uczniami, produktami, logami systemowymi itd. Dzięki temu użytkownik łatwiej śledzi, który wiersz właśnie ogląda. To niby detal, ale z punktu widzenia UX robi sporą różnicę. Z mojego doświadczenia to jeden z tych prostych trików CSS, które od razu poprawiają „odczuwalną” jakość strony.

Ważne jest też to, że :hover jest częścią standardu CSS (opisane m.in. w specyfikacji CSS Selectors Level 3/4) i działa w praktycznie wszystkich współczesnych przeglądarkach. Nie trzeba do tego żadnego JavaScriptu, żadnych skomplikowanych skryptów – czysty CSS. Dobrą praktyką jest również używanie bardziej stonowanych kolorów niż Pink w prawdziwych projektach, np. #f5f5f5 albo lekki odcień niebieskiego, tak żeby kontrast był czytelny i nie męczył wzroku. Warto też pamiętać, że podobny mechanizm możesz zastosować na innych elementach: np. a:hover dla linków, button:hover dla przycisków czy nawet div:hover dla całych kafelków w layoutach. Kluczowe jest to, żeby pseudo-klasa :hover była przypięta dokładnie do tego elementu, który ma reagować na interakcję użytkownika.

Pytanie 28

Aby zrealizować algorytm wyznaczający największą z trzech liczb a, b, c, wystarczy zastosować:

A. dwa warunki
B. dwie tablice
C. pięć zmiennych
D. jedną pętlę
Aby znaleźć największą z trzech liczb, wystarczą dwa warunki (porównania). Najpierw porównujemy a z b i większą z nich przyjmujemy jako tymczasowe maksimum, a potem porównujemy to maksimum z c - stąd dwa warunki. Schematycznie: if (a > b) max = a; else max = b; if (c > max) max = c;. Liczba potrzebnych porównań do znalezienia największej z n elementów to n-1, więc dla trzech liczb są to dokładnie dwa. Pętla czy tablice są tu zbędne, bo elementów jest niewiele i znamy je z góry. Dlatego wystarczą dwa warunki.

Pytanie 29

W języku SQL wydano polecenie

CREATE USER 'anna'@'localhost' IDENTIFIED BY '54RTu8';
Jednak operacja ta zakończyła się niepowodzeniem z powodu błędu: #1396 - Operation CREATE USER failed for 'anna'@'localhost'. Możliwą przyczyną tego problemu bazy danych może być:
A. istnienie użytkownika anna w bazie danych
B. błędna składnia polecenia CREATE USER
C. niewystarczająca siła hasła dla konta anna
D. nieznane polecenie CREATE USER
Dobra robota! Odpowiedź, którą wybrałeś, jest słuszna. Problem z utworzeniem użytkownika 'anna' wynika z tego, że już taki użytkownik istnieje w bazie. W systemach baz danych, jak MySQL, każdy użytkownik musi mieć unikalną nazwę i hosta, z którego się łączy. Kiedy próbujesz dodać kogoś, kto już jest, dostajesz błąd z kodem #1396. Fajnie jest przed dodawaniem nowego użytkownika sprawdzić, czy już nie jest zarejestrowany, żeby uniknąć nieporozumień. Jeśli już ktoś istnieje, można też pomyśleć o edytowaniu tego konta zamiast tworzenia nowego, używając komendy ALTER USER. Takie podejście sprawia, że zarządzanie użytkownikami jest dużo prostsze i bezpieczniejsze.

Pytanie 30

Jak nazywa się sposób udostępniania bazy danych w Microsoft Access, który obejmuje wszystkie obiekty bazy znajdujące się na dysku sieciowym i używane jednocześnie przez różne osoby?

A. dzielonej bazy danych
B. witryny programu SharePoint
C. serwera bazy danych
D. folderu sieciowego
Folder sieciowy to metoda udostępniania bazy danych w Microsoft Access, która umożliwia kilku użytkownikom jednoczesny dostęp do tej samej bazy danych umieszczonej na dysku sieciowym. Taka forma udostępniania jest bardzo praktyczna w środowiskach współpracy, gdzie wiele osób musi korzystać z tych samych danych. Użytkownicy mogą otwierać, edytować i zapisywać obiekty bazy danych, co zwiększa efektywność pracy zespołowej. Kluczowe jest, aby folder sieciowy był odpowiednio skonfigurowany z uprawnieniami dostępu, co zapewnia zarówno współdzielenie zasobów, jak i bezpieczeństwo danych. Dobrą praktyką jest także regularne tworzenie kopii zapasowych bazy danych oraz zarządzanie wersjami, co pozwala na minimalizację ryzyka utraty danych. W kontekście standardów branżowych, korzystanie z udostępnionych folderów sieciowych powinno być zgodne z polityką bezpieczeństwa organizacji oraz zasadami zarządzania danymi.

Pytanie 31

Których funkcji użyć, aby po operacji na bazie uzyskać NUMER błędu oraz jego OPIS?

A.
mysqli_error
i
mysqli_error_number
B.
mysqli_error
i
mysqli_errno
C. tylko
mysqli_error
D.
mysqli_error
i
mysqli_connect_errno
Gdy zapytanie się nie powiedzie, warto poznać i numer błędu, i jego opis - to dwie różne funkcje pracujące w parze: mysqli_errno($polaczenie) zwraca liczbowy KOD błędu (np. 1064), a mysqli_error($polaczenie) jego tekstowy OPIS (np. „You have an error in your SQL syntax”). W praktyce loguje się oba: numer ułatwia automatyczne rozpoznanie problemu, a opis - szybką diagnozę przez człowieka. Zapamiętaj: „errno” = numer (number), „error” = opis.

Pytanie 32

Jakie jest zadanie funkcji agregującej AVG w zapytaniu?

SELECT AVG(cena) FROM uslugi;
A. określić najwyższą wartość spośród cen usług
B. zliczyć całkowity koszt wszystkich usług
C. sprawdzić, ile usług znajduje się w tabeli
D. obliczyć średnią arytmetyczną wartości wszystkich usług
Funkcja AVG w SQL jest jednym z podstawowych narzędzi do analizy danych w bazach danych. Jej głównym celem jest obliczenie średniej arytmetycznej wartości w kolumnie, co jest kluczowe w raportowaniu i analizie danych. W zapytaniu SQL SELECT AVG(cena) FROM uslugi; funkcja AVG jest użyta, aby uzyskać średnią cenę wszystkich usług zapisanych w tabeli uslugi. Taka średnia jest przydatna w wielu kontekstach biznesowych na przykład przy tworzeniu raportów finansowych czy analizie kosztów w celu optymalizacji oferty. Średnia arytmetyczna pozwala zrozumieć przeciętną wartość danego zestawu danych co jest istotne w podejmowaniu decyzji. Standardy branżowe zalecają użycie funkcji AVG wszędzie tam gdzie potrzebna jest szybka i efektywna analiza danych liczbowych. Zrozumienie działania funkcji AVG jest kluczowe w pracy z bazami danych SQL gdyż pozwala na bardziej złożone analizy jak np. porównanie średnich z różnych okresów czasu lub segmentów rynku.

Pytanie 33

Jaką czynność należy wykonać przed zrobieniem kopii zapasowej danych w MySQL?

A. ustalenie systemu kodowania znaków w bazie
B. sprawdzenie, czy baza działa wystarczająco wydajnie
C. zweryfikowanie poprawności tabel w bazie oraz ewentualne naprawienie usterek
D. przyznanie uprawnień do przeglądania bazy dla Administratora
Sprawdzenie poprawności tabel w bazie przed wykonaniem kopii bezpieczeństwa jest kluczowym krokiem, który pozwala na zapewnienie integralności danych. W przypadku, gdy w tabelach występują błędy, takie jak uszkodzone wiersze czy niedopasowane indeksy, proces tworzenia kopii zapasowej może nie uwzględnić tych problemów, co w konsekwencji prowadzi do utraty danych lub trudności w ich przywróceniu. W MySQL, przed rozpoczęciem backupu, zaleca się użycie polecenia 'CHECK TABLE' do weryfikacji stanu tabel. Przykładowo, jeśli tabela 'users' jest sprawdzana i wykryto błąd, można zastosować 'REPAIR TABLE', aby naprawić uszkodzenia. Dobrą praktyką w branży jest regularne tworzenie kopii zapasowych oraz prowadzenie audytów jakości danych, co pozwala na minimalizację ryzyka utraty informacji. Utrzymywanie bazy danych w dobrym stanie technicznym poprzez regularne sprawdzanie tabel oraz ich naprawianie jest zalecane w dokumentacji MySQL oraz innych systemów zarządzania bazami danych, co podkreśla znaczenie tego procesu w kontekście bezpieczeństwa danych.

Pytanie 34

Wskaż właściwą sekwencję kroków w procesie projektowania relacyjnej bazy danych?

A. Selekcja, Określenie relacji, Określenie kluczy głównych tabel, Określenie zbioru danych
B. Określenie zbioru danych, Selekcja, Określenie kluczy głównych tabel, Określenie relacji
C. Określenie kluczy głównych tabel, Określenie zbioru danych, Selekcja, Określenie relacji
D. Określenie relacji, Określenie kluczy głównych tabel, Selekcja, Określenie zbioru danych
Poprawna odpowiedź to 'Określenie zbioru danych, Selekcja, Określenie kluczy podstawowych tabel, Określenie relacji'. Ta kolejność pokazuje, jak działa projektowanie relacyjnej bazy danych. Na początku trzeba określić, jakie dane będą przechowywane, czyli stworzyć zbiór danych. Potem trzeba wybrać, które z tych informacji są ważne i jak je ułożyć. Następnie ustalamy klucze podstawowe dla tabel. To ważne, żeby dane były unikalne i łatwe do zidentyfikowania. Na końcu definiujemy relacje między tabelami, co pozwala zrozumieć, jak dane ze sobą współpracują. Na przykład, kiedy projektujemy bazę danych dla szkoły, zbór danych może obejmować uczniów, nauczycieli i przedmioty. Wybierając dane, możemy zdecydować, że potrzebujemy imienia, nazwiska i przedmiotów, które uczniowie uczą się. Klucze podstawowe są wtedy używane do identyfikacji uczniów, a relacje pokazują, jak uczniowie są powiązani z nauczycielami i przedmiotami.

Pytanie 35

UPDATE klient SET miejscowosc='Warszawa' WHERE id IN(2,4);
W tabeli klient o polach: id, imie, nazwisko, miejscowosc znajduje się 5 rekordów o id od 1 do 5. Dla których wartości kolumny id przedstawiona kwerenda zaktualizuje zawartość pola miejscowosc na Warszawa?
A. 2, 4
B. 2, 3, 4
C. 3
D. 1, 5
Zapytanie UPDATE, które widzisz w treści pytania, działa bardzo precyzyjnie: `UPDATE klient SET miejscowosc='Warszawa' WHERE id IN(2,4);` oznacza wprost „zmień wartość kolumny miejscowosc na 'Warszawa' tylko w tych wierszach, w których kolumna id ma wartość 2 albo 4”. Klauzula `WHERE id IN (2,4)` to po prostu skrócony zapis warunku: `WHERE id = 2 OR id = 4`. Skoro w tabeli są rekordy o id 1, 2, 3, 4, 5, to modyfikacji podlegają tylko te dwa wiersze, które spełniają warunek logiczny, czyli id równe 2 i id równe 4. Pozostałe rekordy nie są w żaden sposób dotykane przez to polecenie – ich miejscowość zostaje bez zmian. Z mojego doświadczenia to bardzo często używany wzorzec w praktyce, np. gdy trzeba szybko poprawić dane tylko wybranych klientów, zamówień czy produktów. Warto pamiętać, że polecenie UPDATE bez klauzuli WHERE zaktualizuje wszystkie rekordy w tabeli, co zwykle jest niebezpieczne i w realnych projektach uznawane za błąd, jeśli nie jest to w pełni świadome działanie. W profesjonalnych systemach bazodanowych dobrą praktyką jest zawsze dokładne sprawdzanie warunku WHERE, czasem nawet poprzedzonego zapytaniem SELECT z takim samym warunkiem, żeby zobaczyć, które wiersze zostaną zmienione przed wykonaniem UPDATE. W tym przykładzie można by najpierw zrobić: `SELECT * FROM klient WHERE id IN (2,4);`, a dopiero potem uruchomić UPDATE. W codziennej pracy z SQL konstrukcja `IN` jest też wygodna, gdy lista identyfikatorów jest dłuższa, np. `IN (2,4,7,10,15)`, zamiast pisać długie wyrażenie z wieloma OR. To poprawia czytelność i zmniejsza ryzyko pomyłki przy edycji kodu, co jest po prostu zdrową praktyką w zespole programistów i administratorów baz danych.

Pytanie 36

Jaką złożoność obliczeniową mają problemy związane z przeprowadzaniem operacji na łańcuchach lub tablicach w przypadku dwóch zagnieżdżonych pętli przetwarzających wszystkie elementy?

A. O(n2)
B. O(n!)
C. O(n)
D. O(log n)
Często przy analizie złożoności obliczeniowej popełniamy błędy, bo staramy się ocenić, ile operacji jest potrzebnych, a kontekst ma tu spore znaczenie. Odpowiedź O(n) może wydawać się kusząca, ale oznacza, że operacje są tylko liniowe, co mija się z prawdą, gdy mamy zagnieżdżone pętle. Jak jedna pętla przechodzi przez n elementów, a druga również przechodzi przez n dla każdej iteracji, to nie ma mowy o liniowości. Co do O(n!), to dotyczy to permutacji i jest zupełnie inną sprawą niż prosta iteracja przez elementy. A O(log n) - w tym przypadku jest mylące, bo odnosi się do algorytmów takich jak wyszukiwanie binarne, które działają na posortowanych danych, a nie przy przetwarzaniu wszystkich elementów. Ważne jest, żeby mieć to na uwadze. Różne operacje wymagają różnych metod analizy, a złożoność algorytmiczna jest kluczowa przy projektowaniu dobrych i wydajnych rozwiązań.

Pytanie 37

W SQL uprawnienie SELECT przydzielone za pomocą polecenia GRANT umożliwia użytkownikowi bazy danych

A. zmienianie danych w tabeli
B. uzyskiwanie danych z tabeli
C. usuwanie danych z tabeli
D. generowanie tabeli
Przywilej SELECT w języku SQL, przyznawany przy użyciu polecenia GRANT, umożliwia użytkownikowi baz danych na wykonywanie operacji odczytu danych z określonych tabel. Oznacza to, że użytkownik może pobierać informacje zapisane w tabelach bazy danych, co jest kluczowe dla większości aplikacji korzystających z danych. Na przykład, w kontekście aplikacji analitycznych, dostęp do danych pozwala na generowanie raportów i analiz, które wspierają podejmowanie decyzji. W praktyce, przyznanie przywileju SELECT jest standardową procedurą zabezpieczającą, ponieważ pozwala na kontrolowanie, którzy użytkownicy mogą zobaczyć dane w bazie, minimalizując ryzyko nieautoryzowanego dostępu. Warto również zaznaczyć, że w bazach danych, takich jak MySQL, PostgreSQL czy Oracle, przywileje są zarządzane w sposób hierarchiczny, co oznacza, że użytkownik z przywilejem SELECT może dodatkowo dziedziczyć inne przywileje, co zwiększa elastyczność zarządzania dostępem.

Pytanie 38

W posiadanej tabeli zwanej przedmioty, która zawiera kolumny ocena oraz uczenID, aby wyliczyć średnią ocen dla ucznia z ID równym 7, należy użyć zapytania

A. SELECT COUNT(ocena) FROM przedmioty WHERE uczenID = 7
B. AVG SELECT ocena FROM przedmioty WHERE uczenID = 7
C. SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7
D. COUNT SELECT ocena FROM przedmioty WHERE uczenID = 7
Odpowiedź 'SELECT AVG(ocena) FROM przedmioty WHERE uczenID = 7;' jest poprawna, ponieważ wykorzystuje funkcję agregującą AVG, która oblicza średnią ocen dla wszystkich wpisów w tabeli 'przedmioty', gdzie 'uczenID' jest równy 7. W SQL funkcje agregujące są niezwykle przydatne do analizy danych, pozwalając na uzyskanie statystyk dotyczących zbiorów danych. Użycie klauzuli WHERE pozwala na filtrowanie danych do tych, które dotyczą konkretnego ucznia, co jest zgodne z najlepszymi praktykami w zakresie zarządzania danymi. Na przykład, w praktycznych zastosowaniach, może to być użyte do generowania raportów dotyczących wyników ucznia w określonym przedziale czasowym lub w porównaniu do innych uczniów. Warto również zauważyć, że poprawna konstrukcja zapytania SQL jest kluczowa dla utrzymania integralności i wydajności bazy danych, co podkreśla znaczenie płynnego zapisu zapytań. Takie umiejętności są nieocenione w pracy z bazami danych oraz w kontekście analizy danych w różnych dziedzinach.

Pytanie 39

Przedstawione zapytanie SQL przydziela uprawnienie SELECT

GRANT SELECT ON hurtownia.*
TO 'sprzedawca'@'localhost';
A. do wszystkich kolumn w tabeli hurtownia
B. dla użytkownika root na serwerze localhost
C. do wszystkich tabel w bazie hurtownia
D. dla użytkownika root na serwerze sprzedawca
Polecenie GRANT SELECT ON hurtownia.* TO 'sprzedawca'@'localhost'; nie przyznaje praw do użytkownika root ani do serwera localhost, co wyklucza te możliwości. W SQL, użytkownik root zazwyczaj posiada pełne uprawnienia administracyjne, a przypisanie mu dodatkowych specyficznych praw nie jest konieczne ani typowe w kontekście tego typu polecenia. Z kolei wskazanie serwera localhost w tym kontekście dotyczy tylko ograniczenia dostępu użytkownika do tego konkretnego hosta, a nie nadania mu praw selektywnych. Błędne jest również stwierdzenie, że polecenie to nadaje prawa do wszystkich pól w tabeli hurtownia. W rzeczywistości, wyrażenie hurtownia.* w kontekście GRANT odnosi się do wszystkich tabel, a nie do pól, które w SQL nazywane są kolumnami. Właściwe przypisanie uprawnień w systemach bazodanowych wymaga zrozumienia kontekstu, w którym dane polecenie jest stosowane, oraz znajomości specyfiki składni SQL. Wiele błędów wynika z niepełnego zrozumienia różnicy między tabelami a kolumnami oraz ról poszczególnych użytkowników w systemie zarządzania bazą danych. Praktyka i ciągłe doskonalenie wiedzy w zakresie zarządzania bazami danych jest kluczowe dla unikania takich pomyłek oraz dla utrzymania bezpieczeństwa i spójności danych w organizacjach.

Pytanie 40

Który obiekt bazy danych utworzyć, aby zaprezentować dane spełniające określone kryteria (np. do wydruku)?

A. makropolecenie
B. relację
C. formularz
D. raport
Do PREZENTACJI danych spełniających określone kryteria - zwłaszcza w formie gotowej do wydruku - służy raport. Pobiera dane (często z kwerendy), formatuje je w czytelny układ z nagłówkami i podsumowaniami. Zapamiętaj: raport = sformatowane zestawienie do oglądania i druku, a nie do wpisywania danych.