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: 19 grudnia 2025 21:20
  • Data zakończenia: 19 grudnia 2025 21:38

Egzamin zdany!

Wynik: 26/40 punktów (65,0%)

Wymagane minimum: 20 punktów (50%)

Pochwal się swoim wynikiem!
Szczegółowe wyniki:
Pytanie 1

Na przedstawionej grafice widać fragment bazy danych. Jakie kwerendę należy zastosować, aby uzyskać nazwy produktów zakupionych przez klienta o id = 1?

Ilustracja do pytania
A. SELECT nazwa FROM produkty JOIN transakcje_produkty JOIN transakcje WHERE nr_klienta = 1
B. SELECT nazwa FROM produkty JOIN transakcje ON nr_produktu = nr_klienta WHERE nr_klienta = 1
C. SELECT nazwa FROM produkty JOIN transakcje_produkty USING(nr_produktu) JOIN transakcje USING(nr_transakcji) WHERE nr_klienta = 1
D. SELECT nazwa FROM produkty JOIN transakcje_produkty USING(nr_produktu) WHERE nr_klienta = 1
Niepoprawne odpowiedzi wynikają z błędnego zrozumienia struktury bazy danych oraz sposobu łączenia tabel. Błędem w połączeniach JOIN jest nieprawidłowe określenie warunków łączenia tabel co prowadzi do niekompletnych lub błędnych wyników. W przypadku bazy danych relacyjnej kluczowe jest aby każda tabela była prawidłowo połączona przez klucz obcy co zapewnia integralność danych. Źle skonstruowane zapytania mogą powodować problemy wydajnościowe jak również zwracać niewłaściwe informacje co jest szczególnie problematyczne w środowisku produkcyjnym. Typowe błędy myślowe obejmują nieprawidłowe zrozumienie pojęcia klucza obcego jako mechanizmu łączącego tabele oraz błędne stosowanie klauzuli WHERE bez uwzględnienia pełnej relacji między tabelami. Również użycie niewłaściwych aliasów czy nieprecyzyjnych warunków może prowadzić do nieoptymalnych zapytań. Dlatego też ważne jest zrozumienie działania JOIN oraz jego wpływu na zapytania SQL aby móc skutecznie projektować systemy bazodanowe które są skalowalne i efektywne w działaniu.

Pytanie 2

Co wykonuje poniższy fragment kodu w JavaScript?

n = "Napis1";
s = n.length;
A. Przypisze zmiennej s fragment tekstu ze zmiennej n, o długości określonej przez zmienną length
B. Przypisze zmienną n do zmiennej s
C. Wyświetli długość tekstu ze zmiennej n
D. Przypisze zmiennej s wartość, która odpowiada długości tekstu ze zmiennej n
Analizując błędne odpowiedzi można zauważyć kilka typowych nieporozumień związanych z właściwością length w JavaScript. Pierwszym z nich jest mylne założenie że length służy do wycinania fragmentu napisu co sugeruje odpowiedź o przypisaniu zmiennej s fragmentu napisu. W rzeczywistości length to właściwość która zwraca liczbę elementów w stringu a nie jego część. Aby wyciąć fragment stringa należy użyć metod takich jak slice lub substring które są przeznaczone do tego celu. Kolejne nieporozumienie polega na traktowaniu length jako funkcji która wyświetla długość napisu. Właściwość length po prostu zwraca wartość dlatego jeśli chcemy ją wyświetlić musimy użyć dodatkowych konstrukcji takich jak console.log w środowisku programistycznym przeglądarki. Następne potencjalne nieporozumienie związane jest z przypisaniem zmiennej n do zmiennej s. Bezpośrednie przypisanie całego stringa do innej zmiennej wymagałoby użycia operatora przypisania (=) bez kontekstu length. Takie błędne rozumowanie często wynika z nieuwagi lub braku doświadczenia w pracy z właściwościami obiektów w JavaScript. Programując w tym języku warto pamiętać że każda właściwość i metoda ma swoje konkretne zastosowanie i przeznaczenie stąd znajomość ich specyfiki jest kluczowa dla efektywnego kodowania. Dzięki tej wiedzy programista może unikać typowych pułapek i optymalizować procesy przetwarzania danych co jest szczególnie istotne w kontekście aplikacji webowych rozwijanych w JavaScript.

Pytanie 3

Do czego wykorzystywany jest program debugger?

A. do analizy działającego programu w celu odnalezienia błędów
B. do interpretacji kodu w wirtualnej maszynie Java
C. do badania kodu źródłowego w celu wykrycia błędów składniowych
D. do przetwarzania kodu napisanego w języku wyższego poziomu na język maszynowy
Debugger to narzędzie służące do analizy wykonywanego programu, które pozwala programistom identyfikować i lokalizować błędy w kodzie. Jego główną funkcją jest umożliwienie krokowego śledzenia działania programu, co pozwala na obserwację wartości zmiennych, a także na analizę przepływu kontrolnego. Przykładowo, programista może ustawić punkty przerwania (breakpoints), które zatrzymują wykonanie programu w określonym miejscu, co daje możliwość dokładnego zbadania stanu aplikacji. Debugger wspiera proces testowania i zapewnia, że program działa zgodnie z założeniami. W branży programistycznej standardem jest korzystanie z debuggingu w ramach cyklu życia oprogramowania, co pozwala na szybką identyfikację usterek oraz poprawę jakości kodu. Ponadto, popularne środowiska programistyczne, jak Visual Studio, Eclipse czy IntelliJ IDEA, oferują zaawansowane funkcje debugowania, które wspierają programistów w ich codziennej pracy.

Pytanie 4

Określ rezultat wykonania skryptu stworzonego w języku PHP

Ilustracja do pytania
A. C
B. A
C. D
D. B
Odpowiedzi B, C i D są niepoprawne z kilku powodów związanych z błędnym zrozumieniem działania funkcji asort() w PHP. Po pierwsze, funkcja ta sortuje tablicę według wartości w porządku rosnącym, ale co ważne, zachowuje oryginalne klucze. Odpowiedź B ukazuje tablicę z kluczami zresetowanymi do wartości całkowitych, co wskazuje na zastosowanie innej funkcji sortującej jak sort() zamiast asort(). Taki wynik wskazuje brak zrozumienia kluczowej cechy asort(), która jest istotna w pracy z tablicami asocjacyjnymi, gdzie zachowanie kluczy jest konieczne do prawidłowego odwzorowania danych. W odpowiedzi C klucze są także zresetowane, a wartości są w niewłaściwej kolejności, co mogłoby sugerować użycie sort() na tablicy o zmienionym indeksowaniu. Odpowiedź D pokazuje tablicę posortowaną poprawnie, ale w niewłaściwej kolejności, co sugeruje błędne użycie funkcji sortującej, być może zakładające odwrotną kolejność lub błędne przypisanie wartości. Kluczowe jest zrozumienie, jak różne funkcje sortujące w PHP wpływają na klucze i wartości tablic, aby unikać takich błędów i poprawnie wykorzystywać funkcje jak asort() do manipulacji danymi w kontekście ich praktycznego zastosowania, jak konfigurowanie ustawień czy analiza danych, gdzie zachowanie oryginalnych kluczy jest kluczowe. Niewłaściwe zastosowanie może prowadzić do błędnych interpretacji danych i problemów z zachowaniem integralności aplikacji.

Pytanie 5

W języku JavaScript stworzono funkcję o nazwie liczba_max, która porównuje trzy liczby naturalne przekazane jako argumenty i zwraca największą z nich. Jak powinno wyglądać prawidłowe wywołanie tej funkcji oraz uzyskanie jej wyniku?

