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 10:40
  • Data zakończenia: 8 czerwca 2026 11:05

Egzamin zdany!

Wynik: 23/40 punktów (57,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

Jaką wartość zwróci funkcja zoo zdefiniowana w języku C++, wywołana z aktualnym parametrem 3.55

int zao(float x){
    return (x + 0.5);
}
A. 4.05
B. 3.5
C. 4
D. 3
Niestety, wybrana odpowiedź jest niepoprawna. Możliwe, że zapomniano o specyficznych zasadach konwersji typów danych w języku C++. W języku tym, jeśli mamy do czynienia z wartościami zmiennoprzecinkowymi (float) i konwertujemy je do wartości całkowitych (int), część ułamkowa jest zawsze odrzucana. Nie ma tutaj zaokrąglenia do najbliższej liczby całkowitej. Dlatego, nawet jeśli wynik działania wewnątrz funkcji wynosi 4.05, po konwersji do typu int, zostaje z tego tylko 4. To jest typowy błąd, który może prowadzić do nieoczekiwanych wyników, szczególnie w programach, gdzie precyzja obliczeń jest kluczowa. Pamiętaj zawsze o tej specyfice języka C++ i dokładnie określaj typy danych, z którymi pracujesz.

Pytanie 2

W języku HTML sposób na zdefiniowanie kodowania polskich znaków to

A. atrybut znacznika <meta>
B. atrybut znacznika <p>
C. znacznik <charset>
D. znacznik <title>
Poprawna odpowiedź to atrybut znacznika <meta>, który pozwala na określenie kodowania znaków w dokumencie HTML. Użycie znacznika <meta> w sekcji <head> dokumentu jest standardową praktyką, aby zapewnić prawidłowe wyświetlanie polskich znaków, takich jak ą, ć, ę, ł, ń, ó, ś, ź, ż. Przykładowa linia kodu, która definiuje kodowanie UTF-8, wygląda następująco: <meta charset="UTF-8">. Kodowanie UTF-8 jest zalecane, ponieważ obsługuje wszystkie znaki w standardzie Unicode, co jest szczególnie ważne w kontekście wielojęzycznych stron internetowych. W praktyce, jeśli nie zdefiniujemy odpowiedniego kodowania, przeglądarki mogą niepoprawnie interpretować znaki, co prowadzi do ich zniekształcenia. Zgodnie z W3C, przypisywanie kodowania w metadanych jest kluczowe dla zapewnienia dostępności oraz poprawności wyświetlania treści, co w konsekwencji wpływa na doświadczenia użytkowników przeglądających strony internetowe.

Pytanie 3

Która sekwencja etapów projektowania relacyjnej bazy danych jest poprawna?

A. Zbiór danych → Selekcja → Klucze podstawowe → Relacje
B. Klucze podstawowe → Zbiór danych → Selekcja → Relacje
C. Selekcja → Relacje → Klucze podstawowe → Zbiór danych
D. Relacje → Klucze podstawowe → Selekcja → Zbiór danych
Projektowanie bazy zaczyna się od zebrania ZBIORU DANYCH (jakie informacje trzeba przechowywać), potem następuje SELEKCJA i uporządkowanie w atrybuty, wyznaczenie KLUCZY podstawowych identyfikujących rekordy, a na końcu ustalenie RELACJI między tabelami. Dlatego poprawna kolejność to: zbiór danych, selekcja, klucze podstawowe, relacje.

Pytanie 4

W programie INKSCAPE / COREL, aby uzyskać efekt przedstawiony w napisie, należy

Ilustracja do pytania
A. skorzystać z funkcji wstaw / dopasuj tekst do ścieżki
B. zastosować funkcję wykluczenia z kołem
C. posłużyć się funkcją gradientu
D. wykorzystać funkcję sumy z kołem
Funkcja wstaw dopasuj tekst do ścieżki w programach takich jak Inkscape czy CorelDraw pozwala na precyzyjne zarządzanie tekstem wzdłuż dowolnie wybranej krzywej lub obiektu ścieżki To narzędzie umożliwia tworzenie estetycznie atrakcyjnych projektów, które wykorzystują nieregularne kształty do formowania tekstu Jest to szczególnie przydatne w projektowaniu graficznym przy tworzeniu logo banerów czy innych materiałów reklamowych gdzie tekst musi podążać za określonym kształtem lub konturem Korzystanie z tej funkcji wymaga zrozumienia podstawowych pojęć takich jak ścieżki krzywe i ich edycja Projektant może stworzyć ścieżkę ręcznie za pomocą narzędzi rysunkowych lub wykorzystać istniejący kształt Następnie funkcja dopasowania automatycznie układa wybrany tekst wzdłuż tej ścieżki jednocześnie pozwalając na dostosowanie jego położenia i orientacji Kluczowe jest zrozumienie że edytowane ścieżki mogą być dowolnie modyfikowane a tekst będzie się dynamicznie dostosowywał co pozwala na kreatywne eksperymentowanie z formą i stylem Tekst zachowuje swoją czytelność i proporcje co jest istotne w kontekście czytelności i estetyki gotowego projektu

Pytanie 5

Aby udostępnić aplikację PHP w internecie, jej pliki źródłowe należy skopiować na serwer za pomocą protokołu:

A. HTTP
B. FTP
C. SMTP
D. NNTP
Pliki źródłowe aplikacji wgrywa się na serwer protokołem FTP (lub jego bezpieczną odmianą SFTP), zwykle za pomocą klienta takiego jak FileZilla. Po skopiowaniu plików do katalogu serwera aplikacja staje się dostępna pod adresem WWW. Dlatego do publikacji aplikacji PHP używa się protokołu FTP.

Pytanie 6

W MSSQL Server rola dbcreator, która jest predefiniowana, umożliwia użytkownikowi

A. tworzenie, modyfikowanie, usuwanie i odzyskiwanie bazy danych
B. zarządzanie plikami na dysku
C. zarządzanie bezpieczeństwem systemu
D. wykonywanie każdej operacji na serwerze i posiadanie prawa własności każdej bazy
Zarządzanie plikami na dysku nie jest funkcjonalnością przypisaną roli dbcreator w SQL Server. Użytkownicy z tą rolą nie mają bezpośrednich uprawnień do zarządzania systemem plików na serwerze, co oznacza, że nie mogą modyfikować, przenosić ani usuwać plików bazy danych bez użycia odpowiednich zabezpieczeń. Rola dbcreator koncentruje się wyłącznie na operacjach związanych z bazami danych. Ponadto, zarządzanie bezpieczeństwem systemu również wykracza poza kompetencje roli dbcreator. Użytkownicy, którzy chcą zarządzać dostępem i bezpieczeństwem baz danych, powinni mieć przypisane role takie jak securityadmin, które pozwalają na kontrolowanie uprawnień i ról użytkowników. W kontekście prawa do wykonywania każdej operacji na serwerze i posiadania prawa własności każdej bazy danych, taka funkcjonalność przynależy do roli sysadmin, która ma pełne uprawnienia do wszystkich zasobów w SQL Server. Rola dbcreator jest ograniczona do operacji związanych z bazami danych, co czyni ją mniej potężną w porównaniu do sysadmin, ale bardziej bezpieczną w kontekście zarządzania uprawnieniami w środowisku produkcyjnym.

Pytanie 7

W systemie baz danych hurtowni utworzono tabelę sprzedaz z polami: id, kontrahent, grupa_cenowa, obrot. Jakie polecenie należy zastosować, aby znaleźć jedynie kontrahentów z drugiej grupy cenowej, których obrót przekracza 4000zł?

A. SELECT sprzedaz FROM kontrahent WHERE obrot > 4000
B. SELECT sprzedaz FROM kontrahent WHERE grupa_cenowa = 2 AND obrot > 4000
C. SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa = 2 AND obrot > 4000
D. SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa = 2 OR obrot > 4000
Poprawna odpowiedź to 'SELECT kontrahent FROM sprzedaz WHERE grupa_cenowa = 2 AND obrot > 4000;'. To polecenie SQL precyzyjnie spełnia wymagania postawione w pytaniu, ponieważ korzysta z operatora AND do jednoczesnego filtrowania kontrahentów w drugiej grupie cenowej oraz tych, których obrót przekracza 4000 zł. W praktyce, takie zapytanie jest niezwykle użyteczne w analizie danych w hurtowniach, umożliwiając wyodrębnienie tylko tych kontrahentów, którzy spełniają oba warunki, co jest kluczowe w procesach selekcji kontrahentów do dalszych działań marketingowych czy analizy rentowności. Warto zauważyć, że dobrym nawykiem jest dokładne określenie, które pola chcemy wyświetlić, a w tym przypadku 'kontrahent' wskazuje na konkretne dane, które są istotne dla analizy. Dodatkowo, stosowanie odpowiednich warunków w zapytaniach SQL jest zgodne z najlepszymi praktykami w zakresie optymalizacji wydajności bazy danych, ponieważ pozwala na minimalizację ilości przetwarzanych danych oraz zwiększa przejrzystość wyników.

Pytanie 8

Pole kolor w tabeli samochody może mieć wartości tylko ze słownika lakier. Która kwerenda ustanowi tę relację?

A.
ALTER TABLE samochody
ADD FOREIGN KEY (kolor) REFERENCES lakier(lakierId);
B.
ALTER TABLE samochody
ADD FOREIGN KEY kolor REFERENCES lakier;
C.
ALTER TABLE samochody
ADD FOREIGN KEY (barwa) REFERENCES samochody(kolor);
D.
ALTER TABLE samochody
ADD FOREIGN KEY barwa REFERENCES samochody.lakier;
Aby związać pole kolor ze słownikiem lakier, klucz obcy musi mieć kolumnę w nawiasie i wskazywać konkretny klucz tabeli słownikowej: ADD FOREIGN KEY (kolor) REFERENCES lakier(lakierId). Dlatego poprawna jest ta kwerenda.

Pytanie 9

Aby grupować sekcje na poziomie bloków, które będą stilizowane za pomocą znaczników, jakiego należy użyć?

A. <span>
B. <param>
C. <div>
D. <p>
Znak <div> jest jednym z podstawowych elementów HTML, który służy do grupowania i organizowania zawartości w dokumentach HTML. Umożliwia on stosowanie stylów CSS oraz skryptów JavaScript na grupach elementów, co czyni go niezwykle użytecznym w budowie responsywnych i złożonych układów stron. W przeciwieństwie do znaku <p>, który zarezerwowany jest dla akapitów tekstu, lub <span>, który jest używany do izolowania niewielkich fragmentów tekstu w ramach większego kontekstu, <div> działa jako kontener wypełniający swoje otoczenie. Ponadto, <div> jest znacznikiem blokowym, co oznacza, że zajmuje całą szerokość dostępnego miejsca w swoim rodzicu, co jest kluczowe w projektowaniu układów. W praktyce może być używany do tworzenia sekcji strony, nagłówków, stopki czy artykułów, co pozwala na lepszą organizację kodu i stylów. W kontekście standardów, <div> jest częścią W3C HTML5, co zapewnia jego szeroką akceptację i zgodność z przeglądarkami. Użycie <div> do grupowania obszarów na poziomie bloków jest zatem najlepszą praktyką w nowoczesnym web designie.

Pytanie 10

Który zapis w dokumencie HTML połączy stronę z zewnętrznym arkuszem stylów style.css?

A.
<a href="/style.css">
B.
<link rel="stylesheet" href="/style.css">
C.
<a src="/style.css">
D.
<link rel="stylesheet' src="/style.css">
Zewnętrzny arkusz stylów dołącza się w <head> znacznikiem <link rel="stylesheet" href="/style.css"> - rel określa typ relacji, a href wskazuje plik. Dlatego poprawny jest ten zapis.

Pytanie 11

Wskaż prawdziwe stwierdzenie o poleceniu:

CREATE TABLE IF NOT EXISTS adres (ulica VARCHAR(70) CHARACTER SET utf8);
A. do tabeli nie można wpisywać ulic z polskimi znakami
B. rekordem tabeli nie może być „3 MAJA”
C. klauzula IF NOT EXISTS jest opcjonalna i zapobiega błędowi, gdy tabela już istnieje
D. klauzula CHARACTER SET utf8 jest obowiązkowa
Pozostałe zdania są fałszywe. CHARACTER SET utf8 UMOŻLIWIA zapis polskich znaków i nie jest obowiązkowa (bez niej użyte zostanie kodowanie domyślne). Pole VARCHAR może zawierać dowolny tekst, w tym „3 MAJA”. Prawdziwe jest tylko stwierdzenie o opcjonalnej, zabezpieczającej klauzuli IF NOT EXISTS.

Pytanie 12

W języku CSS zdefiniowano style dla znacznika h1 zgodnie z podanym wzorem. Przy założeniu, że żadne inne style nie są zastosowane do znacznika h1, wskaż właściwy sposób stylizacji tego elementu

Ilustracja do pytania
A. C
B. A
C. B
D. D
Odpowiedź C jest prawidłowa, ponieważ zastosowane style CSS poprawnie odzwierciedlają zasady formatowania zdefiniowane w pytaniu. Styl font-style: oblique; powoduje, że tekst jest pochylony, ale nie jest to zwykła kursywa używana w normalnym tekście. Oblique jest bardziej subtelne i mniej formalne. Font-variant: small-caps; przekształca małe litery w małe kapitaliki, co nadaje tekstowi bardziej formalny i elegancki wygląd. Jest to użyteczne w nagłówkach, które często wymagają wyrazistości i czytelności. Text-align: right; wyrównuje tekst do prawej, co może być stosowane do tworzenia asymetrycznych, nowoczesnych projektów stron internetowych. Takie formatowanie stosowane jest dla zwiększenia czytelności lub dostosowania tekstu do innych elementów strony. Właściwe stosowanie CSS pozwala na pełne kontrolowanie wyglądu i prezentacji treści, co jest kluczowe w profesjonalnym tworzeniu stron internetowych. Przykładowo, użycie oblique i small-caps może być stosowane w projektach graficznych, takich jak logotypy, gdzie pożądany jest specyficzny styl wizualny. Dobre praktyki w CSS to unikanie nadmiernego użycia stylów, które mogą wpłynąć negatywnie na dostępność i użyteczność strony. W tym kontekście, wybrane style są skutecznie zastosowane, zapewniając zarówno estetykę, jak i funkcjonalność.

Pytanie 13

Formularz, który pełni rolę pośrednika w nawigacji po bazie danych pomiędzy formularzami i kwerendami dostępnymi w systemie, określany jest jako formularz

A. głównym
B. zagnieżdżonym
C. sterującym
D. pierwotnym
Formularz sterujący jest kluczowym elementem w projektowaniu baz danych, który pozwala na efektywną nawigację pomiędzy różnymi formularzami oraz kwerendami. Jego główną funkcją jest dostarczanie użytkownikowi centralnego punktu dostępu do różnych części aplikacji, co ułatwia zarządzanie danymi oraz ich przeglądanie. Przykładowo, w aplikacjach biznesowych formularz sterujący może zawierać przyciski, które kierują użytkownika do formularzy wprowadzania danych, formularzy raportowych, czy kwerend do wyszukiwania informacji. Dobrą praktyką jest, aby formularz sterujący był intuicyjny i estetyczny, co zwiększa użyteczność i efektywność aplikacji. W standardach projektowania baz danych, formularze sterujące są często powiązane z koncepcją MVC (Model-View-Controller), gdzie pełnią rolę kontrolera, który zarządza przepływem danych między modelem a widokiem, co umożliwia lepsze organizowanie interakcji użytkownika z systemem.

Pytanie 14

Na zaprezentowanym schemacie bazy danych biblioteka, elementy takie jak: czytelnik, wypożyczenie oraz książka stanowią

Ilustracja do pytania
A. krotki
B. atrybuty
C. encje
D. pola
Prawidłowo – na takim schemacie bazy danych „czytelnik”, „wypożyczenie” i „książka” to encje. W modelowaniu danych najpierw identyfikujemy obiekty świata rzeczywistego, które chcemy odwzorować w systemie. W przypadku biblioteki naturalnymi obiektami są właśnie czytelnik, książka i konkretne wypożyczenie. W notacji ERD (Entity‑Relationship Diagram) każdy z tych obiektów opisujemy jako encję, a potem dopiero dodajemy jej atrybuty oraz relacje z innymi encjami.
Na schemacie widzisz trzy prostokąty – to są właśnie encje. Każda encja ma zestaw atrybutów: dla encji „czytelnik” są to np. imię, nazwisko, ulica, miejscowość; dla encji „książka” – tytuł, autor, rok wydania; dla encji „wypożyczenie” – daty wypożyczenia i zwrotu, klucze obce do czytelnika i książki. W relacyjnej bazie danych te encje są potem najczęściej odwzorowane jako tabele: tabela CZYTELNIK, WYPOZYCZENIE, KSIAZKA. To jest dokładnie zgodne z dobrymi praktykami projektowania: najpierw model koncepcyjny (encje i relacje), dopiero później model logiczny (tabele, klucze, typy danych).
Z mojego doświadczenia przy każdym poważniejszym projekcie bazodanowym analitycy najpierw rysują diagram encji, bo to pomaga zrozumieć domenę biznesową. Dzięki poprawnemu rozróżnieniu encji od atrybutów można uniknąć błędów typu powtarzanie tych samych danych w wielu miejscach czy trudności z raportowaniem. W bibliotece na przykład wypożyczenie musi być osobną encją, bo opisuje zdarzenie w czasie, ma własne atrybuty (daty) i łączy dwie inne encje relacjami. Taki sposób modelowania jest zgodny z klasycznymi podręcznikami baz danych (model encja‑związek) oraz z zasadami normalizacji.

Pytanie 15

Którą instrukcją można zastąpić pętlę for?

A.
continue
B.
case
C.
while
D.
switch
Pętlę for można zastąpić pętlą while - obie powtarzają kod, dopóki warunek jest prawdziwy, tyle że licznik i krok w while zapisuje się osobno. Dlatego zamiennikiem for jest while.

Pytanie 16

Aby tworzyć strony internetowe w sposób graficzny, należy skorzystać z

A. przeglądarki internetowej
B. programu MS Office Picture Manager
C. edytora CSS
D. programu typu WYSIWYG
Korzystanie z przeglądarek internetowych do tworzenia stron internetowych jest fundamentalnie niepoprawne, ponieważ przeglądarki są narzędziami do wyświetlania stron, a nie ich tworzenia. Użytkownicy mogą jedynie przeglądać treści, które zostały już opracowane w innych aplikacjach i zamieszczone w Internecie. Również edytory CSS, choć ważne w procesie stylizowania stron, nie są wystarczające do graficznego tworzenia stron internetowych. Edytory te skupiają się jedynie na aspekcie wizualnym poprzez stylowanie elementów HTML, ale nie oferują możliwości łatwego i intuicyjnego projektowania układu strony, co jest kluczowe dla grafików i projektantów stron. Co więcej, program MS Office Picture Manager jest aplikacją do zarządzania i edytowania zdjęć, a nie do tworzenia stron internetowych. Użytkownicy mogą popełniać błąd, myśląc, że podobne programy mogą być używane do projektowania stron, jednak nie są one zaprojektowane do integracji z HTML, CSS czy JavaScript. Zrozumienie tych różnic jest kluczowe dla efektywnego tworzenia stron internetowych, które są nie tylko estetyczne, ale również funkcjonalne i zgodne z nowoczesnymi standardami.

Pytanie 17

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 18

Instrukcja REVOKE SELECT ON nazwa1 FROM nazwa2 w języku SQL pozwala na

A. odebranie uprawnień danemu użytkownikowi
B. przyznawanie praw do tabeli
C. przyznawanie uprawnień z użyciem ustalonego schematu
D. usunięcie użytkownika z bazy danych
Polecenie REVOKE SELECT ON w języku SQL jest używane do odbierania uprawnień do wykonywania operacji SELECT na określonej tabeli lub widoku dla konkretnego użytkownika lub grupy użytkowników. W przypadku użycia tej komendy, administrator bazy danych lub właściciel obiektu wskazuje, że dany użytkownik nie ma już prawa do odczytu danych z określonej tabeli, co skutkuje zablokowaniem dostępu do informacji w tej tabeli. Przykładowo, jeśli mamy tabelę 'Pracownicy' i użytkownika 'JanKowalski', polecenie REVOKE SELECT ON Pracownicy FROM JanKowalski skutkuje tym, że Jan Kowalski nie będzie mógł wykonywać zapytań typu SELECT na tej tabeli. Ważne jest, aby zrozumieć, że polecenie to nie usuwa użytkownika z bazy danych ani nie zmienia struktury bazy, a jedynie modyfikuje uprawnienia dostępu. W kontekście SQL, standardy takie jak ANSI SQL definiują sposób, w jaki uprawnienia mogą być przyznawane i odbierane, co sprawia, że umiejętność zarządzania uprawnieniami jest niezbędna dla każdego administrującego bazą danych.

Pytanie 19

W dokumencie zdefiniowano akapit <p id="jeden">Kwalifikacja INF.03</p>. Która instrukcja JavaScript zmieni kolor tekstu tego akapitu na niebieski?

A.
document.getElementById("jeden").style.background-color = "blue";
B.
document.getElementById("jeden").color = "blue";
C.
document.getElementById("jeden").background-color = "blue";
D.
document.getElementById("jeden").style.color = "blue";
Trzeba odwołać się do style i użyć poprawnej nazwy właściwości. Pominięcie style (.color wprost) nie zadziała. Zapis style.background-color jest błędny - w JS używa się style.backgroundColor (myślnik oznaczałby odejmowanie). Kolor tekstu ustawia .style.color = "blue".

Pytanie 20

Na podstawie przedstawionego kodu w języku JavaScript można powiedzieć, że alert nie zostanie wyświetlony, ponieważ

var x = 10;
switch(x) {
    case "10": alert("Test instrukcji switch");
}
A. Nie zastosowano wyrażenia default.
B. Nie zastosowano instrukcji break.
C. W instrukcji switch w wyrażeniu case nie dostosowano zapisu wartości do typu zmiennej x.
D. Wartość zmiennej x nie została zdefiniowana przed instrukcją switch.
Prawda jest taka, że zastosowanie wyrażenia default, definicja zmiennej x przed instrukcją switch oraz użycie instrukcji break nie wpływają na wyświetlenie alertu w omawianym kodzie JavaScript. Wyrażenie default w instrukcji switch służy jako gwarancja wykonania bloku kodu, gdy żaden z przypadków nie pasuje do wyrażenia switch, ale jego brak nie jest przyczyną niepojawienia się alertu. Co więcej, zmienna x jest zdefiniowana przed instrukcją switch, co jest zgodne z zasadami JavaScript. Instrukcja break służy do zakończenia pętli lub instrukcji switch i przeniesienia wykonania do następnej instrukcji po instrukcji switch lub pętli, ale nie ma ona wpływu na porównanie typów danych w instrukcji case. Rzeczywistym powodem, dla którego alert nie jest wyświetlany, jest fakt, że JavaScript używa tzw. 'strict comparison' w instrukcji case, porównując zarówno wartość, jak i typ danych, a typy danych liczby 10 i ciągu znaków '10' są różne. Dlatego jest istotne, ażeby zawsze zwracać uwagę na typy danych podczas korzystania z instrukcji switch i case w JavaScript.

Pytanie 21

Do czego służy polecenie mysqldump?

A. do utworzenia kopii zapasowej bazy
B. do naprawy niespójnej bazy
C. do sprawdzenia integralności bazy
D. do optymalizacji bazy
Pozostałe zadania wykonują inne narzędzia. Naprawą niespójnej bazy, optymalizacją i sprawdzeniem integralności zajmuje się mysqlcheck. Kopię zapasową tworzy mysqldump.

Pytanie 22

Zestawienie dwóch kolorów znajdujących się po przeciwnych stronach na kole barw stanowi zestawienie

A. monochromatycznym
B. trójkątnym
C. sąsiednim
D. dopełniającym
Wybór sąsiadujących barw oznaczałby połączenie kolorów, które leżą obok siebie na kole barw, co prowadzi do efektu harmonijnego i spokojnego, ale nie intensywnego, jak w przypadku barw dopełniających. Tego typu zestawienia są często stosowane w projektach wymagających łagodnych przejść kolorystycznych, np. w architekturze wnętrz. Monochromatyczne zestawienia, z drugiej strony, polegają na używaniu różnych odcieni, tonów lub nasycenia jednej barwy, uzyskując efekt spójności, ale bez kontrastu. Takie podejście może być stosowane w minimalistycznych projektach, ale nie wykorzystuje pełnego potencjału kontrastów. Natomiast koncepcja trójkątnych zestawień kolorystycznych odnosi się do używania trzech kolorów, które tworzą trójkąt równoboczny na kole barw, co także prowadzi do harmonii, ale niekoniecznie do dynamiki i intensywności, które charakteryzują połączenia dopełniające. Typowym błędem myślowym jest pomylenie pojęcia kontrastu z harmonią, co prowadzi do niepoprawnych wniosków o funkcji poszczególnych zestawień kolorystycznych w praktyce projektowej.

Pytanie 23

Na podstawie filmu wskaż, która cecha dodana do stylu CSS zamieni miejscami bloki aside i nav, pozostawiając w środku blok section?

A. aside {float: left; }
B. nav { float: right; }
C. nav { float: right; } section { float: right; }
D. nav { float: left; } aside { float: left; }
Prawidłowa odpowiedź opiera się na tym, jak działają własności float w CSS i w jakiej kolejności przeglądarka renderuje elementy blokowe. Jeśli w dokumencie HTML kolejność znaczników to np. &lt;aside&gt;, potem &lt;section&gt;, a na końcu &lt;nav&gt;, to bez dodatkowego stylowania wszystkie trzy ustawią się pionowo, jeden pod drugim, w tej właśnie kolejności. Dodanie float zmienia sposób, w jaki elementy „odpływają” od normalnego przepływu dokumentu i jak układają się obok siebie.

W stylu nav { float: right; } section { float: right; } sprawiamy, że zarówno nav, jak i section są przesuwane do prawej krawędzi kontenera, natomiast aside (bez float) pozostaje w normalnym przepływie, czyli z lewej strony. Ponieważ przeglądarka układa elementy w kolejności występowania w kodzie, najpierw wyrenderuje aside po lewej, potem section „odpłynie” w prawo, a na końcu nav też „odpłynie” w prawo, ustawiając się po prawej stronie, ale dalej od góry niż section. Efekt wizualny jest taki, że po lewej mamy aside, po prawej nav, a section ląduje między nimi, dokładnie tak jak było pokazane na filmie.

Moim zdaniem to zadanie dobrze pokazuje, że przy floatach zawsze trzeba myśleć o trzech rzeczach naraz: kolejności elementów w HTML, kierunku „pływania” (left/right) oraz o tym, które elementy pozostawiamy w normalnym przepływie. W praktyce w nowoczesnych projektach częściej używa się flexboxa albo CSS Grid do takich układów, bo są czytelniejsze i mniej problematyczne. Przykładowo, zamiast kombinować z float, można by użyć display: flex; na kontenerze i ustawić order dla aside i nav. Float nadal jednak pojawia się w starszych layoutach i w zadaniach egzaminacyjnych, więc warto dobrze rozumieć jego zachowanie, choćby po to, żeby poprawnie modyfikować istniejące style lub naprawiać „rozjechane” układy w starszych projektach.

Pytanie 24

Dostosowanie wyglądu witryny do indywidualnych preferencji użytkownika oraz jego identyfikacja w systemie są możliwe dzięki mechanizmowi

A. formularzy
B. obiektów DOM
C. cookie
D. łączenia z bazą
Odpowiedź dotycząca cookies jest dobra. To ważny element, bo dzięki nim można lepiej dopasować serwis do użytkowników. Cookies to takie małe pliki, które przeglądarka zapisuje na naszym urządzeniu. Pozwalają na zbieranie różnych informacji, jak na przykład co użytkownik lubi, co robi na stronie czy jego dane do logowania. Dzięki temu, gdy wracasz na stronę, serwis może sam dostosować, co widzisz, do tego, co robiłeś wcześniej. Przykłady to zapamiętywanie języka, zawartości koszyka w sklepach online czy automatyczne logowanie. Ważne jest, żeby serwisy informowały użytkowników o cookies i prosiły o zgodę, zwłaszcza w kontekście RODO. Znanie tych zasad jest istotne, jeśli myślisz o pracy w tworzeniu aplikacji webowych, bo to pomaga w lepszym zrozumieniu potrzeb użytkowników.

Pytanie 25

Do przechowywania jakich danych służy w tabeli pole typu BLOB?

A. liczb całkowitych większych od zakresu INT
B. danych logicznych, np. true
C. dużych danych binarnych, np. grafiki
D. łańcuchów znaków o nieokreślonej długości
Typ BLOB (Binary Large Object) służy do przechowywania DUŻYCH danych binarnych - np. grafiki, plików audio czy dokumentów zapisanych bezpośrednio w bazie. Trzyma surowe bajty, a nie tekst czy liczby. Dlatego BLOB przechowuje duże dane binarne.

Pytanie 26

W CSS zapisano stylizację

css
p > i {color: blue}
oznacza to, że kolorem niebieskim zostanie wyświetlony
A. pogrubiony tekst akapitu
B. wszystkie teksty nagłówków, niezależnie od formatowania
C. cały tekst akapitu, niezależnie od jego stylizacji
D. pochylony tekst akapitu
Wszystkie inne odpowiedzi są niepoprawne z kilku powodów. Izolowanie tekstu paragrafu jako całości w odpowiedzi sugeruje, że cała zawartość elementu <p> byłaby stylizowana na niebiesko, co jest błędne, ponieważ selektor CSS wskazuje na tylko konkretne elementy wewnątrz <p>, a nie na całe jego wnętrze. Tekst kursywy, oznaczony przez <i>, to specyficzna część tekstu, która jest stylizowana, a nie cały tekst paragrafu. Pogrubiony tekst, oznaczony przez <b>, również pozostanie w swoim standardowym stylu, ponieważ nie jest objęty regułą CSS. Druga odpowiedź, dotycząca całego tekstu nagłówków, również jest niepoprawna, ponieważ nagłówki, takie jak <h1>, <h2> itd., nie są w ogóle związane z tym selektorem CSS, który odnosi się wyłącznie do paragraficznych elementów <p> i ich dzieci. Wreszcie, idea, że pogrubiony tekst paragrafu miałby być zmieniony na niebieski, również nie znajduje potwierdzenia w definicji selektora. Selektor CSS, jak w tym przypadku, działa na podstawie hierarchii i struktury dokumentu, a nie na ogólnym formacie tekstu. Wyjaśniając te kwestie, możemy zrozumieć, jak działa kaskadowe stylowanie i jak precyzyjne są selektory w CSS, co jest kluczowe dla efektywnego projektowania stron internetowych.

Pytanie 27

Które wywołanie is_float() zwróci true?

A.
is_float('3,34')
B.
is_float(334)
C.
is_float(3.34)
D.
is_float(NULL)
Funkcja is_float() zwraca true tylko dla liczby ZMIENNOPRZECINKOWEJ, a w kodzie część dziesiętną oddziela KROPKA - dlatego is_float(3.34) da true.

Pytanie 28

W języku PHP tablice asocjacyjne to tablice, w których

A. w każdej komórce tablicy przechowywana jest inna tablica.
B. istnieją przynajmniej dwa wymiary.
C. elementy tablicy są zawsze indeksowane od liczby równej 0.
D. indeks jest dowolnym napisem.
W PHP pojęcie tablicy asocjacyjnej bywa mylone z kilkoma innymi konstrukcjami, dlatego łatwo wpaść w pułapkę skojarzeń. Tablica asocjacyjna nie ma nic wspólnego z liczbą wymiarów – fakt, że jakaś tablica jest wielowymiarowa (np. tablica tablic), wcale nie oznacza, że jest asocjacyjna. Możesz mieć tablicę dwuwymiarową z indeksami czysto numerycznymi i będzie to po prostu zwykła tablica indeksowana liczbami, tylko zagnieżdżona. Sam „wymiar” dotyczy struktury zagnieżdżenia, a nie sposobu adresowania elementów. Podobnie nie jest prawdą, że w tablicy asocjacyjnej w każdej komórce musi być inna tablica. To jest raczej opis tablicy zagnieżdżonej (np. do reprezentowania wierszy i kolumn), a nie definicja tablicy asocjacyjnej. Elementem tablicy asocjacyjnej może być cokolwiek: liczba, string, obiekt, null, inna tablica – ale to, co ją wyróżnia, to klucze tekstowe, a nie typ przechowywanych wartości. Kolejne typowe nieporozumienie to przekonanie, że elementy w tablicy zawsze są indeksowane od zera. W wielu językach (np. w C, Javie) rzeczywiście tablice „klasyczne” startują od indeksu 0, więc łatwo to nawykowo przenieść do PHP. Natomiast PHP jest pod tym względem bardziej elastyczny: możesz mieć tablicę z kluczami 0, 1, 2, ale możesz też mieć klucze 'imie', 'email' albo nawet mieszane – częściowo numeryczne, częściowo tekstowe. W tablicy asocjacyjnej klucz jest wartością logicznie opisującą dany element, a nie tylko kolejnym numerem pozycji. Z mojego doświadczenia wynika, że wiele błędów w kodzie bierze się z tego, że ktoś traktuje tablicę asocjacyjną jak „zwykłą tablicę od zera”, a potem odwołuje się do nieistniejących indeksów numerycznych. Dobra praktyka to świadome korzystanie z kluczy, nadawanie im sensownych nazw i pamiętanie, że w PHP tablica asocjacyjna to po prostu struktura klucz → wartość, gdzie kluczem bardzo często jest właśnie napis, a nie liczba.

Pytanie 29

Podaj zapytanie SQL, które tworzy użytkownika sekretarka na localhost z hasłem zaq123

CREATE USER `sekretarka`@`localhost` IDENTIFY "zaq123"; 
A. CREATE USER `sekretarka`@`localhost` IDENTIFY BY `zaq123`
B. CREATE USER `sekretarka`@`localhost` IDENTIFY "zaq123"
C. CREATE USER 'sekretarka'@'localhost' IDENTIFIED `zaq123`
D. CREATE USER `sekretarka`@`localhost` IDENTIFIED BY 'zaq123'
Użycie nieprawidłowych składni w zapytaniach SQL może prowadzić do nieporozumień i błędów w konfiguracji użytkowników. W przypadku podanych błędnych odpowiedzi, brak użycia frazy 'IDENTIFIED BY' z odpowiednio umieszczonym hasłem w pojedynczych cudzysłowach jest kluczowym błędem. Na przykład, w jednym z przypadków zastosowano słowo 'IDENTIFY', które jest niepoprawne i nie jest częścią składni SQL dla tworzenia użytkowników. Różnice w użyciu pojedynczych cudzysłowów i backticks również mają znaczenie; backticks są używane do oznaczania nazw obiektów w SQL, podczas gdy hasła powinny być otoczone pojedynczymi cudzysłowami. Ponadto, znaki takie jak ` zaq123` w niektórych odpowiedziach sugerują mylne zrozumienie zasad definiowania danych tekstowych w SQL. Niepoprawne podejście do tworzenia użytkowników może skutkować problemami w zakresie bezpieczeństwa, ponieważ niewłaściwie skonfigurowani użytkownicy mogą uzyskiwać nieautoryzowany dostęp do systemów. Właściwe zrozumienie składni SQL oraz terminologii jest kluczowe do skutecznego zarządzania bazami danych i zapewnienia odpowiedniego poziomu ochrony informacji.

Pytanie 30

Przypisanie wartości do zmiennej $dana = 125; zapisane jest w języku

A. JavaScript
B. Python
C. C++
D. PHP
Zapis $dana = 125; na pierwszy rzut oka może wyglądać jak zwykłe przypisanie znane z wielu języków, ale kluczowy jest tutaj znak dolara przed nazwą zmiennej. Właśnie ten prefiks odróżnia PHP od takich języków jak C++, Python czy czysty JavaScript. W tych trzech technologiach zmienne nie są oznaczane znakiem $, albo używa się go w zupełnie innym kontekście.
W C++ standardowa deklaracja zmiennej liczbowej wygląda np. tak: int dana = 125; lub auto dana = 125;. Trzeba podać typ (lub pozwolić kompilatorowi go wywnioskować), a nazwa zmiennej nie ma żadnego prefiksu. Zapis ze znakiem $ nie jest zgodny ze składnią C++ i zwyczajnie się nie skompiluje. Błąd myślowy często wynika z tego, że ktoś kojarzy średnik na końcu i myśli: „aha, to pewnie C++ albo coś podobnego”, ale sam średnik to za mało, żeby poprawnie zidentyfikować język.
W Pythonie sytuacja jest odwrotna: nie ma średników na końcu linii (są opcjonalne i praktycznie się ich nie używa), a nazwy zmiennych absolutnie nie mogą zaczynać się od $. Poprawny zapis w Pythonie to po prostu dana = 125. Python mocno stawia na czytelność i prostotę składni, dlatego takie ozdobniki jak $ są tam całkowicie zbędne. Wiele osób, które zaczynają przygodę z programowaniem webowym, myli Pythona z PHP, bo oba są dynamicznie typowane, ale składnia zmiennych jest zupełnie inna.
JavaScript też nie używa $ jako obowiązkowego prefiksu. Co prawda $ może być częścią nazwy zmiennej (np. w jQuery: var $elem = $('#id');), ale nie jest to stały wymóg języka. Kluczowe jest to, że w nowoczesnym JavaScript zmienne deklarujemy przez let, const albo var: let dana = 125;. Samo $dana = 125; bez słowa kluczowego też jest formalnie możliwe w trybie nie–strict, ale jest to uznawane za bardzo złą praktykę, bo tworzy zmienną globalną i nie wygląda jak typowy, poprawny fragment kodu z dokumentacji czy podręczników. W kontekście tego pytania chodzi o rozpoznanie charakterystycznej składni, a nie o sztuczne przykłady z błędami.
Typowy błąd przy takich zadaniach polega na tym, że ktoś skupia się tylko na jednym elemencie składni, np. na średniku, i ignoruje resztę. W programowaniu webowym warto patrzeć na całość: prefiksy, słowa kluczowe, styl zapisu. Wzorzec $zmienna = wartość; jest bardzo mocno związany z PHP i to właśnie pozwala poprawnie zaklasyfikować ten fragment kodu.

Pytanie 31

W CSS właściwość font-size może przyjmować wartości według słów kluczowych

A. jedynie big i smali
B. z zestawu xx-small, x-small, smali, medium, large, x-large, xx-large
C. wyłącznie smali, medium, large
D. tylko smali, smaller, large, larger
Zrozumienie różnych wartości, które mogą być zastosowane w właściwości font-size, jest kluczowe dla efektywnego stylizowania tekstu w CSS. Pierwsza z nieprawidłowych odpowiedzi ogranicza się do zaledwie czterech terminów: smali, smaller, large oraz larger, co jest niewłaściwe, ponieważ właściwość font-size posiada znacznie szerszy zestaw wartości. Warto zauważyć, że 'smaller' oraz 'larger' są względnymi jednostkami, które odnoszą się do rozmiaru czcionki elementu nadrzędnego, a nie są one samodzielnymi wartościami słownikowymi. Dodatkowo, w odpowiedzi mowa jest o 'medium' i 'large', ale pomija się inne ważne terminy. Utrata kontekstu tych wartości prowadzi do ograniczonego zrozumienia typografii w web designie. Następna błędna odpowiedź zawiera jedynie trzy wartości: smali, medium i large, co nie pokrywa pełnego zestawu opcji dostępnych w CSS. Można zauważyć, że brak uwzględnienia pozostałych terminów, takich jak xx-small czy x-large, ogranicza możliwości projektanta w zakresie elastyczności i precyzji stylizacji tekstu. Tego rodzaju niedopatrzenie może prowadzić do niejednolitego wyglądu tekstów na różnych urządzeniach. Ostatnia fałszywa odpowiedź, która sugeruje, że font-size może przyjmować tylko wartości big i smali, jest całkowicie błędna. 'Big' nie jest uznawane za standardową wartość w CSS, co pokazuje brak zrozumienia podstawowych zasad dotyczących typografii. Przykłady te ilustrują, jak ważne jest zapoznanie się z pełnym zakresem opcji dostępnych w CSS oraz jak niewłaściwe interpretacje mogą prowadzić do nieefektywnego stylizowania elementów tekstowych.

Pytanie 32

Jaką wiadomość należy umieścić w przedstawionym fragmencie kodu PHP zamiast znaków zapytania? $a=mysql_connect('localhost','adam','mojeHasło'); if(!$a) echo "?????????????????????????";

A. Błąd w przetwarzaniu zapytania SQL
B. Błąd połączenia z serwerem SQL
C. Wybrana baza danych nie istnieje
D. Rekord został pomyślnie dodany do bazy
Wybranie innej opcji niż 'Błąd połączenia z serwerem SQL' jest mylne, ponieważ każda z tych odpowiedzi nie odnosi się do kontekstu błędu połączenia z bazą danych. Stwierdzenie 'Wybrana baza nie istnieje' sugeruje, że połączenie z serwerem SQL zostało nawiązane, ale nie udało się znaleźć konkretnej bazy danych. W rzeczywistości jednak błąd przy próbie połączenia z serwerem SQL jest czymś innym, ponieważ w momencie, gdy połączenie się nie udaje, nie można jeszcze mówić o istnieniu czy nieistnieniu bazy. Kolejna opcja, 'Pomyślnie dodano rekord do bazy', jest oczywiście błędna, ponieważ w przypadku braku połączenia nie ma możliwości dodania jakiegokolwiek rekordu. Ta odpowiedź myli koncepcję pomyślnego wykonania operacji z brakiem połączenia z bazą danych. Ostatecznie, 'Błąd przetwarzania zapytania SQL' również jest niepoprawny w tym kontekście, ponieważ odnosi się do sytuacji, w której połączenie z bazą danych zostało nawiązane, ale zapytanie SQL nie mogło zostać przetworzone z powodu błędów składniowych, braku uprawnień lub innych problemów. Jednak w przypadku problemu z połączeniem nie dochodzi nawet do etapu przetwarzania zapytania, co czyni tę odpowiedź nieadekwatną.

Pytanie 33

Styl ten generuje pojedyncze obramowanie, które charakteryzuje się następującymi właściwościami:

border: solid 1px;
border-color: red blue green yellow;
A. krawędź górna jest czerwonego koloru, krawędź lewa jest w kolorze niebieskim, krawędź dolna ma kolor zielony, krawędź prawa ma kolor żółty
B. krawędź lewa ma kolor czerwony, krawędź dolna jest w kolorze niebieskim, krawędź prawa jest koloru zielonego, krawędź górna ma kolor żółty
C. krawędź górna ma kolor czerwony, krawędź prawa jest w kolorze niebieskim, krawędź dolna ma kolor zielony, krawędź lewa jest koloru żółtego
D. krawędź prawa jest koloru czerwonego, krawędź dolna ma kolor niebieski, krawędź lewa ma kolor zielony, krawędź górna ma kolor żółty
Błędne zrozumienie przypisania kolorów do krawędzi obramowania w CSS wynika z niewłaściwego interpretowania kolejności, w jakiej te kolory są przypisywane. W standardach CSS, kiedy używamy składni takiej jak border-color: red blue green yellow; kolory są przypisywane zaczynając od krawędzi górnej, a następnie zgodnie z kierunkiem wskazówek zegara. Stąd czerwona krawędź to górna, niebieska to prawa, zielona to dolna, a żółta to lewa. Błędne odpowiedzi wynikają z niepoprawnego przypisania kolorów do krawędzi w innej kolejności. Typowym błędem jest myślenie, że kolory są przypisane w porządku lewa-prawa-dół-góra, co jest sprzeczne z domyślną kolejnością CSS. Bez poprawnego zrozumienia tej logiki, projektanci mogą doświadczyć trudności w przewidywaniu jakich efektów wizualnych oczekiwać od swojej pracy, co może prowadzić do błędów w projektach. Aby uniknąć takich problemów, kluczowe jest zapoznanie się i zrozumienie zasad określających jak style CSS są interpretowane przez przeglądarki, co pozwala na pełne wykorzystanie możliwości jakie oferują style kaskadowe. Poprawne stosowanie tych zasad jest niezbędne do tworzenia profesjonalnych i spójnych projektów internetowych, które są zgodne z najlepszymi praktykami w branży.

Pytanie 34

W języku PHP, podczas pracy z bazą danych MySQL, aby zakończyć sesję z bazą, powinno się użyć

A. mysqli_close()
B. mysqli_commit()
C. mysqli_rollback()
D. mysqli_exit( )
Odpowiedź 'mysqli_close()' jest poprawna, ponieważ ta funkcja służy do zamykania połączenia z bazą danych MySQL w PHP. Po zakończeniu operacji na bazie danych ważne jest, aby zwolnić zasoby, zwłaszcza w aplikacjach, które mogą otwierać wiele połączeń. Funkcja ta nie przyjmuje żadnych argumentów i jest niezwykle istotna, aby uniknąć wycieków pamięci oraz zapewnić, że wszystkie zasoby są odpowiednio zarządzane. Przykładowo, po zakończeniu wykonywania skryptu, który pobiera dane z bazy, można użyć mysqli_close($connection), gdzie $connection jest wcześniej utworzonym połączeniem. Zgodnie z najlepszymi praktykami programistycznymi, powinno się zamykać połączenia w momencie, gdy nie są już potrzebne. Należy również pamiętać, że pozostawienie otwartego połączenia może prowadzić do ograniczenia liczby dostępnych połączeń w serwerze MySQL, co w dłuższej perspektywie może wpływać na wydajność aplikacji.

Pytanie 35

Utworzono bazę danych z tabelą mieszkańcy, która zawiera pola: nazwisko, imię oraz miasto. Następnie przygotowano poniższe zapytanie do bazy:
SELECT nazwisko, imie FROM mieszkańcy WHERE miasto='Poznań' UNION ALL SELECT nazwisko, imie FROM mieszkańcy WHERE miasto='Kraków';
Wskaż zapytanie, które zwróci takie same dane.

A. SELECT nazwisko, imie FROM mieszkańcy WHERE miasto HAVING 'Poznań' OR 'Kraków';
B. SELECT nazwisko, imie FROM mieszkańcy AS 'Poznań' OR 'Kraków';
C. SELECT nazwisko, imie FROM mieszkańcy WHERE miasto BETWEEN 'Poznań' OR 'Kraków';
D. SELECT nazwisko, imie FROM mieszkańcy WHERE miasto='Poznań' OR miasto='Kraków';
Wybór błędnych odpowiedzi wynika z nieprawidłowego zrozumienia podstawowych zasad użycia operatorów w SQL oraz sposobu, w jaki warunki filtracji danych powinny być konstruowane. Zapytanie, które wykorzystuje BETWEEN, jest stosowane do porównywania wartości w określonym zakresie, ale w tym przypadku nie jest możliwe wskazanie dwóch różnych wartości, jak w przypadku miast. Operator OR w kontekście BETWEEN nie ma zastosowania, co sprawia, że ta koncepcja jest fundamentalnie błędna. Z drugiej strony, użycie HAVING jest niewłaściwe, ponieważ służy do filtrowania wyników po agregacji danych, a nie do bezpośredniej filtracji na podstawie wartości. Dodatkowo, konstrukcja SELECT z aliasem 'Poznań' OR 'Kraków' jest syntaktycznie niepoprawna, ponieważ operator OR nie może być użyty w tym kontekście. Typowym błędem w myśleniu jest mylenie operatorów logicznych i ich zastosowania w różnych kontekstach zapytań SQL. Zrozumienie, kiedy używać WHERE, HAVING oraz jak działa składnia zapytań, jest kluczowe dla poprawnego pisania i optymalizacji zapytań baz danych.

Pytanie 36

Które z poniższych stwierdzeń dotyczących klucza głównego jest poprawne?

A. Może przyjmować tylko wartości numeryczne
B. W tabeli z danymi osobowymi może to być pole z nazwiskiem
C. Składa się wyłącznie z jednego pola
D. Jest unikalny w obrębie tabeli
Koncepcje związane z kluczem podstawowym obejmują kilka podstawowych zasad, które są niezbędne do zrozumienia jego roli w bazie danych. Klucz podstawowy nie ogranicza się tylko do unikalności, ale również musi zapewniać integralność danych i być stosowany w praktyce w sposób przemyślany. Wiele osób myli klucz podstawowy z pojęciem pola, co prowadzi do błędnych wniosków, że składa się on jedynie z jednego atrybutu. W rzeczywistości klucz podstawowy może być złożony z kilku atrybutów, co jest typowe w bardziej złożonych systemach, gdzie żaden pojedynczy atrybut nie jest w stanie zapewnić unikalności. Ponadto, ograniczenie klucza podstawowego do wartości liczbowych jest mylące. Klucze podstawowe mogą mieć różne typy danych, w tym tekstowe czy alfanumeryczne, w zależności od kontekstu i wymagań aplikacji. Przykład błędnego podejścia to uznanie nazwiska za klucz podstawowy w tabeli z danymi osobowymi. Takie podejście jest problematyczne, ponieważ nazwiska mogą być powtarzalne w populacji, co skutkuje utratą unikalności – klucz podstawowy musi być jednoznaczny w obrębie danej tabeli. Przy projektowaniu baz danych stosuje się zasady normalizacji, które podkreślają znaczenie kluczy podstawowych w kontekście integralności danych oraz efektywności operacji na tych danych.

Pytanie 37

Aby nadać użytkownikowi uprawnienia do tabel w bazie danych, należy zastosować polecenie:

A.
REVOKE
B.
CREATE
C.
GRANT
D.
SELECT
Uprawnienia do tabel nadaje się poleceniem GRANT. Należy ono do języka kontroli danych DCL, który decyduje, kto i co może robić w bazie. Budowa polecenia jest czytelna: po GRANT wymieniasz rodzaje uprawnień, po ON wskazujesz tabelę, a po TO - użytkownika, na przykład GRANT SELECT, INSERT ON klienci TO jan. Dzięki temu administrator precyzyjnie ustala, kto ma dostęp do danych i jakie operacje może na nich wykonać. Poleceniem odwrotnym, które cofa przyznane prawa, jest REVOKE.

Pytanie 38

Jaką relację typu uzyskuje się w wyniku powiązania kluczy głównych dwóch tabel?

A. jeden do wielu
B. jeden do jednego
C. wiele do wielu
D. wiele do jednego
Odpowiedź „jeden do jednego” jest poprawna, ponieważ relacja typu jeden do jednego oznacza, że każdy rekord w jednej tabeli jest powiązany z dokładnie jednym rekordem w drugiej tabeli. Tego rodzaju relacje są często wykorzystywane w sytuacjach, gdzie istnieje potrzeba rozdzielenia danych w celu zwiększenia organizacji lub wydajności, na przykład w przypadku wrażliwych informacji, które są przechowywane oddzielnie od podstawowych danych użytkowników. Praktycznym przykładem może być relacja między tabelą użytkowników a tabelą profili, gdzie każdy użytkownik ma dokładnie jeden profil. W dobrych praktykach projektowania baz danych, takie relacje są stosowane, aby zapewnić integralność danych oraz umożliwić skuteczne zarządzanie informacjami w systemach. Ponadto, stosowanie relacji jeden do jednego może pomóc w optymalizacji zapytań, ponieważ zminimalizowane jest ryzyko duplikacji danych, co przyczynia się do efektywniejszego przetwarzania operacji w bazach danych.

Pytanie 39

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

A. :active
B. :hover
C. :coursor
D. :visited
: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 40

Aby obraz umieszczony na stronie internetowej mógł automatycznie dostosowywać się do rozmiaru ekranu, na którym jest prezentowana strona, trzeba

A. nie zmieniać obu jego wymiarów za pomocą stylów CSS
B. jeden z jego wymiarów określić w pikselach
C. jego szerokość ustawić w wartościach procentowych
D. oba jego wymiary ustawić w pikselach
Ustawienie szerokości obrazu w wartościach procentowych jest kluczowe dla zapewnienia responsywności strony internetowej. Gdy szerokość obrazu wyrażona jest w procentach, automatycznie dostosowuje się ona do szerokości kontenera, w którym się znajduje. To oznacza, że obraz będzie skalował się do rozmiaru ekranu użytkownika, co jest szczególnie ważne w kontekście urządzeń mobilnych oraz różnych rozdzielczości ekranów. Przykładem może być użycie stylu CSS: `img { width: 100%; height: auto; }`, co pozwala na zachowanie proporcji obrazu, jednocześnie dostosowując jego szerokość do kontenera. Tego rodzaju praktyki są zgodne z zasadami responsywnego projektowania (Responsive Web Design) i są zalecane przez standardy W3C. Dzięki takim rozwiązaniom użytkownik zyskuje lepsze doświadczenie, a strona wygląda estetycznie na różnych urządzeniach. Dobrą praktyką jest również testowanie strony na różnych ekranach, aby upewnić się, że wszystkie obrazy i inne elementy dostosowują się do zmieniających się warunków wyświetlania.