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 08:07
  • Data zakończenia: 8 czerwca 2026 08:44

Egzamin zdany!

Wynik: 29/40 punktów (72,5%)

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

Który format stosuje BEZSTRATNĄ kompresję dźwięku?

A. MP3
B. AAC
C. FLAC
D. WWA
Pozostałe formaty kompresują dźwięk STRATNIE - usuwają część informacji, by mocniej zmniejszyć plik (MP3, AAC). „WWA” nie jest standardowym formatem (mylone z WMA). Bezstratną kompresję zapewnia FLAC.

Pytanie 2

Efekt przedstawiony w filmie powinien być zdefiniowany w selektorze

A. td, th { background-color: Pink; }
B. tr:hover { background-color: Pink; }
C. tr:active { background-color: Pink; }
D. tr { 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 3

Aby przywrócić bazę danych MS SQL z kopii zapasowej, należy zastosować polecenie:

A.
DBCC CHECKDB
B.
REBACKUP DATABASE
C.
SAVE DATABASE
D.
RESTORE DATABASE
Pozostałe odpowiedzi nie odtwarzają bazy. DBCC CHECKDB to polecenie diagnostyczne - sprawdza spójność struktur bazy i wykrywa uszkodzenia, lecz niczego nie przywraca. SAVE DATABASE i REBACKUP DATABASE brzmią wiarygodnie, ale w MS SQL takich poleceń po prostu nie ma, więc serwer zwróciłby błąd. Odtworzenie bazy z wcześniej zapisanej kopii wykonuje RESTORE DATABASE, dlatego to ono jest poprawne.

Pytanie 4

Co robi kwerenda:

ALTER TABLE artykuly MODIFY cena float;
?
A. zmienia nazwę kolumny cena na float
B. zmienia typ kolumny cena na float
C. usuwa kolumnę cena
D. dodaje kolumnę cena typu float, jeśli nie istnieje
Polecenie ALTER TABLE artykuly MODIFY cena float; zmienia DEFINICJĘ istniejącej kolumny cena, ustawiając jej typ na float (liczba zmiennoprzecinkowa). Klauzula MODIFY służy właśnie do zmiany właściwości kolumny, która już istnieje. Dlatego polecenie zmienia typ kolumny cena na float.

Pytanie 5

Które słowne wartości może przyjmować właściwość font-size?

A. wyłącznie small, medium, large
B. tylko small, smaller, large, larger
C. tylko big i small
D. xx-small, x-small, small, medium, large, x-large, xx-large
Pozostałe zbiory są niepełne lub błędne. big nie jest poprawną wartością font-size. Zestaw „small, medium, large” jest zbyt wąski - pomija wartości skrajne (xx-small, xx-large itd.). Lista „small, smaller, large, larger” miesza wartości bezwzględne ze względnymi i jest niekompletna. Pełny zbiór rozmiarów bezwzględnych zawiera czwarta odpowiedź, dlatego jest poprawna.

Pytanie 6

Który z przedstawionych obrazów ma zastosowany poniższy styl CSS?

img {
    padding: 5px;
    border: 1px solid grey;
    border-radius: 10px;
}
Ilustracja do pytania
A. A.
B. B.
C. C.
D. D.
Obraz A został sformatowany za pomocą stylu CSS, który określa podstawowe cechy estetyczne elementu graficznego. Pierwszym aspektem jest zastosowanie właściwości padding wynoszącej 5px, co oznacza, że wokół obrazu znajduje się wewnętrzny margines o szerokości 5 pikseli. To zapewnia przestrzeń między obrazem a jego ramką, zwiększając czytelność i estetykę wizualną. Następnie, użyto border o grubości 1px z kolorem solid grey. Ten cienki, szary obrys dodaje subtelny akcent, który pomaga wyróżnić obraz na tle strony. Wartość border-radius wynosi 10px, co dodaje zaokrąglone rogi, nadając nowoczesny wygląd. Takie zaokrąglenie jest często stosowane w nowoczesnym designie, aby nadać strony bardziej przyjazny i estetyczny wygląd. Stylizacja obrazów w ten sposób jest zgodna z zasadami responsywności i dostępności, co jest istotne w projektowaniu interfejsów użytkownika. Stosowanie takich technik pozwala na tworzenie spójnych i estetycznych stron internetowych, które są zgodne z obecnymi standardami UX i UI.

Pytanie 7

Jakiego polecenia SQL należy użyć, aby usunąć z tabeli artykuly wiersze, które zawierają słowo "sto" w dowolnej lokalizacji pola tresc?

A. DELETE FROM artykuly WHERE tresc LIKE "%sto%";
B. DELETE * FROM artykuly WHERE tresc LIKE "%sto%";
C. DELETE FROM artykuly WHERE tresc = "%sto%";
D. DELETE * FROM artykuly WHERE tresc = "%sto%";
Poprawna odpowiedź to 'DELETE FROM artykuly WHERE tresc LIKE "%sto%";'. To polecenie SQL używa operatora LIKE, który pozwala na wyszukiwanie wzorców w danych tekstowych. Użycie znaków procentowych '%' jako symboli wieloznacznych umożliwia odnalezienie ciągów, w których słowo 'sto' występuje w dowolnym miejscu w kolumnie 'tresc'. W praktyce, tego rodzaju zapytanie jest niezwykle przydatne podczas zarządzania dużymi bazami danych, gdzie często zachodzi potrzeba filtrowania danych na podstawie ich zawartości. Zastosowanie tego polecenia jest zgodne z najlepszymi praktykami w zakresie zarządzania danymi, ponieważ precyzyjnie określa, które wpisy mają zostać usunięte, minimalizując ryzyko przypadkowego usunięcia niewłaściwych danych. Warto znać i rozumieć różnice pomiędzy operatorami '=' a 'LIKE', ponieważ operator '=' wymaga dokładnego dopasowania, co w wielu przypadkach nie jest wystarczające do uzyskania pożądanych wyników. Przykładem może być sytuacja, gdy w kolumnie 'tresc' znajdują się artykuły zawierające słowo 'sto' w kontekście 'stołek', a operator '=' nie byłby w stanie ich zidentyfikować.

Pytanie 8

W języku HTML, aby stworzyć pole do wprowadzania hasła, w którym wpisywany tekst będzie ukrywany (zastępowany kropkami), należy zastosować znacznik

A. <form="password" type="password" />
B. <input type="password" />
C. <input name="password" />
D. <form input type="password" />
W przypadku odpowiedzi <input name="password" /> brakuje kluczowego atrybutu 'type', co uniemożliwia prawidłowe zdefiniowanie pola do wprowadzania hasła. Standard HTML wymaga, aby każdy input miał określony typ, aby przeglądarka wiedziała, jak ma obsługiwać dane wejściowe. Użycie tylko 'name' bez 'type' sprawia, że przeglądarka interpretuje to pole jako standardowe pole tekstowe, co nie maskuje wprowadzanych danych i naraża hasło na nieautoryzowany dostęp. W przypadku zastosowania <form="password" type="password" /> oraz <form input type="password" /> zawężamy logikę do niewłaściwego użycia znaczników formularzy. 'form' jest elementem kontenerowym dla grupy inputów, a jego atrybuty powinny odnosić się do dodatkowych informacji, ale nie pozwalają na umieszczenie inputa wewnątrz samego formularza w taki sposób. Te błędne konstrukcje mogą prowadzić do nieczytelności kodu i problemów z interpretacją przez przeglądarki, co jest szczególnie niekorzystne w kontekście dostępności i użyteczności. Warto przy projektowaniu formularzy przestrzegać standardów HTML oraz praktyk takich jak semantyczne użycie elementów, aby poprawić zarówno SEO, jak i UX.

Pytanie 9

Zamieszczony kod w języku PHP

Ilustracja do pytania
A. określa tablicę z sześcioma wartościami
B. definiuje tablicę z trzema wartościami
C. jest błędny, indeksami tablicy mogą być wyłącznie liczby całkowite
D. jest niepoprawny, nieznany operator =>
Kod przedstawiony w pytaniu to przykład definiowania tablicy asocjacyjnej w języku PHP. Tablica asocjacyjna to struktura danych, która pozwala na przechowywanie wartości związanych z kluczami, które nie muszą być liczbami. W tym przypadku kluczami są łańcuchy znaków: 'imie', 'nazwisko' oraz 'wiek'. Każdy klucz ma przypisaną wartość: 'Anna', 'Nowak' oraz 21. Zatem tablica ta rzeczywiście zawiera trzy pary klucz-wartość. Operator '=>' jest używany w PHP do przypisywania wartości kluczom w tablicach asocjacyjnych. Jest to poprawna składnia i bardzo popularny sposób reprezentowania danych, zwłaszcza w kontekście baz danych i przetwarzania formularzy, gdzie każda wartość ma swoje unikalne znaczenie i klucz. W praktyce tablice asocjacyjne są używane do przechowywania danych, które nie mają charakteru sekwencyjnego, ale są raczej zestawem właściwości lub atrybutów obiektu. Stosowanie tablic asocjacyjnych z odpowiednimi kluczami wspiera czytelność kodu i ułatwia jego zarządzanie zwłaszcza w większych projektach gdzie zrozumienie struktury danych odgrywa kluczową rolę.

Pytanie 10

Które z wymienionych NIE jest wykonywane po stronie serwera?

A. CSS
B. ASP
C. PHP
D. Perl
Pozostałe technologie działają na SERWERZE: ASP, PHP i Perl generują tam treść strony, zanim trafi do przeglądarki. CSS jest inny - to język opisu wyglądu wykonywany w przeglądarce klienta. Dlatego po stronie serwera nie wykonuje się CSS.

Pytanie 11

Co oznacza ustawienie background-attachment: scroll?

A. że tło będzie powtarzane jak kafelki
B. że tło pozostanie nieruchome przy przewijaniu
C. że tło pojawi się w prawym górnym rogu
D. że tło będzie przewijać się razem z treścią strony
Wartość scroll właściwości background-attachment (domyślna) wiąże tło z treścią strony - podczas przewijania obraz tła przesuwa się razem z zawartością. Dlatego scroll oznacza, że tło przewija się razem z treścią.

Pytanie 12

Jakie oznaczenie powinno się zastosować, aby umieścić film na stronie internetowej?

A. <video>
B. <movie>
C. <media>
D. <audio>
Znacznik <video> jest właściwym elementem HTML używanym do osadzania filmów na stronach internetowych. Jest on częścią standardu HTML5, który wprowadził nowoczesne podejścia do multimediów w sieci. Umożliwia on nie tylko osadzanie wideo, ale także dostosowywanie jego odtwarzania, takie jak automatyczne odtwarzanie, powtarzanie oraz kontrolowanie głośności. Przykład użycia znacznika <video>: <video src='film.mp4' controls>Odtwarzacz wideo</video>. Warto również dodać atrybuty, takie jak 'controls', które dodają przyciski do odtwarzania, pauzowania i regulacji głośności, co znacząco poprawia użyteczność dla użytkowników. Dobrą praktyką jest również używanie atrybutu 'poster' do określenia miniatury, która będzie wyświetlana przed rozpoczęciem odtwarzania, co przyciąga uwagę i zwiększa estetykę strony. Znacznik <video> wspiera różne formaty plików, takie jak MP4, WebM i Ogg, co zapewnia szeroką kompatybilność z różnymi przeglądarkami internetowymi, co jest kluczowe w dzisiejszym zróżnicowanym środowisku online.

Pytanie 13

Dla którego akapitu zastosowano przedstawioną właściwość stylu CSS?

border-radius: 20%;

To jest paragraf, To jest paragraf, To jest paragraf, To jest paragraf, To jest paragraf

A

To jest paragraf, To jest paragraf, To jest paragraf, To jest paragraf, To jest paragraf

B

To jest paragraf, To jest paragraf, To jest paragraf, To jest paragraf, To jest paragraf

C

To jest paragraf, To jest paragraf, To jest paragraf, To jest paragraf, To jest paragraf

D
A. B.
B. D.
C. A.
D. C.
Dobra robota! Zgadłeś, że chodziło o akapit z tą właściwością CSS 'border-radius: 20%;'. Ta właściwość faktycznie zaokrągla rogi elementów, co wygląda super i sprawia, że strona jest bardziej przyjemna dla oka. Widzisz, akapit B ma te zaokrąglone rogi, a to dokładnie to, co daje nam ten styl CSS. W rzeczywistości, tylko B jest tak zrobiony na obrazku, więc wiesz, że tam zastosowano 'border-radius'. Ta wartość '20%;' mówi nam, jak mocno rogi mają być zaokrąglone. Takie rzeczy są ważne w CSS, żeby strony wyglądały estetycznie i nowocześnie.

Pytanie 14

Uprawnienia obiektowe przyznawane użytkownikom serwera bazy danych mogą umożliwiać lub ograniczać

A. zmieniać role i konta użytkowników
B. wykonywać polecenia, takie jak tworzenie kopii zapasowej
C. przechodzić uprawnienia
D. realizować operacje na bazie, takie jak wstawianie lub modyfikowanie danych
Uprawnienia obiektowe w kontekście baz danych pozwalają na kontrolowanie dostępu do różnych zasobów, takich jak tabele, widoki czy procedury składowane. Odpowiedź dotycząca wykonywania operacji na bazie, takich jak wstawianie czy modyfikowanie danych, jest prawidłowa, ponieważ uprawnienia te bezpośrednio wpływają na możliwości użytkownika w zakresie manipulacji danymi. Przykładowo, jeśli użytkownik posiada uprawnienie do INSERT, może dodawać nowe rekordy do tabeli, natomiast uprawnienie UPDATE pozwala na zmianę istniejących danych. Takie zarządzanie uprawnieniami jest kluczowe w kontekście bezpieczeństwa danych oraz zapewnienia integralności systemu, ponieważ pozwala na ograniczenie dostępu tylko do tych operacji, które są niezbędne dla danego użytkownika. W praktyce administratorzy baz danych stosują zasady minimalnych uprawnień, przyznając użytkownikom tylko te uprawnienia, które są niezbędne do wykonywania ich pracy, co jest zgodne z najlepszymi praktykami w zakresie zarządzania bezpieczeństwem baz danych.

Pytanie 15

Jaką maksymalną ilość znaczników <td> można zastosować w tabeli składającej się z trzech kolumn i trzech wierszy, w której nie ma złączeń komórek ani wiersza nagłówkowego?

A. 3
B. 6
C. 12
D. 9
Tabela o trzech kolumnach i trzech wierszach składa się z 9 komórek, co oznacza, że maksymalna liczba znaczników <td>, które można zastosować w takiej tabeli, wynosi 9. Każda komórka tabeli jest reprezentowana przez znacznik <td>, dlatego musisz pomnożyć liczbę kolumn (3) przez liczbę wierszy (3), co daje 3 * 3 = 9. To podejście odzwierciedla najlepsze praktyki w tworzeniu tabel HTML, które zakładają, że każda komórka powinna być jednoznacznie określona. Warto pamiętać, że unikanie złączeń komórek upraszcza strukturę tabeli, co ułatwia przetwarzanie przez różne systemy oraz poprawia dostępność strony. Przykład zastosowania to np. wyświetlanie danych o produktach w sklepie internetowym, gdzie każda informacja o produkcie, taka jak nazwa, cena i opis, znajduje się w osobnej komórce. Zgodnie z wytycznymi W3C, stosowanie semantycznych znaczników poprawia SEO i ułatwia nawigację.

Pytanie 16

Fragment kodu w języku JavaScript realizujący dodawanie dwóch liczb ma poniższą postać. Aby dodawanie wykonane było po kliknięciu przycisku o nazwie "dodaj", należy w wykropkowane miejsce wstawić

Podaj pierwszą liczbę: <input type="text" name="liczba1" />
Podaj drugą liczbę: <input type="text" name="liczba2" />
….
<script type=text/javascript>
function dodaj()
{
    // ta funkcja realizuje dodawanie i podaje jego wynik
}
</script>
A. <button onselect="return dodaj()">dodaj</button>
B. <button onclick="return dodaj()">dodaj</button>
C. <button onselect="return dodaj()">oblicz</button>
D. <button onclick="return oblicz()">dodaj</button>
Gratulacje, wybrałeś poprawną odpowiedź. Przycisk w JavaScript jest aktywowany poprzez zdarzenie onclick, które jest wyzwalane po kliknięciu przycisku. Właściwość onclick jest jednym z wielu zdarzeń w JavaScript, które są używane do obsługi interakcji użytkownika. Kiedy użytkownik kliknie przycisk, zdarzenie onclick jest wywoływane i kod zawarty w tym zdarzeniu jest wykonany. W tym przypadku, kod to 'return dodaj()', co oznacza, że funkcja 'dodaj' jest wywoływana. Ta funkcja została zdefiniowana w skrypcie JavaScript i realizuje dodawanie dwóch liczb. Zdarzenie onclick jest często używane w praktycznych zastosowaniach, takich jak przyciski subskrybcji, przyciski do logowania czy przyciski do przesyłania formularzy. Zasada ta jest zgodna z dobrymi praktykami programowania, które zalecają utrzymanie interakcji użytkownika w kodzie JavaScript zamiast HTML.

Pytanie 17

Podano tabelę ksiazki z kolumnami: tytul, autor (w formacie tekstowym), cena (w formacie liczbowym). Aby zapytanie SELECT zwracało jedynie tytuły, dla których cena jest niższa niż 50zł, należy użyć:

A. SELECT tytul FROM ksiazki WHERE cena > '50 zł'
B. SELECT tytul FROM ksiazki WHERE cena < 50
C. SELECT ksiazki FROM tytul WHERE cena < '50 zł'
D. SELECT * FROM ksiazki WHERE cena < 50
Odpowiedź 'SELECT tytul FROM ksiazki WHERE cena < 50;' jest poprawna, ponieważ precyzyjnie formułuje zapytanie w języku SQL, które ma na celu wyodrębnienie z tabeli 'ksiazki' tylko tych tytułów, których cena jest niższa niż 50. W tym przypadku użycie operatora porównania '<' skutkuje filtracją danych według określonego kryterium. Jest to zgodne z dobrą praktyką w programowaniu baz danych, ponieważ pozwala uzyskać potrzebne informacje w sposób efektywny i zrozumiały. Przykładem praktycznego zastosowania może być stworzenie raportu dla księgarni, która chce zobaczyć, które książki są w sprzedaży w przystępnej cenie. Zwracając tylko potrzebne kolumny (tytuł), minimalizujesz ilość przesyłanych danych, co jest ważne w kontekście wydajności i szybkości działania aplikacji korzystających z bazy danych. Dodatkowo, unikanie podawania ceny w formacie tekstowym (np. '50 zł') jest zgodne z zasadami dobrego projektowania baz danych, które zalecają stosowanie odpowiednich typów danych, co w tym przypadku oznacza liczbę bez jednostki walutowej.

Pytanie 18

Zamieszczony kod HTML formularza zostanie wyświetlony przez przeglądarkę w sposób:

<form>
stanowisko: <input type="text"> <br>
obowiązki: <br>
<input type="checkbox" name="obowiazki1" value="1" disabled checked> sporządzanie dokumentacji<br>
<input type="checkbox" name="obowiazki2" value="2" checked>pisanie kodu<br>
<input type="checkbox" name="obowiazki3" value="3">testy oprogramowania<br>
</form>
Ilustracja do pytania
A. B
B. C
C. A
D. D
Poprawna odpowiedź to forma, w której przeglądarka wyświetli treść formularza, uwzględniając zarówno etykiety, jak i wszystkie zaznaczone opcje. W tym przypadku, po wypełnieniu formularza, użytkownik zobaczy: "stanowisko: obowiązki: sporządzanie dokumentacji pisanie kodu testy oprogramowania". Kluczowym aspektem jest to, że w formularzu użyto atrybutu 'disabled' dla pierwszego checkboxa, co oznacza, że nie będzie on mógł zostać odznaczony przez użytkownika, ale mimo to jego etykieta zostanie wyświetlona. Przeglądarki internetowe renderują formularze na podstawie struktury HTML, a to, co jest niewidoczne dla użytkownika (checkboxy, które są odznaczone lub zablokowane), nie wpływa na wyświetlanie tekstowych etykiet. Zgodnie z zasadami dostępności i użyteczności, ważne jest, aby użytkownik miał pełny wgląd w dostępne opcje, co poprawia interakcję z formularzem. To podejście jest zgodne z dobrymi praktykami projektowania interfejsów użytkownika, które promują przezroczystość i jasność w komunikacji z użytkownikiem.

Pytanie 19

Po uruchomieniu poniższego fragmentu kodu PHP:

echo date("Y");
na ekranie pojawi się bieżąca data zawierająca tylko:
A. dzień
B. rok
C. miesiąc i rok
D. dzień i miesiąc
Wybór odpowiedzi dotyczącej dnia, miesiąca czy kombinacji dnia i miesiąca wynika z nieporozumienia dotyczącego funkcji date() w PHP. Funkcje związane z datami w PHP są niezwykle wszechstronne i pozwalają na formatowanie dat w różnorodne sposoby. Odpowiedzi sugerujące wyświetlenie dnia lub miesiąca nie uwzględniają faktu, że przekazany argument "Y" jednoznacznie określa, że interesującą nas wartością jest rok. Typowym błędem jest mylenie formatów daty; na przykład, przekazanie "d" do funkcji date() zademonstrowałoby nam bieżący dzień miesiąca, a "m" zwróciłoby bieżący miesiąc. W realnych aplikacjach, gdzie często wymagana jest prezentacja dat, kluczowe jest zrozumienie, który format daty chcemy uzyskać. Wybór niewłaściwego formatu może prowadzić do niejednoznaczności w prezentacji danych oraz ograniczania możliwości ich analizy. Zastosowanie funkcji date() w sposób niezgodny z jej dokumentacją często skutkuje nieprecyzyjnymi wynikami lub błędami w kodzie. Dlatego tak istotne jest stosowanie odpowiednich znaczników przy korzystaniu z tej funkcji, aby uniknąć nieporozumień i zapewnić przejrzystość kodu, co jest jedną z podstawowych zasad dobrego programowania.

Pytanie 20

Klucz obcy w tabeli jest używany w celu

A. umożliwienia jednoznacznej identyfikacji rekordu w danej tabeli
B. zdefiniowania relacji 1..n łączącej go z kluczem głównym innej tabeli
C. opracowania formularza do wprowadzania danych do tabeli
D. połączenia go z innymi kluczami obcymi w tabeli
Klucz obcy w tabeli pełni kluczową rolę w definiowaniu relacji między tabelami w bazach danych. Dzięki zastosowaniu klucza obcego możliwe jest określenie relacji 1..n, co oznacza, że jeden rekord w tabeli głównej może być powiązany z wieloma rekordami w tabeli podrzędnej. Przykładem może być tabela 'Klienci' i tabela 'Zamówienia', gdzie klucz obcy w tabeli 'Zamówienia' wskazuje na klucz główny w tabeli 'Klienci'. To pozwala na gromadzenie wielu zamówień dla jednego klienta, co jest niezbędne w systemach e-commerce. Praktyczne wdrożenie kluczy obcych wspiera integralność danych oraz zapobiega ich duplikacji. Właściwe projektowanie relacji w bazach danych zgodnie z zasadami normalizacji wprowadza przejrzystość i efektywność w zarządzaniu danymi, a także ułatwia ich późniejszą analizę i raportowanie. W branży IT standardem jest stosowanie kluczy obcych w celu zapewnienia spójności i relacyjności danych, co jest istotne dla każdej aplikacji opierającej się na bazach danych.

Pytanie 21

Który znacznik HTML oznacza fragment tekstu jako KOD programistyczny?

A.
<code>
B.
<span>
C.
<blockquote>
D.
<em>
Znacznik <code> oznacza fragment tekstu jako KOD programistyczny - przeglądarki domyślnie wyświetlają go czcionką o stałej szerokości (monospace). Dlatego kod oznacza <code>.

Pytanie 22

W kodzie HTML zamieszczono link do strony internetowej:

<a href="http://google.com">strona Google</a>
Jakie dodatkowe zmiany należy wprowadzić, aby link otwierał się w nowym oknie lub zakładce przeglądarki, dodając do definicji linku odpowiedni atrybut?
A. target = "_blank"
B. rel = "next"
C. rel = "external"
D. target = "_parent"
Atrybut target w HTML ma na celu określenie, w jaki sposób ma być otwierany odnośnik. Wartość _blank wskazuje przeglądarkę, że nowa strona powinna zostać otwarta w nowym oknie lub zakładce. Jest to istotne dla poprawy użyteczności strony internetowej, gdyż użytkownicy mogą łatwo wrócić do oryginalnej strony po otwarciu nowego linku. W kontekście dobrych praktyk w projektowaniu stron internetowych, otwieranie odnośników w nowym oknie jest zalecane w przypadku linków zewnętrznych, aby użytkownik nie opuścił aktualnej witryny. Przykładem zastosowania jest link do dokumentacji czy zasobów zewnętrznych, gdzie ma to na celu zachowanie kontekstu przeglądania. Stosując ten atrybut, warto jednak pamiętać o tym, aby nie nadużywać go, ponieważ może to być irytujące dla użytkowników, którzy wolą kontrolować, kiedy nowe okno jest otwierane. Warto również pamiętać, że w nowoczesnych standardach HTML5 atrybut target jest często stosowany w połączeniu z atrybutem rel, aby określić, czy link jest zaufany czy nie. Umożliwia to jeszcze lepsze zarządzanie bezpieczeństwem użytkowników.

Pytanie 23

W aplikacjach webowych tablice asocjacyjne to takie tablice, w jakich

A. elementy tablicy są zawsze indeksowane od 0
B. istnieją przynajmniej dwa wymiary
C. w każdej komórce tablicy znajduje się inna tablica
D. indeks jest ciągiem znaków
Indeksowanie elementów tablicy od zera jest charakterystyczne dla tradycyjnych tablic, w których liczby naturalne służą jako indeksy do dostępu do poszczególnych elementów. Koncepcja ta jest powszechnie stosowana w wielu językach programowania, jednak nie odnosi się do tablic asocjacyjnych. W przypadku tablic asocjacyjnych klucze mogą być dowolnymi łańcuchami znaków, co oznacza, że nie ograniczają się do prostego indeksowania numerycznego. Wartość, jaka znajduje się w każdej komórce takiej tablicy, nie musi być inną tablicą, ponieważ tablice asocjacyjne mogą przechowywać różne typy danych, od prostych wartości po złożone obiekty. W dodatku, tablice asocjacyjne nie wymagają istnienia przynajmniej dwóch wymiarów; mogą być jednowymiarowe, co oznacza, że nie wszystkie tablice muszą być wielowymiarowe, aby działały prawidłowo. Typowe błędy myślowe, które prowadzą do takich niepoprawnych wniosków, obejmują nieporozumienie dotyczące definicji i właściwości różnych struktur danych oraz ich zastosowania w programowaniu. Ważne jest, aby zrozumieć, że różne typy tablic mają różne zastosowania i właściwości, co wpływa na sposób, w jaki mogą być używane w praktycznych scenariuszach programowania.

Pytanie 24

W języku JavaScript zapisano kod, którego wynikiem działania jest

var osoba = prompt("Podaj imię", "Adam");
A. wyświetlenie okna z pustym polem edycyjnym.
B. bezpośrednie wpisanie do zmiennej osoba wartości "Adam".
C. wyświetlenie okna z polem edycyjnym, w którym jest wpisany domyślny tekst "Adam".
D. pobranie z formularza wyświetlonego na stronie HTML imienia "Adam".
Twoja odpowiedź jest poprawna. W JavaScript metoda prompt() służy do wyświetlenia okna dialogowego z polem tekstowym dla użytkownika. Pierwszy argument metody to wiadomość, która jest wyświetlana w oknie dialogowym, natomiast drugi argument to domyślna wartość, jaka jest wpisana w polu tekstowym. W przypadku podanego kodu, drugi argument to 'Adam', co oznacza, że w polu edycyjnym domyślnie będzie wpisany tekst 'Adam'. Metoda ta jest często stosowana do zbierania od użytkownika informacji w prosty i szybki sposób. Pamiętaj jednak, że nie jest to bezpieczny sposób przekazywania danych, ponieważ informacje wpisane przez użytkownika mogą być łatwo przechwycone przez nieautoryzowane osoby.

Pytanie 25

W CSS, aby zmienić kolor tekstu dowolnego elementu HTML po najechaniu na niego myszą, należy wykorzystać pseudoklasę

A. :coursor
B. :visited
C. :active
D. :hover
:hover jest pseudoklasą wykorzystywaną w CSS do stylizacji elementów w momencie, gdy użytkownik na nie najedzie kursorem. To bardzo przydatne narzędzie, pozwalające na interaktywne zmiany wyglądu strony internetowej, co znacznie poprawia doświadczenia użytkownika. Przykładem zastosowania może być zmiana koloru tekstu linków. Można to osiągnąć, definiując odpowiednie reguły CSS, takie jak: `a:hover { color: red; }`, co spowoduje, że linki zmienią kolor na czerwony, gdy na nie najedziemy. Pseudoklasa :hover jest zgodna z W3C CSS, a jej zastosowanie w projektowaniu stron zapewnia lepszą dostępność i intuitwność interfejsu. Warto pamiętać, że efekty hover powinny być subtelne i dobrze przemyślane, aby nie odwracać uwagi od głównych treści strony, ale jednocześnie umożliwić użytkownikom szybkie zauważenie działań, które mogą podjąć.

Pytanie 26

Której właściwości CSS użyć, aby dodać tekstowi podkreślenie (dolne lub górne)?

A.
text-decoration
B.
text-indent
C.
text-transform
D.
text-align
Podkreślenie (oraz nadkreślenie i przekreślenie) tekstu dodaje w CSS właściwość text-decoration, np. text-decoration: underline;. Steruje ona liniami zdobiącymi tekst. Dlatego podkreślenie ustawia text-decoration.

Pytanie 27

Utworzono bazę danych z tabelą mieszkancy, która zawiera pola: nazwisko, imie, miasto. Następnie zrealizowano poniższe zapytanie do bazy:

SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Poznań" UNION ALL SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Kraków"
Wskaż zapytanie, które zwróci te same dane:
A. SELECT nazwisko, imie FROM mieszkancy WHERE miasto BETWEEN "Poznań" OR "Kraków"
B. SELECT nazwisko, imie FROM mieszkancy AS "Poznań" OR "Kraków"
C. SELECT nazwisko, imie FROM mieszkancy WHERE miasto HAVING "Poznań" OR "Kraków"
D. SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Poznań" OR miasto="Kraków"
Wybrana odpowiedź jest poprawna, ponieważ wykorzystuje operator logiczny OR do połączenia dwóch warunków w klauzuli WHERE. W wyniku tego zapytania zostaną zwrócone wszystkie rekordy z tabeli 'mieszkancy', gdzie miasto to 'Poznań' lub 'Kraków'. To podejście jest zgodne z zasadami SQL, gdzie operator OR umożliwia łączenie warunków, co jest powszechnie stosowane w praktyce. Warto zauważyć, że zapytanie z wykorzystaniem operatora UNION ALL, które było pierwotnie zdefiniowane, również łączy wyniki z dwóch zapytań, ale każdy SELECT działa osobno. Użycie OR w tym przypadku jest bardziej efektywne, ponieważ pozwala na jedno zapytanie, co może przyspieszyć wykonanie w porównaniu do kilku zapytań UNION. W praktycznych zastosowaniach, gdy mamy do czynienia z wieloma kryteriami, stosowanie operatorów logicznych jest kluczowe dla uzyskania precyzyjnych wyników.

Pytanie 28

Która klauzula SQL służy do posortowania wyników zapytania?

A.
WHERE
B.
ORDER BY
C.
HAVING
D.
GROUP BY
Wyniki zapytania sortuje klauzula ORDER BY, po której podaje się kolumnę i kierunek: ASC (rosnąco, domyślnie) lub DESC (malejąco), np. SELECT * FROM klienci ORDER BY nazwisko ASC. Można sortować po wielu kolumnach. Dlatego do uporządkowania wyniku służy ORDER BY.

Pytanie 29

Algorytm pokazany na ilustracji można zapisać w języku JavaScript przy użyciu instrukcji

Ilustracja do pytania
A. for(i = 0; i > 10; i++)
B. var i = 0; do i = i + 2; while(i < 10)
C. var i = 0; do i++; while(i > 10)
D. var i = 0; while(i <= 10) i += 2
Odpowiedź var i = 0 while(i <= 10) i += 2; jest poprawna, ponieważ reprezentuje poprawną implementację pętli while w języku JavaScript, która odzwierciedla logikę przedstawioną na rysunku. Kluczowym elementem jest inicjalizacja zmiennej i, ustawiając ją na 0. Następnie pętla while jest używana do sprawdzenia warunku i <= 10, co oznacza, że dopóki ten warunek jest spełniony, blok pętli będzie wykonywany. W każdym cyklu wartość i jest zwiększana o 2 za pomocą wyrażenia i += 2. Jest to typowy sposób iteracji w JavaScript, który pozwala na kontrolowaną manipulację zmienną kontrolującą pętlę. Takie podejście jest zgodne z najlepszymi praktykami, ponieważ zapewnia przejrzystość kodu i łatwość jego późniejszej modyfikacji. W praktycznych zastosowaniach, takie struktury są często używane w sytuacjach, gdy potrzebujemy przetworzyć dane w określonym zakresie, np. iterując przez elementy tablicy co drugi element. Zastosowanie pętli while z odpowiednim warunkiem umożliwia precyzyjną kontrolę nad przebiegiem iteracji, co jest kluczowe w programowaniu aplikacji i skryptów.

Pytanie 30

W SQL polecenie ALTER TABLE służy do

A. zmiany kolumn w tabeli
B. dodawania tabeli do bazy danych
C. usuwania tabeli z bazy danych
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 31

Zasłanianie niektórych pól lub metod obiektów danej klasy w sposób, który umożliwia dostęp wyłącznie wewnętrznym metodom tej klasy lub funkcjom zaprzyjaźnionym, to

A. konkatenacja
B. hermetyzacja
C. dziedziczenie
D. polimorfizm
Polimorfizm to zdolność obiektów do przyjmowania różnych form, co oznacza, że można stosować tę samą metodę do różnych typów obiektów. Nie ma on jednak związku z ukrywaniem pól i metod, a raczej koncentruje się na interfejsach i implementacjach, które mogą różnić się w zależności od kontekstu, co sprawia, że nie jest poprawną odpowiedzią w kontekście tego pytania. Konkatenacja to proces łączenia dwóch lub więcej ciągów tekstowych w jeden długi ciąg. Choć często pojawia się w programowaniu, nie jest to koncepcja związana z ukrywaniem pól czy metod w klasach, więc jej wybór w tym kontekście jest błędny. Dziedziczenie to mechanizm, który pozwala na tworzenie nowych klas na podstawie istniejących, co umożliwia ponowne użycie kodu. Podobnie jak polimorfizm, dziedziczenie nie odnosi się do hermetyzacji, ponieważ nie dotyczy ochrony i ukrywania wewnętrznych danych czy metod w klasie, lecz skupia się na relacjach między klasami i ich hierarchią. W związku z tym te odpowiedzi nie pasują do opisanego w pytaniu zagadnienia.

Pytanie 32

Którego polecenia SQL użyć, aby utworzyć tabelę?

A.
ALTER TABLE
B.
INSERT TABLE
C.
CREATE TABLE
D.
ADD TABLE
Nową tabelę tworzy polecenie CREATE TABLE, po którym podaje się nazwę i definicje kolumn. Należy do języka definicji danych (DDL). Dlatego do utworzenia tabeli służy CREATE TABLE.

Pytanie 33

Instrukcja przypisania elementu do tablicy w języku JavaScript dotyczy tablicy:

Tablica['technik'] = 'informatyk';
A. asocjacyjnej.
B. statycznej.
C. numerycznej.
D. wielowymiarowej.
Najpierw omówmy odpowiedź 'statyczna'. 'Statyczna' tablica to termin, który odnosi się do tablic o stałej wielkości, które nie mogą być dynamicznie zmieniane. W języku JavaScript jednak, tablice są dynamiczne i ich wielkość może być zmieniana w dowolnym momencie. Wybór odpowiedzi 'numeryczna' sugeruje niezrozumienie podstawowych właściwości tablic w JavaScript. Tablice numeryczne są strukturami danych, które używają numerów jako indeksów, ale to nie jest to, co pokazano na zdjęciu - tutaj kluczem jest ciąg znaków. Wybór odpowiedzi 'wielowymiarowa' wskazuje na błędną interpretację przedstawionego obrazu. Tablica wielowymiarowa to tablica tablic, a na zdjęciu pokazano jednowymiarową tablicę asocjacyjną. Pamiętaj, że rozumienie różnych rodzajów tablic i ich zastosowań jest kluczowe dla skutecznego programowania w JavaScript.

Pytanie 34

W języku PHP do zmiennej a przypisano tekst, w którym słowo Kowalski pojawia się wielokrotnie. Aby jednym poleceniem zamienić wszystkie wystąpienia słowa Kowalski na słowo Nowak, trzeba użyć polecenia

A. $a = str_replace('Nowak','Kowalski');
B. $a = str_rep('Kowalski','Nowak',$a);
C. $a = str_replace('Kowalski','Nowak',$a);
D. $a = str_replace('Nowak', 'Kowalski',$a);
Odpowiedź jest prawidłowa, ponieważ funkcja str_replace w PHP jest przeznaczona do zastępowania wszystkich wystąpień określonego ciągu znaków innym ciągiem w danym tekście. W tym przypadku, używając str_replace('Kowalski','Nowak',$a), zmieniamy każde wystąpienie słowa 'Kowalski' na 'Nowak' w zmiennej a. Działa to dla wszystkich instancji, co czyni to podejście bardzo efektywnym w przypadkach, gdy musimy dokonać masowych zmian w tekstach. Jest to dobra praktyka, aby używać str_replace do takich operacji, ponieważ jest to funkcja wbudowana, zoptymalizowana pod kątem wydajności i czytelności kodu. Warto również pamiętać, że pierwszym parametrem jest ciąg, który chcemy zastąpić, drugim jest ciąg, na który go zamieniamy, a trzecim jest tekst, w którym dokonujemy zmiany. Zastosowanie tej funkcji jest powszechne w wielu zastosowaniach, na przykład w systemach CMS, gdzie często zachodzi potrzeba masowej edycji treści.

Pytanie 35

Co musi zawierać kolumna pełniąca funkcję klucza głównego w tabeli?

A. ciągłą numerację
B. inny typ niż pozostałe kolumny
C. wyłącznie liczby
D. wartości unikalne
Klucz główny musi jednoznacznie identyfikować każdy wiersz, więc jego wartości muszą być UNIKALNE (i niepuste). Dzięki temu da się bez pomyłki wskazać konkretny rekord. Dlatego kolumna klucza głównego musi zawierać wartości unikalne.

Pytanie 36

Czy przedstawione w języku CSS ustawienia czcionki będą dotyczyć dla

* {
    font-family: Tahoma;
    color: Teal;
}
?
A. znaczników o id równym *
B. znaczników z klasą przypisaną równą *
C. całego dokumentu HTML, niezależnie od późniejszych reguł CSS
D. całego dokumentu HTML, jako domyślne formatowanie dla wszystkich elementów strony
Właściwość CSS zastosowana w podanym kodzie dotyczy wszystkich elementów HTML na stronie, ponieważ użycie selektora * oznacza, że formatowanie będzie miało zastosowanie do każdego elementu, niezależnie od jego typu. Oznacza to, że czcionka Tahoma oraz kolor Teal będą domyślnie stosowane do tekstu we wszystkich znacznikach HTML. Tego rodzaju podejście jest zgodne z dobrymi praktykami w projektowaniu stron, ponieważ pozwala na jednolite formatowanie bez konieczności stylizowania każdego elementu z osobna. Przykładem zastosowania może być stworzenie spójnego wyglądu strony, gdzie wszystkie nagłówki, akapity i inne teksty mają ten sam styl, co poprawia czytelność i estetykę. Dodatkowo, takie zastosowanie stylów jest efektywne, gdyż zmiana stylu w kontekście całej strony odbywa się poprzez edytowanie jednego miejsca w kodzie CSS, co oszczędza czas i zmniejsza ryzyko błędów.

Pytanie 37

Kto odpowiada za ciągłe przygotowanie systemu bazy danych do pracy, zarządzanie kontami użytkowników i instalowanie aktualizacji systemu bazodanowego?

A. administratorzy serwerów i sieci
B. administratorzy systemu bazy danych
C. projektanci i programiści SZBD
D. twórcy narzędzi deweloperskich
Pozostałe role zajmują się czym innym. Twórcy narzędzi deweloperskich budują oprogramowanie wspomagające programistów (edytory, środowiska), a nie obsługują działającą bazę. Administratorzy serwerów i sieci dbają o sprzęt, system operacyjny i łączność - to warstwa infrastruktury, a nie bezpośrednie zarządzanie kontami i bazą. Projektanci i programiści Systemu Zarządzania Bazą Danych tworzą sam silnik bazodanowy (np. MySQL), lecz nie administrują konkretnym wdrożeniem u klienta. Codzienną obsługą bazy zajmuje się administrator bazy danych, dlatego ta odpowiedź jest poprawna.

Pytanie 38

Która zasada dotyczy programowania strukturalnego?

A. powtarzające się sekwencje instrukcji wydziela się do procedur i funkcji
B. należy często stosować instrukcję skoku goto
C. tworzy się obiekty złożone z pól i metod
D. nie wolno korzystać z instrukcji warunkowych if
Pozostałe odpowiedzi przeczą programowaniu strukturalnemu lub opisują inny paradygmat. Instrukcje warunkowe if są jak najbardziej dozwolone - stanowią jedną z trzech podstawowych konstrukcji sterujących. Tworzenie obiektów z pól i metod to cecha programowania obiektowego, a nie strukturalnego. Częste stosowanie goto jest dokładnie tym, czego podejście strukturalne każe unikać, bo prowadzi do „kodu spaghetti”. Zasadą strukturalną jest wydzielanie powtarzalnych sekwencji do procedur i funkcji, dlatego ta odpowiedź jest poprawna.

Pytanie 39

Który typ relacji wymaga utworzenia tabeli pośredniczącej, łączącej klucze główne obu tabel?

A.
1..1
B.
n..n
C.
n..1
D.
1..n
Tabelę pośredniczącą, łączącą klucze główne obu tabel, wymaga relacja WIELE-DO-WIELU (n..n) - bez niej nie da się zapisać, że wielu rekordom z jednej tabeli odpowiada wielu z drugiej. Tabela łącząca zamienia jedną relację n..n na dwie relacje 1..n. Zapamiętaj: n..n = dodatkowa tabela z parami kluczy.

Pytanie 40

Która metoda obiektu location zastępuje bieżący dokument dokumentem spod podanego adresu?

A.
open();
B.
replace();
C.
close();
D.
reload();
Metoda location.replace() wczytuje nowy dokument spod podanego adresu, ZASTĘPUJĄC bieżący - bez dodawania wpisu do historii (nie da się „cofnąć”). Dlatego dokument zastępuje replace().