A. liczba_max(a,b,c,wynik);
B. var wynik=liczba_max(a,b,c);
C. liczba_max(a,b,c);
D. liczba_max(a,b,c)=wynik;
Odpowiedź "var wynik=liczba_max(a,b,c);" jest poprawna, ponieważ w ten sposób prawidłowo wywołujemy funkcję liczba_max, przekazując do niej trzy argumenty: a, b oraz c. Funkcja ta ma na celu zwrócenie maksymalnej wartości z przekazanych liczb, więc przypisanie jej wyniku do zmiennej wynik jest logicznym krokiem. W języku JavaScript, operator przypisania (=) pozwala na zdefiniowanie zmiennych, co w tym przypadku oznacza, że zmienna wynik będzie zawierać wartość zwróconą przez funkcję. Wartością tą jest największa liczba spośród a, b i c. Zastosowanie takiego podejścia jest zgodne z koncepcją programowania funkcjonalnego, gdzie funkcje są traktowane jako „pierwszej klasy obywateli”, co oznacza, że można je przypisywać do zmiennych. Dobrą praktyką w programowaniu jest również używanie czytelnych nazw zmiennych oraz funkcji, co ułatwia zrozumienie kodu przez inne osoby. Dodatkowo, warto zwrócić uwagę na typy danych przekazywanych do funkcji, aby uniknąć nieprzewidzianych błędów podczas obliczeń.

Pytanie 6

W języku HTML, aby uzyskać następujący efekt formatowania, należy zapisać kod:

pogrubiony pochylony lub w górnym indeksie

A. <i>pogrubiony <b>pochylony lub w </i><sup>górnym indeksie</sup>
B. <b>pogrubiony <i>pochylony</i></b> lub w <sub>górnym indeksie</sub>
C. <i>pogrubiony </i><b>pochylony</b> lub w <sub>górnym indeksie</sub>
D. <b>pogrubiony </b><i>pochylony</i> lub w <sup>górnym indeksie</sup>
Poprawna odpowiedź to: <b>pogrubiony </b><i>pochylony</i> lub w <sup>górnym indeksie</sup>. Ta odpowiedź prawidłowo wykorzystuje trzy kluczowe tagi HTML do formatowania tekstu: <b>, <i> i <sup>. Tag <b> służy do wyświetlania tekstu w pogrubionym formacie, co pozwala na podkreślenie istotnych fragmentów tekstu. Przykładem może być wyróżnienie tytułów, nagłówków lub kluczowych punktów w treści. Tag <i> jest używany do wyświetlania tekstu w formacie kursywy, co jest często używane do wyróżnienia tytułów książek, filmów, cytowań lub podkreślenia ważnych punktów. Tag <sup> jest używany do wyświetlania napisów jako tekst górnego indeksu, co jest często używane do wskazania numerów stron, przypisów, lub dla oznaczeń matematycznych lub naukowych. Pamiętaj, że prawidłowe użycie tych tagów jest kluczowe dla tworzenia jasnej, czytelnej i profesjonalnie wyglądającej strony internetowej.

Pytanie 7

Jak można zweryfikować spójność danych w bazie MySQL?

A. REPAIR TABLE
B. mysql
C. CHECK TABLE
D. mysqldump
Polecenie CHECK TABLE w MySQL służy do sprawdzania integralności danych w tabeli. Umożliwia to identyfikację problemów, takich jak zduplikowane klucze, uszkodzone wskaźniki lub nieprawidłowe struktury danych. Przykładem zastosowania tego polecenia jest sytuacja, gdy administrator bazy danych podejrzewa, że tabela mogła ulec uszkodzeniu na skutek błędów systemowych lub nieprawidłowych operacji użytkownika. W takim przypadku używając CHECK TABLE, można szybko zdiagnozować problemy i podjąć odpowiednie działania, takie jak naprawa za pomocą polecenia REPAIR TABLE, jeśli to konieczne. Dobre praktyki w zakresie zarządzania bazami danych sugerują regularne sprawdzanie integralności tabel, co pozwala na szybsze wykrywanie problemów oraz minimalizację ryzyka utraty danych. Warto również pamiętać, że CHECK TABLE dostarcza szczegółowych informacji o stanie tabeli, co jest szczególnie przydatne w kontekście monitorowania wydajności i stabilności bazy danych. Z tego względu to polecenie jest kluczowym narzędziem w arsenale każdego administratora MySQL.

Pytanie 8

Wskaż polecenie, które zostało opisane w ramce.

Dla każdego przebiegu pętli aktualna wartość elementu tablicy jest przypisywana do zmiennej, a wskaźnik tablicy jest przesuwany o jeden, aż do osiągnięcia ostatniego elementu tablicy
A. for
B. while
C. next
D. foreach
Instrukcja 'foreach' jest używana do iteracji po elementach zbioru, takich jak tablice lub kolekcje, w sposób bardziej deklaratywny i zwięzły niż tradycyjne pętle 'for'. W wielu językach programowania, takich jak C#, Java czy PHP, pętla 'foreach' pozwala automatycznie przechodzić przez każdy element kolekcji, przypisując go do zmiennej tymczasowej bez konieczności jawnego zarządzania indeksem. Jest to szczególnie przydatne, gdy chcemy po prostu przetwarzać elementy jednej po drugiej, nie martwiąc się o ich indeksy. Przykładowo, w C# można użyć składni: 'foreach (var item in collection)', gdzie 'collection' jest kolekcją, a 'item' to zmienna reprezentująca aktualny element. Takie podejście jest uważane za standardową praktykę w sytuacjach, gdzie chcemy tylko odczytywać wartości. Korzystanie z 'foreach' sprzyja czytelności kodu i minimalizuje ryzyko błędów związanych z obsługą indeksów, co jest zgodne z dobrymi praktykami programistycznymi.

Pytanie 9

Jaką integralność określa przytoczona definicja?

Ilustracja do pytania
A. Statyczną
B. Referencyjną
C. Encji
D. Semantyczną
Integralność encji odnosi się do unikalności danych w tabeli poprzez klucze główne. Jest to fundamentalna koncepcja w relacyjnych bazach danych polegająca na tym że każda encja czyli rekord w tabeli musi być jednoznacznie identyfikowalna. Klucz główny zapewnia tę unikalność co jest niezależne od relacji między tabelami opisywanych przez integralność referencyjną. Pojęcie integralności statycznej odnosi się do stanu danych który nie zmienia się w czasie co nie jest bezpośrednio związane z relacjami pomiędzy tabelami. Integralność statyczna może odnosić się do historycznych danych lub archiwów gdzie dane muszą pozostać niezmienne po ich zarejestrowaniu. Podczas gdy integralność referencyjna dotyczy dynamicznych relacji między różnymi zestawami danych integralność statyczna wiąże się z zachowaniem niezmienności danych w obrębie pojedynczego zbioru. Integralność semantyczna odnosi się natomiast do znaczenia i logiki biznesowej danych. Chodzi o zapewnienie że dane w bazie są zgodne z regułami i założeniami biznesowymi. Na przykład data urodzenia nie może być późniejsza niż data zatrudnienia. Chociaż integralność semantyczna jest ważna dla poprawności danych z punktu widzenia aplikacji biznesowej nie opisuje ona relacji między tabelami w taki sposób jak integralność referencyjna. Właściwe rozumienie tych różnych koncepcji jest kluczowe dla projektowania i utrzymania spójnych i niezawodnych systemów baz danych.

Pytanie 10

Które polecenie SQL zaktualizuje w tabeli tab wartość Ania na Zosia w kolumnie kol?

A. UPDATE tab SET kol='Zosia' WHERE kol='Ania';
B. ALTER TABLE tab CHANGE kol='Ania' kol='Zosia';
C. ALTER TABLE tab CHANGE kol='Zosia' kol='Ania';
D. UPDATE tab SET kol='Ania' WHERE kol='Zosia';
W tym przypadku, żeby zmienić 'Ania' na 'Zosia' w kolumnie 'kol' w tabeli 'tab', wykorzystujemy polecenie UPDATE. To umożliwia nam modyfikację danych, które już są w bazie. Składnia jest dosyć prosta: UPDATE nazwa_tabeli SET kolumna='nowa_wartość' WHERE warunek. Więc w tym naszym przykładzie, musimy ustalić, że w kolumnie 'kol' jest obecnie 'Ania', żeby wymienić ją na 'Zosia'. Jak to napiszesz, to będzie wyglądać tak: UPDATE tab SET kol='Zosia' WHERE kol='Ania';. Tego typu polecenia są naprawdę przydatne, zwłaszcza w systemach CRM, gdzie często aktualizujemy dane o klientach. Co ciekawe, stosując SQL, działamy zgodnie z zasadami ACID, co sprawia, że nasze dane zachowują spójność. Nie zapomnij też, że przed aktualizacją warto mieć kopię zapasową, żeby w razie czego nie stracić nic ważnego.

Pytanie 11

W CSS należy ustawić tło dokumentu na obrazek rys.png. Obrazek powinien się powtarzać tylko w poziomej osi. Jaką definicję powinien mieć selektor body?

A. {background-image: url("rys.png"); background-repeat: repeat-y;}
B. {background-image: url("rys.png"); background-repeat: round;}
C. {background-image: url("rys.png"); background-repeat: repeat;}
D. {background-image: url("rys.png"); background-repeat: repeat-x;}
Wybrana odpowiedź {background-image: url("rys.png"); background-repeat: repeat-x;} jest poprawna, ponieważ precyzyjnie definiuje tło dokumentu jako obrazek 'rys.png', który ma się powtarzać wyłącznie w poziomie. W CSS, właściwość 'background-image' pozwala na ustawienie obrazu jako tła, a 'background-repeat' kontroluje, w jaki sposób tło się powtarza. Użycie wartości 'repeat-x' oznacza, że obrazek będzie powtarzany tylko w osi poziomej, co jest idealne dla wzorów, które powinny być rozciągnięte na całej szerokości ekranu, ale nie na wysokości. Przykładem zastosowania może być stworzenie tła z deseniem, które ma być widoczne w poziomie, np. paski lub linie, co jest powszechnie stosowane w projektowaniu stron internetowych. Zgodnie z dobrymi praktykami, warto również pamiętać, aby dostosować rozmiar obrazka do wymagań responsywności, aby zapewnić optymalne wyświetlanie na różnych urządzeniach.

Pytanie 12

W języku CSS zdefiniowano następujące formatowanie:

 h1 i {color: red;}
Kolorem czerwonym zostanie zapisany
A. cały tekst nagłówka pierwszego stopnia oraz pochylony tekst akapitu.
B. tylko tekst pochylony nagłówka pierwszego stopnia.
C. tylko tekst pochylony we wszystkich poziomach nagłówków.
D. cały tekst nagłówka pierwszego stopnia oraz cały tekst pochylony, niezależnie od tego, w którym miejscu strony się znajduje.
Pozostałe odpowiedzi zawierają nieprawidłowe założenia co do tego, jak działają selektory w CSS. Odpowiedź sugerująca, że czerwonym kolorem zostanie zapisany tylko tekst pochylony we wszystkich poziomach nagłówków, nie jest prawidłowa, ponieważ kod CSS h1 i {color: red;} wyraźnie określa, że reguła dotyczy tylko tekstu pochylonego (<i>) wewnątrz nagłówka pierwszego stopnia (<h1>). Podobnie, odpowiedź mówiąca, że cały tekst nagłówka pierwszego stopnia oraz cały tekst pochylony, niezależnie od tego w którym miejscu strony się znajduje, będzie czerwony, jest niepoprawna. Ta reguła CSS nie wpływa na cały tekst nagłówka pierwszego stopnia, ani na pochylony tekst w innych miejscach dokumentu. Wreszcie, odpowiedź sugerująca, że cały tekst nagłówka pierwszego stopnia oraz pochylony tekst akapitu będą czerwone, jest również nieprawidłowa, ponieważ jak wcześniej wspomniano, reguła dotyczy tylko tekstu pochylonego umieszczonego bezpośrednio w nagłówku pierwszego stopnia. Rozróżnienie między różnymi rodzajami selektorów i zrozumienie, jak są interpretowane przez przeglądarkę, to kluczowe umiejętności w codziennym kodowaniu CSS.

Pytanie 13

Aby cofnąć uprawnienia danemu użytkownikowi, należy użyć polecenia

A. REVOKE
B. DELETE PRIVILEGES
C. GRANT NO PRIVILEGES
D. DELETE
Odpowiedź 'REVOKE' jest rzeczywiście trafna. To standardowe polecenie w systemach baz danych, jak SQL, do odbierania uprawnień użytkownikom. Dzięki temu administracja może lepiej zarządzać dostępem do danych, co jest mega ważne dla ich bezpieczeństwa. Na przykład, jeśli ktoś wcześniej miał prawo do edytowania danych, administrator może użyć 'REVOKE UPDATE ON tabela FROM użytkownik', żeby cofnąć te uprawnienia. W praktyce, stosowanie odpowiednich uprawnień jest kluczowe, żeby utrzymać integralność danych oraz upewnić się, że tylko uprawnione osoby mają do nich dostęp. Użycie 'REVOKE' to dobra praktyka w zarządzaniu dostępem, bo daje możliwość elastycznego dostosowania uprawnień, co może pomóc w uniknięciu nieautoryzowanego dostępu.

Pytanie 14

Na ilustracji przedstawiono projekt struktury bloków strony internetowej. Przy założeniu, że bloki są realizowane przy użyciu znaczników sekcji, ich stylizacja w CSS, poza określonymi szerokościami dla bloków: 1, 2, 3, 4 (blok 5 nie ma przypisanej szerokości), powinna obejmować właściwość

Ilustracja do pytania
A. clear: both dla bloku 5 oraz float: left dla pozostałych bloków
B. clear: both dla wszystkich bloków
C. float: left dla wszystkich bloków
D. clear: both dla bloku 5 oraz float: left tylko dla bloków 1 i 2
Czwarta odpowiedź jest na miejscu, bo dzięki float: left dla bloków 1, 2, 3 i 4, te elementy będą się ładnie ustawiać w linii, zgodnie z ich szerokością. Potem, z clear: both dla bloku 5, unikniesz sytuacji, gdy nachodzi on na inne pływające bloki i pojawi się poniżej nich. Wiesz, float często stosuje się do robienia układów, gdzie elementy muszą być obok siebie. Ale float ma to do siebie, że nie wpływa na rodziców, co czasami sprawia, że wszystko może się zdezorganizować, jeśli nie użyjesz clear. To też jest ważne, bo clear mówi, które elementy nie powinny nachodzić na te pływające - dzięki temu wszystko jest uporządkowane. Dobrze jest to wykorzystać, na przykład, gdy chcesz zrobić kolumny na stronie. Generalnie, stosowanie float jest jak najbardziej w porządku, ale musi iść w parze z clear, żeby strona była czytelna i dobrze zorganizowana, zgodnie ze standardami HTML i CSS.

Pytanie 15

Liczba 0x142, przedstawiona w kodzie JavaScript, przyjmuje formę

A. dziesiętną
B. dwójkową
C. szesnastkową
D. ósemkową
Odpowiedzi sugerujące, że liczba 0x142 jest zapisana w systemie ósemkowym, dziesiętnym lub dwójkowym, wykazują fundamentalne nieporozumienia w zakresie notacji liczbowej. System ósemkowy (bazujący na 8) używa cyfr od 0 do 7, co czyni niemożliwym zapisanie liczby 142, ponieważ ta liczba zawiera cyfrę 8 - co narusza zasady tego systemu. Z kolei system dziesiętny, który posługuje się cyframi od 0 do 9, nie stosuje prefiksu "0x", który jest zarezerwowany dla systemu szesnastkowego. Liczba 142 w systemie dziesiętnym ma postać 142, a nie 0x142. Ponadto, jeśli chodzi o system dwójkowy (binarny), to jego zasięg ogranicza się do cyfr 0 i 1. Każda liczba w systemie binarnym jest reprezentowana jako sekwencja tych dwóch cyfr, co sprawia, że wprowadzenie liczby 0x142 do tego systemu również nie jest możliwe. Typowe błędy myślowe związane z błędnymi odpowiedziami polegają na myleniu notacji z różnymi systemami liczbowymi bez zrozumienia ich podstawowych zasad. W praktyce, aby poprawnie interpretować liczby w różnych systemach, ważne jest, aby zwracać uwagę na ich notację i format, co pozwala uniknąć nieporozumień w programowaniu i analizie danych.

Pytanie 16

Kwerenda umożliwiająca wprowadzenie zmian w wielu rekordach lub przeniesienie ich za pomocą jednej operacji nosi nazwę kwerendy

A. funkcjonalnej
B. parametrycznej
C. wybierającej
D. krzyżowej
Kwerenda parametryczna to rodzaj kwerendy, która umożliwia użytkownikowi wprowadzenie parametrów w celu wykonania zapytania. Choć parametry mogą być wykorzystywane do modyfikacji danych, nie są one odpowiednie do wprowadzania masowych zmian, ponieważ wymagają interakcji użytkownika w celu ustalenia wartości parametrów. Z kolei kwerenda wybierająca, której celem jest pobieranie danych z bazy, nie wprowadza ani nie modyfikuje informacji, a jedynie prezentuje dane zgodnie z określonymi kryteriami. To sprawia, że nie można jej używać do wprowadzania zmian w rekordach. Kwerenda krzyżowa natomiast, która jest wykorzystywana do analizy danych w formie tabel przestawnych, również nie działa w kontekście masowych aktualizacji lub przeniesień rekordów. Zamiast tego, kwerendy krzyżowe agregują dane w celu analizy, co sprawia, że są one skuteczne do raportowania, ale nie do operacji modyfikujących bazę danych. Wszystkie te trzy typy kwerend mają swoje specyficzne zastosowania, lecz w kontekście pytania, to kwerenda funkcjonalna jest jedynym odpowiednim narzędziem do wprowadzania zmian w wielu rekordach jednocześnie.

Pytanie 17

Ile maksymalnie znaczników <td> może być zastosowanych w tabeli, która ma trzy kolumny oraz trzy wiersze, nie zawierając przy tym złączeń komórek i wiersza nagłówkowego?

A. 12
B. 9
C. 3
D. 6
Odpowiedź 9 jest prawidłowa, ponieważ w tabeli o trzech kolumnach i trzech wierszach, gdzie nie ma złączeń komórek ani wiersza nagłówkowego, maksymalna liczba znaczników <td> wynosi 9. Każda kolumna w każdym wierszu może być wypełniona osobnym znacznikiem <td>. Tabela składająca się z 3 wierszy i 3 kolumn daje w sumie 3 x 3 = 9 komórek, które są reprezentowane przez znaczniki <td>. Przykładową strukturę HTML takiej tabeli można przedstawić następująco: <table><tr><td>1</td><td>2</td><td>3</td></tr><tr><td>4</td><td>5</td><td>6</td></tr><tr><td>7</td><td>8</td><td>9</td></tr></table>. Warto również zauważyć, że zgodnie z zaleceniami W3C, użycie odpowiednich znaczników w tabelach jest kluczowe dla zapewnienia właściwej dostępności i semantyki dokumentu HTML, co jest zgodne z dobrymi praktykami tworzenia stron internetowych.

Pytanie 18

Jakim poleceniem SQL można zlikwidować z tabeli artykuly wiersze, które zawierają słowo "sto" w dowolnej lokalizacji pola tresc?

A. DELETE FROM artykuly WHERE tresc = "%sto%"
B. DELETE * FROM artykuly WHERE tresc LIKE "%sto%"
C. DELETE FROM artykuly WHERE tresc LIKE "%sto%"
D. DELETE * FROM artykuly WHERE tresc = "%sto%"
Wybór odpowiedzi "DELETE * FROM artykuly WHERE tresc = '%sto%';" jest po prostu zły z paru powodów. Po pierwsze, w SQL nie używamy znaku '*' przy DELETE. Jak chcemy usunąć wiersze, to piszemy tylko "DELETE FROM nazwa_tabeli". To '*' sugeruje, że chcesz usunąć jakieś konkretne kolumny, a to w SQL się nie sprawdzi. Druga sprawa to operator '=' zamiast 'LIKE'. '=' używamy do porównania wartości, nie do wyszukiwania wzorców, a tu właśnie szukamy wystąpienia słowa 'sto' w dłuższym tekście. Dlatego operator LIKE z wildcardami jest tu konieczny, by znaleźć i usunąć te wiersze, które mają 'sto' gdziekolwiek. Często ludzie mylą te operatory w SQL, co prowadzi do problemów i nieefektywnego wyszukiwania.

Pytanie 19

Która z list jest interpretacją podanego kodu?

Ilustracja do pytania
A. Rys. A
B. Rys. B
C. Rys. D
D. Rys. C
Kod HTML zawiera uporządkowaną listę ol z dwoma głównymi elementami muzyka i filmy Każdy z tych elementów ma zagnieżdżoną listę nieuporządkowaną ul z odpowiednimi wpisami W HTML użycie listy ol oznacza że elementy główne będą numerowane Kolejność elementów w kodzie muzyka a następnie filmy jest zgodna z ilustracją C gdzie każdy element nadrzędny zawiera swoją własną zagnieżdżoną listę nieuporządkowaną ul Prawidłowe zagnieżdżanie list jest kluczowe dla struktury semantycznej dokumentu HTML co ma znaczenie dla SEO i dostępności Dobrym przykładem praktyki jest używanie odpowiednich znaczników aby zachować logiczną hierarchię Użycie ol i ul w odpowiednich miejscach pozwala na lepsze zrozumienie i interpretację treści przez przeglądarki i czytniki ekranowe Zapewnienie poprawnej struktury list pomaga również w utrzymaniu porządku w kodzie i lepszym zarządzaniu stylem za pomocą CSS

Pytanie 20

W SQL przeprowadzono zapytanie, jednak jego realizacja nie powiodła się, co skutkowało błędem: #1396 - Operation CREATE USER failed for 'anna'@'localhost'. Możliwą przyczyną takiego zachowania bazy danych może być

CREATE USER 'anna'@'localhost' IDENTIFIED BY '54RTu8';
A. istnienie użytkownika anna w bazie
B. nieznane polecenie CREATE USER
C. błędna składnia polecenia CREATE USER
D. niewystarczające hasło dla konta anna
Odpowiedzi sugerujące zbyt słabe hasło, nieznane polecenie, czy też nieprawidłową składnię polecenia są mylące i wskazują na brak zrozumienia podstawowych zasad działania systemów zarządzania bazą danych MySQL. Po pierwsze, hasło '54RTu8' spełnia standardowe wymagania dotyczące złożoności, które zazwyczaj obejmują minimalną długość oraz kombinację liter i cyfr, co czyni tę odpowiedź nieprawidłową. Ponadto, polecenie CREATE USER jest standardowym poleceniem w SQL, więc stwierdzenie, że jest ono 'nieznane', również nie ma podstaw. Warto zauważyć, że składnia polecenia jest poprawna i nie zawiera żadnych błędów typograficznych. Takie myślenie może prowadzić do fałszywych wniosków, co jest szczególnie problematyczne w kontekście rozwiązywania problemów. W praktyce, użytkownicy powinni nauczyć się korzystać z dokumentacji oraz narzędzi diagnostycznych, takich jak logi błędów, aby lepiej zrozumieć przyczyny problemów. Przykładem dobrej praktyki jest stosowanie komendy SHOW GRANTS, aby sprawdzić, jakich uprawnień już istniejący użytkownik może potrzebować, zanim podejmie się decyzji o jego usunięciu czy modyfikacji.

Pytanie 21

Jakie polecenie SQL umożliwia usunięcie z tabeli artykuly wierszy, w których pole tresc zawiera słowo „sto” w dowolnej lokalizacji?

A. DELETE * FROM artykuly WHERE tresc LIKE "%sto%";
B. DELETE FROM artykuly WHERE tresc = "%sto%";
C. DELETE FROM artykuly WHERE tresc LIKE "%sto%";
D. DELETE * FROM artykuly WHERE tresc = "%sto%";
Używanie polecenia DELETE z klauzulą WHERE w nieodpowiedni sposób może prowadzić do różnych problemów. Na przykład odpowiedzi, które zaczynają się od "DELETE * FROM artykuly...", są błędne, bo w SQL nie stosujemy znaku * przy usuwaniu danych. Przy DELETE nie musimy wskazywać kolumn, które chcemy usunąć, w przeciwieństwie do SELECT, gdzie mówimy, które kolumny nas interesują. Użycie znaku * w tym kontekście sprawia, że komenda jest nieprawidłowa. Do tego, używanie operatora '=', jak w jednej z odpowiedzi, jest też nietrafione. To polecenie wymaga dokładnej wartości, a nie szukania wzorców. Takie błędy mogą prowadzić do usunięcia tylko tych wierszy, które dokładnie pasują do podanej frazy, a nie tych, w których ta fraza występuje gdzieś tam. Często mylimy operacje usuwania z operacjami selekcji, co może skutkować nieporozumieniami. Ważne, żeby wiedzieć, jak różnią się operator LIKE i '=', bo to klucz do skutecznego zarządzania danymi w bazach.

Pytanie 22

Za pomocą podanego zapytania w tabeli zostanie wykonane

ALTER TABLE nazwa1 ADD nazwa2 DOUBLE NOT NULL;
A. Dodana kolumna nazwa2 o typie zmiennoprzecinkowym.
B. Dodana kolumna nazwa2, która nie przyjmuje wartości domyślnej.
C. Została zmieniona nazwa kolumny z nazwa1 na nazwa2.
D. Zmieniono typ kolumny nazwa2 na DOUBLE.
Analizując dostępne odpowiedzi, warto zwrócić uwagę na kilka istotnych kwestii związanych z instrukcją ALTER TABLE oraz jej zastosowaniem. Pierwsza koncepcja, dotycząca zmiany nazwy kolumny z nazwa1 na nazwa2, jest niepoprawna, ponieważ zapytanie nie wskazuje na taką operację. Zamiast tego, tworzymy nową kolumnę, a nie modyfikujemy istniejącą. Przechodząc do drugiej odpowiedzi, zmiana wartości kolumny nazwa2 na DOUBLE jest błędna, ponieważ instrukcja nie odnosi się do zmian wartości, ale do struktury tabeli. Kolejna nieprawidłowa koncepcja, sugerująca dodanie kolumny nazwa2 przyjmującej wartość domyślną DOUBLE, jest również myląca, ponieważ w zapytaniu nie ma ustawienia wartości domyślnej, a jedynie określenie typu kolumny oraz ograniczenia NOT NULL. Typowe błędy myślowe, które prowadzą do takich wniosków, to nieścisłe rozumienie roli polecenia ALTER TABLE oraz mylenie operacji na kolumnach z ich definicjami. W praktyce, ważne jest, aby dokładnie rozumieć jak działają typy danych w SQL oraz jakie ograniczenia można na nich nakładać, aby zapewnić integralność i jakość przechowywanych danych.

Pytanie 23

Funkcję session_start() w PHP należy zastosować przy realizacji

A. ładowania danych z zewnętrznych plików
B. przetwarzania formularza
C. wielostronicowej strony, która wymaga dostępu do danych podczas przechodzenia pomiędzy stronami
D. jakiejkolwiek strony internetowej, która obsługuje cookies
Wybór odpowiedzi dotyczącej dowolnej witryny obsługującej ciasteczka wskazuje na niepełne zrozumienie roli sesji w PHP. Ciasteczka, choć są narzędziem do przechowywania danych w przeglądarkach, różnią się zasadniczo od sesji. Główną różnicą jest to, że ciasteczka są przechowywane po stronie klienta, co oznacza, że użytkownik ma dostęp do ich zawartości i mogą być one modyfikowane przez użytkownika. W przypadku sesji, dane są przechowywane po stronie serwera, co oferuje większe bezpieczeństwo i kontrolę nad danymi użytkownika. W kontekście wczytywania danych z plików zewnętrznych, nie ma związku z sesjami, ponieważ ta operacja nie wymaga przechowywania stanu użytkownika. Podobnie, odpowiedź dotycząca obsługi formularza również nie uwzględnia, że sesje są stosowane do utrzymywania stanu aplikacji, a nie do samej obsługi formularzy. Typowym błędem jest mylenie sesji z mechanizmami przechowywania danych, które są bardziej odpowiednie dla informacji statycznych, a nie dynamicznych interakcji użytkownika. Zrozumienie, kiedy używać sesji, a kiedy ciasteczek lub innych metod przechowywania, jest kluczowe dla tworzenia bezpiecznych i funkcjonalnych aplikacji internetowych.

Pytanie 24

Jaką instrukcję algorytmu ilustruje graficzna prezentacja bloku na zamieszczonym rysunku?

Ilustracja do pytania
A. n > 20
B. Wykonaj podprogram sortowania tablicy t
C. Wypisz n
D. n ← n + 5
Blok decyzyjny w diagramach przepływu jest kluczowym elementem algorytmów, ponieważ umożliwia podejmowanie decyzji na podstawie warunków logicznych. Reprezentowany jest przez romb i oznacza miejsce w algorytmie, gdzie następuje sprawdzenie warunku. W tym przypadku warunek to n > 20. Jeśli warunek zostanie spełniony, algorytm podąża jedną ścieżką, w przeciwnym razie inną. Jest to zgodne z praktykami programistycznymi, gdzie instrukcje warunkowe, takie jak if lub switch, kontrolują przepływ programu. Przykładowo, w systemach kontroli dostępu możemy użyć warunku n > 20 do sprawdzenia, czy użytkownik ma wystarczające uprawnienia, co jest zgodne z zasadami bezpieczeństwa IT. W systemach czasu rzeczywistego, takich jak kontrola jakości w produkcji, warunki te zapewniają, że błędy są wykrywane i obsługiwane odpowiednio, co jest kluczowe dla utrzymania standardów jakości. Wiedza o blokach decyzyjnych jest podstawą dla efektywnego projektowania algorytmów, co ma zastosowanie w szerokim zakresie technologii informatycznych, od baz danych po aplikacje mobilne.

Pytanie 25

W teorii relacji operacja selekcji polega na

A. eliminuje krotki z powtarzającymi się polami
B. pozbywaniu się pustych wierszy
C. wybraniu krotek, które spełniają określone warunki
D. wybraniu krotek, które nie zawierają wartości NULL
Operacja selekcji w algebrze relacji polega na wydobywaniu z bazy danych krotek, które spełniają określone warunki. Tego rodzaju operacje są kluczowe w kontekście zapytań do baz danych, ponieważ pozwalają na precyzyjne filtrowanie danych. Na przykład, jeśli mamy tabelę 'Klienci' z informacjami o klientach, możemy użyć selekcji, aby wybrać tylko tych, którzy mają status 'aktywny', co pozwala nam skoncentrować się na aktualnych użytkownikach. Takie podejście jest zgodne z podstawowymi zasadami zarządzania danymi, w tym z zasadą minimalizacji danych, która mówi, że należy pracować tylko z tymi informacjami, które są istotne do danego zadania. Ponadto, operacja selekcji jest często używana w połączeniu z innymi operacjami, takimi jak projekcja czy łączenie, co pozwala na budowanie bardziej złożonych zapytań i uzyskiwanie bardziej szczegółowych informacji. W praktyce, umiejętność skutecznego stosowania selekcji jest niezbędna dla każdego, kto pracuje z bazami danych, a znajomość tej operacji stanowi podstawę dla bardziej zaawansowanych technik analizy danych.

Pytanie 26

Jakie będzie wynikowe wyjście po uruchomieniu tego skryptu PHP?

<?php
$kolory = array("czarny", "zielony", "niebieski", "biały");
rsort($kolory);
$ile = count($kolory);
for($x = 0; $x < $ile; $x++)
{
  echo $kolory[$x].", ";
}
?>
A. czarny, zielony, niebieski, biały
B. biały, niebieski, zielony, czarny
C. zielony, niebieski, czarny, biały
D. biały, czarny, niebieski, zielony
Skrypt PHP wykorzystuje funkcję rsort() do sortowania tablicy w porządku malejącym alfabetycznie. W tym przypadku tablica zawiera kolory: czarny zielony niebieski biały. Funkcja rsort() zmienia kolejność elementów według malejącej wartości ASCII pierwszej litery każdego ciągu znakowego. Gdy tablica jest sortowana w ten sposób pierwsza spółgłoska kończy się na największym zestawie znaków ASCII. Dlatego wynik to zielony niebieski czarny biały. Po sortowaniu pętla for iteruje przez wszystkie elementy tablicy używając funkcji count() do określenia długości tablicy i wypisuje każdy kolor oddzielony przecinkiem. Użycie rsort() jest zgodne z dobrymi praktykami programistycznymi w przypadku gdy chcemy uzyskać szereg wsteczny np. do wyświetlania list w interfejsach użytkownika od końca do początku. Zapewnienie że dane wejściowe są poprawnie uporządkowane pozwala na efektywne zarządzanie danymi a zrozumienie tego procesu jest kluczowe w budowaniu dynamicznych aplikacji PHP.

Pytanie 27

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. D.
B. C.
C. B.
D. A.
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 28

Jakiej właściwości CSS należy użyć, aby ustalić marginesy wewnętrzne dla danego elementu?

A. hight
B. padding
C. margin
D. width
Odpowiedź 'padding' jest prawidłowa, ponieważ właściwość CSS 'padding' służy do definiowania marginesów wewnętrznych dla elementu. Padding to przestrzeń między zawartością a krawędzią elementu, co pozwala na lepsze dostosowanie układu i prezentacji treści. Stosowanie paddingu jest kluczowe w tworzeniu responsywnych projektów, ponieważ umożliwia zachowanie odpowiednich odstępów niezależnie od rozmiaru wyświetlacza. Na przykład, aby zastosować padding do elementu div, można użyć następującej reguły CSS: 'div { padding: 20px; }', co doda 20 pikseli przestrzeni wewnętrznej ze wszystkich stron. Ponadto, dobrym zwyczajem jest stosowanie jednostek względnych, takich jak 'em' lub 'rem', aby zapewnić lepszą elastyczność i skalowalność w różnych kontekstach. To podejście sprzyja również utrzymaniu spójności w całym projekcie, co jest zgodne z najlepszymi praktykami w branży web designu.

Pytanie 29

Podczas edytowania grafiki w programie do obróbki rastrowej należy usunąć kolory z obrazu, aby uzyskać wizualizację w odcieniach szarości. W tym celu można zastosować funkcję

A. filtru rozmycia
B. desaturacji
C. kadrowania
D. szumu RGB
Desaturacja to proces, który polega na usunięciu kolorów z obrazu, co skutkuje uzyskaniem jego wersji w odcieniach szarości. W kontekście edytorów grafiki rastrowej, takich jak Adobe Photoshop lub GIMP, desaturacja jest kluczową funkcją, umożliwiającą szybkie przekształcenie zdjęcia kolorowego w monochromatyczne. Tego typu operacje są szczególnie przydatne w fotografii czarno-białej, w grafice artystycznej oraz w projektowaniu, gdzie kolor może odwracać uwagę od kompozycji lub detali. Aby wykonać desaturację, wystarczy zastosować odpowiednią funkcję menu, co pozwala na łatwe i efektywne pozbycie się kolorów. Dobrą praktyką jest również eksploracja różnych metod desaturacji, takich jak konwersja do skali szarości lub użycie filtrów, które mogą dać różne efekty wizualne. Warto również zaznaczyć, że desaturacja nie jest tym samym co konwersja do odcieni szarości, gdyż może zachować pewne informacje o luminancji, które są istotne w kontekście dalszej obróbki obrazu.

Pytanie 30

Aby strona WWW mogła być przesyłana do przeglądarki w formie zaszyfrowanej, należy zastosować protokół

A. SSH
B. HTTP
C. SFTP
D. HTTPS
HTTPS (Hypertext Transfer Protocol Secure) to protokół komunikacyjny, który umożliwia bezpieczne przesyłanie danych pomiędzy przeglądarką internetową a serwerem. Jego podstawowym zadaniem jest zapewnienie poufności i integralności informacji, co osiąga dzięki zastosowaniu szyfrowania. HTTPS korzysta z protokołu SSL/TLS do szyfrowania połączenia, co oznacza, że dane przesyłane pomiędzy użytkownikiem a serwerem są chronione przed podsłuchiwaniem i modyfikacją. Na przykład, w przypadku logowania się do bankowości internetowej, użycie HTTPS zapewnia, że nasze dane logowania są bezpieczne przed potencjalnymi atakami. Zastosowanie HTTPS stało się standardem w branży webowej, zwłaszcza po wprowadzeniu przez Google polityki priorytetowego traktowania stron zabezpieczonych tym protokołem w wynikach wyszukiwania. To nie tylko wzmacnia bezpieczeństwo, ale także zwiększa zaufanie użytkowników do witryn. Standardy dotyczące bezpieczeństwa w sieci zalecają użycie HTTPS jako domyślnego protokołu dla wszystkich stron internetowych, co jest zgodne z najlepszymi praktykami w zakresie ochrony danych.

Pytanie 31

Która z reguł dotyczących sekcji w HTML jest właściwa?

A. W sekcji <head> nie można umieszczać kodu CSS, tylko odwołanie do pliku CSS
B. W sekcji <head> można definiować szablon strony przy użyciu znaczników <div>
C. W sekcji <head> nie znajduje się sekcja <body>
D. W sekcji <head> mogą znajdować się znaczniki <meta>, <title>, <link>
W sekcji <head> dokumentu HTML można umieścić kilka ważnych znaczników, takich jak <meta>, <title> i <link>. Tytuł strony, który znajdziesz w znaczniku <title>, będzie widoczny na karcie przeglądarki, a także pomoże wyszukiwarkom lepiej zrozumieć, o czym jest Twoja strona. Znaczniki <meta> to fajny sposób, żeby dodać różne metadane – jak opis strony czy słowa kluczowe, które mogą przydać się w SEO. A znacznik <link>? Ten odwołuje się do zewnętrznych plików, na przykład do arkuszy stylów CSS, co jest spoko, bo separuje strukturę dokumentu od jego wyglądu. Z mojego doświadczenia, dobre umiejscowienie tych znaczników w <head> nie tylko poprawia SEO, ale też ułatwia zarządzanie stylami. To naprawdę ważne, jeśli chcesz tworzyć nowoczesne i responsywne strony internetowe.

Pytanie 32

W języku CSS wprowadzone zostało następujące formatowanie: ```h1 i {color:red;}``` Kolor czerwony będzie stosowany do

A. tylko tekstu pochylonego nagłówka pierwszego poziomu
B. całego tekstu nagłówka pierwszego stopnia oraz całego tekstu pochylonego, niezależnie od lokalizacji na stronie
C. całego tekstu nagłówka pierwszego stopnia oraz tekstu pochylonego w akapicie
D. wyłącznie pochylonego tekstu w każdym rodzaju nagłówka
W języku CSS, zapis 'h1 i {color:red;}' wskazuje na regułę stylowania, która dotyczy elementów 'i' znajdujących się wewnątrz nagłówka pierwszego stopnia 'h1'. W związku z tym, tylko tekst, który jest oznaczone jako pochylony (italic) w obrębie h1, zostanie wyświetlony na czerwono. W CSS, selektor 'h1 i' jest przykładem selektora potomka, który działa na zasadzie dziedziczenia stylów przez elementy znajdujące się w danym kontekście. Przykładowo, skoro element 'i' jest bezpośrednio związany z 'h1', to tylko tekst w tym elemencie zyska czerwony kolor. W praktyce, jeśli w nagłówku pierwszego stopnia mamy tekst 'To jest nagłówek <i>pochylony</i>', to jedynie słowo 'pochylony' będzie czerwone, podczas gdy pozostała część nagłówka pozostanie w domyślnym kolorze. Tego typu stylizacje są zgodne z standardami CSS, które promują modularność i precyzyjność w określaniu stylów dla różnych elementów dokumentu.

Pytanie 33

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. <input name="password" />
B. <form="password" type="password" />
C. <input type="password" />
D. <form input type="password" />
Odpowiedź <input type="password" /> jest poprawna, ponieważ ten znacznik HTML służy do tworzenia pola edycyjnego, w którym wprowadzane dane są maskowane. W przypadku pól do wpisywania haseł, istotne jest, aby użytkownik nie mógł zobaczyć wpisywanego tekstu, co zwiększa poziom bezpieczeństwa. W HTML, atrybut 'type' z wartością 'password' instruuje przeglądarkę, aby ukrywała znaki wprowadzane przez użytkownika, zastępując je zazwyczaj kropkami lub gwiazdkami. Przykładem zastosowania tego typu znacznika może być formularz logowania, gdzie użytkownicy wpisują swoje hasła. Dobrą praktyką jest również zastosowanie odpowiednich etykiet i walidacji, aby zapewnić, że formularz jest użyteczny i zgodny z WCAG (Web Content Accessibility Guidelines). Warto pamiętać, że bezpieczeństwo haseł powinno być również wspierane przez odpowiednie zabezpieczenia po stronie serwera, w tym haszowanie haseł oraz ochrona przed atakami typu brute force.

Pytanie 34

W grze komputerowej można przejść do kolejnego poziomu, gdy spełnione są trzy warunki: zdobycie 20 punktów, zebranie co najmniej 3 paczek oraz przebycie dystansu 200 m. Wyrażenie logiczne, które weryfikuje te warunki w języku JavaScript, to

A. punkty == 20 && paczki == 3 && dystans == 200
B. punkty == 20 && paczki >= 3 && dystans == 200
C. punkty == 20 || paczki == 3 || dystans == 200
D. punkty == 20 || paczki >= 3 || dystans == 200
Wybrana odpowiedź 'punkty == 20 && paczki >= 3 && dystans == 200' jest prawidłowa, ponieważ wykorzystuje operator logiczny AND ('&&'), co oznacza, że wszystkie trzy warunki muszą być spełnione jednocześnie, aby przejść do następnego poziomu w grze. W kontekście programowania, a zwłaszcza w JavaScript, zrozumienie operatorów logicznych jest kluczowe dla podejmowania decyzji w oparciu o różne warunki. Na przykład, jeśli gracz zdobył dokładnie 20 punktów, zebrał 3 paczki i przebył 200 metrów, to wszystkie te warunki są spełnione, co pozwala na kontynuację gry. Dobrą praktyką jest stosowanie operatora >= (większe lub równe) dla paczek, ponieważ pozwala to graczowi na zbieranie większej liczby paczek, co dodaje elementy strategii i rozwoju w grze. Używanie odpowiednich operatorów logicznych jest fundamentalne w programowaniu, zapewniając, że aplikacje działają zgodnie z oczekiwaniami użytkowników. Przykład zastosowania to wprowadzenie logiki do gier, gdzie gracz musi wykonać określone zadania, aby przejść do kolejnych poziomów, co jest podstawą mechaniki wielu gier komputerowych.

Pytanie 35

Zdefiniowano bazę danych z tabelą sklepy, zawierającą pola: nazwa, ulica, miasto, branża. Aby odnaleźć wszystkie nazwy sklepów spożywczych znajdujących się wyłącznie we Wrocławiu, należy użyć kwerendy:

A. SELECT nazwa FROM sklepy WHERE branza='spożywczy' AND miasto='Wrocław';
B. SELECT sklepy FROM nazwa WHERE branza='spożywczy' BETWEEN miasto='Wrocław';
C. SELECT sklepy FROM branza='spożywczy' WHERE miasto='Wrocław';
D. SELECT nazwa FROM sklepy WHERE branza='spożywczy' OR miasto='Wrocław';
Żeby znaleźć wszystkie sklepy spożywcze tylko we Wrocławiu, stosujemy kwerendę SQL: SELECT nazwa FROM sklepy WHERE branza='spożywczy' AND miasto='Wrocław'; Ta kwerenda jest OK, bo używa klauzuli WHERE, żeby zawęzić wyniki. Klauzula AND jest bardzo ważna, bo tak naprawdę pozwala na spełnienie obu warunków naraz. Jeśli mamy tabelę 'sklepy', gdzie są różne dane o sklepach, to ta kwerenda zwróci tylko te, które pasują do obu kryteriów. Myślę, że to dobrze pokazuje, jak działa normalizacja baz danych, która mówi, żeby unikać duplikatów przez dokładne filtrowanie. Użycie AND gwarantuje, że dostaniemy wyniki, które są naprawdę zgodne z naszym zapytaniem. Na przykład jeśli w tabeli mamy 'Sklep A, ul. X, Wrocław, spożywczy' i 'Sklep B, ul. Y, Poznań, spożywczy', to nasza kwerenda odda tylko 'Sklep A'.

Pytanie 36

Model, w którym wszystkie dane są zapisane w jednej tabeli, określa się mianem

A. relacyjnym
B. sieciowym
C. jednorodnym
D. hierarchicznym
Model jednorodny to taka podstawowa struktura w bazach danych, gdzie wszystko trzymamy w jednej tabeli. To się fajnie sprawdza w prostych aplikacjach, bo wtedy relacje między danymi są dość oczywiste. Klasycznym przykładem może być baza kontaktów, gdzie każdy ma swoje info w jednym miejscu. Dzięki temu mamy łatwy dostęp do danych i prosto nimi zarządzać. Z mojego doświadczenia, to rozwiązanie jest super efektywne, ale jak system staje się większy i złożony, to zaczynają się schody. Wtedy inne modele, jak relacyjne, mogą mieć więcej sensu. W branży często korzysta się z modelu jednorodnego, zwłaszcza tam, gdzie szybki dostęp do danych jest kluczowy, a sztywne struktury tylko przeszkadzają. Na codzień to naprawdę przydatna rzecz, jak ktoś nie chce się męczyć z komplikacjami.

Pytanie 37

Aby ustanowić relację jeden do wielu, w tabeli reprezentującej stronę "wiele", konieczne jest zdefiniowanie

A. klucza sztucznego odnoszącego się do kluczy podstawowych obydwu tabel
B. klucza podstawowego wskazującego na klucz podstawowy tabeli po stronie "jeden"
C. klucza obcego wskazującego na klucz podstawowy tabeli po stronie "jeden"
D. klucza obcego odnoszącego się do klucza obcego tabeli po stronie "jeden"
Tak, relacja jeden do wielu w bazach danych faktycznie działa przez klucze obce. Kiedy mamy tabelę, która ma wiele rekordów, klucz obcy jest tworzony po to, żeby pokazać, który klucz podstawowy z drugiej tabeli jest z nim powiązany. To ważne, bo zapewnia, że każda wartość w kluczu obcym musi pasować do wartości klucza podstawowego w tabeli, na którą wskazuje. Na przykład, w systemie filmowym, mamy tabelę 'Filmy', która jest po stronie 'jeden', a obok niej tabelę 'Obsada', gdzie będą aktorzy. Klucz podstawowy w 'Filmy' to może być jakiś identyfikator filmu, a w 'Obsada' klucz obcy pokaże, do którego filmu się odnosi. Dzięki temu jeden film może mieć wielu aktorów. Dobrze jest pamiętać, że klucz obcy pomaga utrzymać porządek w danych i zapobiega problemom, które mogą się pojawić, jeśli coś się pomiesza. Jak projektujesz bazy danych, to warto używać kluczy obcych, żeby wszystko działało tak jak powinno.

Pytanie 38

Witryna internetowa zawiera poziome menu w formie listy punktowanej. Aby elementy tej listy mogły być wyświetlane w jednej linii, należy przypisać selektorowi li właściwość

A. text-align
B. outline
C. display
D. position
Wybór opcji 'outline' jako właściwości do ustawienia dla selektora 'li' w kontekście wyświetlania elementów listy w jednej linii jest błędny, ponieważ 'outline' dotyczy jedynie rysowania konturów wokół elementu, nie wpływa natomiast na ich układ. Przykładowo, 'outline' jest często używane w celu poprawy dostępności elementów interaktywnych, takich jak przyciski, ale nie ma żadnego wpływu na ich położenie w dokumencie. Z kolei 'position' jest używane do określenia sposobu pozycjonowania elementów, co również nie wpływa na ich wyświetlanie w jednej linii. Choć 'position: relative;' lub 'absolute;' mogą zmienić sposób, w jaki elementy są rozmieszczone w stosunku do siebie, to jednak nie jest to odpowiednie narzędzie do uzyskania efektu poziomego menu. Natomiast 'text-align' jest właściwością, która ustala sposób wyrównania tekstu wewnątrz bloku, ale również nie dotyczy samego wyświetlania elementów listy. Używanie takich podejść może prowadzić do nieporozumień i błędów w projektach, gdzie kluczowe jest zrozumienie, że różne właściwości CSS mają swoje specyficzne zastosowania i nie mogą być zamieniane. Zrozumienie tego aspektu jest kluczowe dla prawidłowego tworzenia układów w stronach internetowych i unikania typowych błędów w stylizacji.

Pytanie 39

Jakie mechanizmy są kluczowe dla Systemu Zarządzania Bazą Danych?

A. Moduł do wizualizacji diagramów encji
B. System do zarządzania wersjami bazy danych
C. Narzędzia do generowania statystyk
D. Wielodostępność do danych
System zarządzania wersjami bazy danych, choć może być użyteczny w kontekście rozwoju aplikacji, nie jest niezbędnym mechanizmem dla systemu zarządzania bazą danych. Służy on przede wszystkim do śledzenia zmian w strukturze bazy oraz w danych, co jest istotne w kontekście kontroli wersji. W praktyce, takie systemy są bardziej związane z procesem deweloperskim niż z podstawowymi funkcjami samego DBMS. Pakiety do tworzenia statystyk również nie są kluczowe dla działania systemu zarządzania bazą. Ich główną rolą jest pomoc w analizie danych oraz optymalizacji zapytań, co jest elementem dodatkowym, a nie wymaganym do prawidłowego funkcjonowania bazy danych. Z kolei przystawka do wizualizacji diagramów encji jest narzędziem wspierającym projektowanie baz danych, ale nie jest niezbędna dla samego systemu zarządzania bazą danych. Wybór odpowiednich narzędzi i mechanizmów w obszarze zarządzania bazami danych powinien być oparty na ich specyficznych zastosowaniach oraz potrzebach użytkowników. Często pojawia się mylne przekonanie, że funkcjonalności dodatkowe są równie istotne jak te podstawowe, co prowadzi do zrozumienia, że kluczowe dla funkcjonowania systemu są te elementy, które zapewniają jego podstawową operacyjność i niezawodność.

Pytanie 40

Wykonanie następującego polecenia PHP umożliwia:

$zapytanie = mysqli_query($db, "UPDATE ...");
A. pobranie danych z bazy
B. zmianę struktury bazy
C. zmianę danych w bazie
D. dodanie nowych danych do bazy
Polecenie PHP mysqli_query z użyciem instrukcji SQL UPDATE służy do modyfikacji danych w bazie danych. Funkcja mysqli_query umożliwia wykonywanie zapytań SQL na połączeniu z bazą danych reprezentowanym przez zmienną $db. Instrukcja UPDATE jest stosowana do aktualizacji istniejących rekordów w tabeli w bazie danych. Przykładowo, jeśli chcesz zaktualizować pole nazwa w tabeli użytkownicy, możesz użyć polecenia UPDATE users SET name='NowaNazwa' WHERE id=1. To podejście umożliwia dynamiczne zarządzanie danymi, co jest kluczowe w aplikacjach internetowych wymagających bieżącej aktualizacji informacji. W praktyce należy pamiętać o dobrych praktykach, takich jak walidacja danych wejściowych i zabezpieczenie przed atakami SQL injection, np. poprzez stosowanie przygotowanych zapytań. Aktualizowanie danych w bazie to jedna z podstawowych operacji CRUD (Create Read Update Delete), które są fundamentem zarządzania danymi w większości aplikacji obsługujących bazy danych. Poprawne użycie tej funkcji wymaga zrozumienia struktury SQL i znajomości specyfiki używanego systemu zarządzania bazą danych.