Wyniki egzaminu

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

Egzamin zdany!

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

Atrybut colspan służy do poziomego łączenia komórek tabeli, natomiast rowspan pozwala na łączenie ich w pionie. Którą z poniższych tabel ukazuje fragment kodu napisany w języku HTML?
<table border="1" cellspaing="0" cellpadding="10" >
<tr> <td rowspan="2"> </td> <td> </td> </tr>
<tr> <td> </td> </tr>
</table>

Ilustracja do pytania
A. rys. C
B. rys. A
C. rys. B
D. rys. D
W języku HTML atrybut rowspan w znaczniku <td> pozwala na scalanie komórek w pionie co oznacza że dana komórka zajmuje miejsce w kilku wierszach tabeli W podanym kodzie pierwsza komórka w pierwszym wierszu posiada atrybut rowspan z wartością 2 co sprawia że zajmuje ona miejsce w dwóch wierszach Pierwszy wiersz zawiera dwie komórki z czego pierwsza jest połączona pionowo z komórką w drugim wierszu Druga komórka w pierwszym wierszu oraz jedyna komórka w drugim wierszu nie posiadają atrybutu rowspan ani colspan dlatego nie są połączone z innymi komórkami Takie użycie rowspan jest zgodne z praktykami HTML które umożliwiają tworzenie bardziej złożonych układów tabeli dzięki czemu można lepiej zarządzać przestrzenią w interfejsie użytkownika Jako że kod tworzy tabelę z dwiema kolumnami i dwoma wierszami gdzie pierwsza komórka po lewej stronie zajmuje dwa wiersze przedstawia to układ jak na rysunku B Możliwości jakie daje rowspan są niezwykle przydatne w sytuacjach gdy chcemy aby dane w tabeli były czytelniejsze i bardziej zorganizowane szczególnie w raportach czy formularzach gdzie różne kategorie danych muszą być jasno oddzielone

Pytanie 2

Plik HTML jest w folderze www/html/, a styl.css w www/style/. Jak poprawnie (ścieżką względną) dołączyć arkusz w pliku HTML?

A.
<link rel="stylesheet" href="styl.css">
B.
<link rel="stylesheet" href="style/styl.css">
C.
<link rel="stylesheet" href="../style/styl.css">
D.
<link rel="stylesheet" href="www/style/styl.css">
Pozostałe ścieżki szukają arkusza w złym miejscu. href="styl.css" oczekuje pliku w tym samym folderze co HTML (html/), gdzie go nie ma. href="style/styl.css" szukałby podfolderu style/ wewnątrz html/. href="www/style/styl.css" liczy ścieżkę tak, jakby HTML był w korzeniu. Do celu prowadzi tylko cofnięcie się przez ../style/styl.css.

Pytanie 3

Która funkcja SQL zwraca DŁUGOŚĆ (liczbę znaków) tekstu?

A.
NOW
B.
UPPER
C.
LEN
D.
YEAR
Długość tekstu (liczbę znaków) zwraca funkcja LEN (w MS SQL) lub LENGTH (w MySQL), np. LEN('Ala') da 3. Dlatego liczbę znaków zwraca LEN.

Pytanie 4

Wskaż kod CSS odpowiadający układowi bloków 2 - 5, zakładając, że są one zbudowane w oparciu o przedstawiony kod HTML.

BLOK 1
BLOK 2BLOK 3BLOK 4
BLOK 5
<div id="pierwszy">BLOK 1</div>
<div id="drugi">BLOK 2</div>
<div id="trzeci">BLOK 3</div>
<div id="czwarty">BLOK 4</div>
<div id="piaty">BLOK 5</div>

Kod 1.
#drugi {
  float: left;
  width: 40%;
}
#trzeci {
  float: left;
  width: 30%;
}
#czwarty {
  float: right;
  width: 30%;
}
#piaty {
  clear: both;
  width: 30%;
}
Kod 2.
#drugi {
  float: left;
  width: 40%;
}
#trzeci {
  float: left;
  width: 30%;
}
#czwarty {
  float: right;
  width: 30%;
}
#piaty {
  float: left;
  width: 30%;
}
Kod 3.
#drugi {
  float: left;
  width: 40%;
}
#trzeci {
  float: left;
  width: 30%;
}
#czwarty {
  width: 30%;
}
#piaty {
  float: right;
  width: 30%;
}
Kod 4.
#drugi {
  float: left;
  width: 40%;
}
#trzeci {
  width: 30%;
}
#czwarty {
  width: 30%;
}
#piaty {
  float: right;
  width: 30%;
}
A. Kod 4.
B. Kod 2.
C. Kod 1.
D. Kod 3.
Niestety, twoja odpowiedź jest niepoprawna. Wybrałeś odpowiedź niezgodną z przedstawionym układem bloków. Analizując kod CSS, musisz zwrócić uwagę na różne aspekty, takie jak pozycja, szerokość i kolejność bloków. W tym przypadku, blok 'drugi' powinien być umieszczony po lewej stronie i zajmować 40% szerokości, bloki 'trzeci' i 'czwarty' powinny być odpowiednio po lewej i prawej stronie z szerokością 30%, a blok 'piąty' powinien być umieszczony na dole i zajmować 30% szerokości. To wszystko odpowiada układowi bloków na diagramie. Jeżeli wybrałeś inny kod, to prawdopodobnie źle zinterpretowałeś pozycję lub szerokość bloków, co jest kluczowe w tworzeniu układów stron. Ważne jest, aby zrozumieć i umieć manipulować kodem CSS, aby uzyskać pożądany układ strony. Pamiętaj, że praktyka i doświadczenie są kluczowe do zrozumienia jak kod CSS wpływa na układ i stylizację elementów strony.

Pytanie 5

Którego słowa kluczowego w językach z rodziny C używa się, aby nadać istniejącemu typowi danych alternatywną nazwę?

A.
union
B.
switch
C.
enum
D.
typedef
Pozostałe słowa kluczowe robią co innego. enum definiuje typ wyliczeniowy - zbiór nazwanych stałych całkowitych. union tworzy unię, czyli strukturę, której pola dzielą ten sam obszar pamięci. switch to instrukcja sterująca wybierająca gałąź wykonania w zależności od wartości - nie ma związku z definiowaniem typów. Nadanie istniejącemu typowi nowej nazwy umożliwia typedef, dlatego ta odpowiedź jest poprawna.

Pytanie 6

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

A. nav { float: left; } aside { float: left; }
B. nav { float: right; } section { float: right; }
C. nav { float: right; }
D. aside {float: left; }
W tym zadaniu kluczowe jest zrozumienie, jak naprawdę działa float, a nie tylko samo skojarzenie, że „left to lewo, right to prawo”. Wiele osób myśli, że wystarczy ustawić jeden element na lewo, drugi na prawo i wszystko magicznie się poukłada. W praktyce przeglądarka trzyma się bardzo konkretnych reguł: najpierw liczy kolejność elementów w HTML, potem dopiero stosuje float i układa je możliwie jak najwyżej i jak najbliżej odpowiedniej krawędzi.

Jeśli nada się float tylko dla aside albo tylko dla nav, to zmienia się ich pozycja, ale układ trzech bloków nie spełni warunku z zadania: aside i nav nie zamienią się miejscami z pozostawieniem section w środku. Przykładowo, samo float: left na aside niczego nie „zamieni”, bo element i tak pojawia się jako pierwszy w kodzie, więc będzie u góry, tylko że „przyklejony” do lewej. Z kolei ustawienie nav na prawą stronę bez odpowiedniego floatowania section prowadzi do sytuacji, gdzie section nadal zachowuje się jak normalny blok, zwykle ląduje pod elementami pływającymi albo obok nich w sposób mało przewidywalny dla początkującego.

Częsty błąd myślowy polega też na tym, że ktoś próbuje wszystkim elementom dać float: left, licząc na to, że przeglądarka „ułoży je po swojemu”. Wtedy jednak wszystkie te bloki ustawiają się w jednym kierunku, w kolejności z HTML, więc nie ma mowy o świadomym „zamienianiu miejsc”. Brak zrozumienia, że float wyjmuje element z normalnego przepływu i wpływa na to, jak kolejne elementy zawijają się wokół niego, prowadzi właśnie do takich błędnych odpowiedzi. Z mojego doświadczenia lepiej jest najpierw narysować sobie prosty schemat: w jakiej kolejności idą znaczniki i które z nich mają pływać w prawo, a które zostać w naturalnym układzie. Dopiero wtedy dobiera się konkretne deklaracje CSS. Takie myślenie przydaje się nie tylko przy float, ale też przy nauce flexboxa czy grida, gdzie kolejność w DOM i własności układu też grają ogromną rolę.

Pytanie 7

W HTML informacje o autorze, streszczeniu oraz słowach kluczowych strony powinny być umieszczone

A. pomiędzy znacznikami <head> i </head>, w znaczniku <style>
B. pomiędzy znacznikami <head> i </head>, w znaczniku <meta>
C. pomiędzy znacznikami <body> i </body>, w znaczniku <meta>
D. pomiędzy znacznikami <body> i </body>, w znaczniku <html>
W HTML kluczowe informacje, takie jak autor, streszczenie i słowa kluczowe, powinny być umieszczone między znacznikami <head> i </head>. Te znaczniki <meta> są naprawdę ważne, bo to one informują przeglądarki i wyszukiwarki o tym, co jest w Twojej stronie. Na przykład, znaczniki <meta name="description" content="Opis strony"> oraz <meta name="keywords" content="słowo1, słowo2, słowo3">. Dzięki tym danym, wyszukiwarki lepiej rozumieją, o czym jest strona, co może wpłynąć na jej pozycję w wynikach wyszukiwania. Moim zdaniem, dobrze przemyślane opisy i słowa kluczowe to klucz do sukcesu, bo to one przyciągają użytkowników do kliknięcia w Twój link. Pamiętaj też, że znacznik <title> i inne meta tagi w <head> są mega istotne dla SEO. Informacje te tworzą podstawy Twojego dokumentu HTML, więc warto je dobrze wypełnić, żeby strona działała jak należy.

Pytanie 8

SELECT ocena FROM oceny WHERE ocena > 2 ORDER BY ocena;
Załóżmy, że istnieje tabela oceny zawierająca kolumny id, nazwisko, imię oraz ocena. Przykładowe zapytanie ilustruje:
A. selekcję.
B. łączenie.
C. rekurencję.
D. sumę.
Zapytanie SQL przedstawione w pytaniu jest przykładem selekcji ponieważ wykorzystuje klauzulę WHERE do filtrowania danych. Selekcja w kontekście baz danych oznacza wybieranie konkretnych wierszy z tabeli które spełniają określone kryteria. W tym przypadku kryterium to ocena większa niż 2. Takie podejście jest bardzo powszechne i użyteczne w analizie danych pozwalając na uzyskanie tylko istotnych informacji spośród dużych zbiorów danych. Klauzula WHERE jest jednym z podstawowych narzędzi SQL wykorzystywanym w praktycznie każdym systemie zarządzania bazami danych jak MySQL PostgreSQL czy Oracle. Umożliwia ona tworzenie elastycznych i złożonych zapytań które mogą zawierać różnorodne warunki logiczne takie jak porównania czy wyrażenia regularne. Dobre praktyki w zakresie projektowania baz danych zalecają używanie selekcji do ograniczania ilości przetwarzanych danych co zwiększa wydajność systemów. Zrozumienie mechanizmu selekcji jest kluczowe dla skutecznego zarządzania i optymalizacji baz danych szczególnie w projektach o dużej skali.

Pytanie 9

Aby prawidłowo utworzyć relację typu m:n nienarażoną na redundancję danych, należy:

A. bezpośrednio połączyć klucze obce obu tabel
B. utworzyć tabelę pośredniczącą (łączącą)
C. bezpośrednio połączyć klucze główne obu tabel
D. uporządkować przynajmniej jedną z tabel
Relacji typu m:n (wiele do wielu) nie da się poprawnie odwzorować, łącząc dwie tabele bezpośrednio - kończy się to powielaniem danych. Rozwiązaniem jest tabela pośrednicząca (łącząca, asocjacyjna), która zawiera klucze obce wskazujące na obie tabele. Dzięki niej relacja m:n rozkłada się na dwie relacje typu 1:n, a każde powiązanie zapisujemy jako pojedynczy wiersz w tabeli łączącej. Taki model jest zgodny z normalizacją i nie wprowadza redundancji - dlatego poprawna jest tabela pośrednicząca.

Pytanie 10

Jaką złożoność obliczeniową ma algorytm wyszukiwania elementu w nieposortowanej tablicy jednowymiarowej?

A. kwadratową, O(n²)
B. liniową, O(n)
C. silnia, O(n!)
D. stała, O(1)
W nieposortowanej tablicy nie ma porządku, który pozwoliłby pominąć część elementów, więc element szuka się przeglądając kolejne pozycje (wyszukiwanie liniowe). W najgorszym przypadku trzeba sprawdzić wszystkie n elementów, dlatego złożoność wynosi O(n) - liniowa. Dlatego poprawna jest złożoność liniowa, O(n).

Pytanie 11

W dziedzinie grafiki komputerowej termin kanał alfa odnosi się do

A. koloryzacji
B. barwienia
C. przezroczystości
D. pikselizacji
Kanał alfa jest kluczowym elementem w grafice komputerowej, który odpowiada za reprezentowanie przezroczystości pikseli w obrazie. W praktyce oznacza to, że każdy piksel w obrazie może mieć przypisany poziom przezroczystości, co pozwala na tworzenie efektów takich jak cieniowanie, nakładanie różnych warstw oraz efekty specjalne. Kanał alfa jest zwykle reprezentowany jako dodatkowy kanał w formacie RGBA, gdzie R, G, i B oznaczają odpowiednio kolory czerwony, zielony i niebieski, a A to kanał alfa, który definiuje stopień przezroczystości. Na przykład, w przypadku edytorów graficznych, takich jak Adobe Photoshop, użytkownicy mogą łatwo manipulować przezroczystością warstw, co jest bardzo przydatne w procesie tworzenia złożonych kompozycji. W standardach graficznych, takich jak OpenGL i DirectX, kanał alfa również odgrywa istotną rolę w renderowaniu obiektów 3D, umożliwiając realistyczne efekty wizualne. Zrozumienie działania kanału alfa jest niezbędne dla artystów cyfrowych i projektantów, aby w pełni wykorzystać możliwości, jakie oferuje nowoczesna grafika komputerowa.

Pytanie 12

Jaką cechę pola w tabeli należy ustalić, aby pole mogło przyjmować wyłącznie dane składające się z cyfr?

Ogólne
Rozmiar pola255
Format
Maska wprowadzania
Tytuł
Wartość domyślna
Reguła spr. poprawności
Tekst reguły spr. poprawności
WymaganeNie
Zerowa dł. dozwolonaTak
IndeksowaneNie
Kompresja UnicodeTak
Tryb IMEBez formantu
Tryb zdania edytora IMEBrak
Tagi inteligentne
A. Regułę sprawdzania poprawności
B. Maskę wprowadzania
C. Tagi inteligentne
D. Wartość domyślną
Maska wprowadzania to coś, co bardzo ułatwia życie, zwłaszcza w systemach baz danych i aplikacjach. Dzięki niej możemy dokładnie określić, jakie znaki mogą być wpisywane w dane pole, co jest szczególnie przydatne, gdy potrzebujemy tylko cyfr. Wyobraź sobie, że musisz wpisać numer telefonu – to właśnie wtedy maska pokazuje, że możesz wpisać tylko cyfry i może nawet dodać myślniki dla lepszej estetyki. To dobry sposób na ograniczenie błędów, bo nikt nie będzie miał okna do wpisania literek, których nie powinno być. W praktyce, jeżeli projektujesz coś jak formularze online, to maseczki wprowadzania są bardzo fajne, bo zabezpieczają dane przed wprowadzeniem czegokolwiek, co nie pasuje. Możesz je łatwo zaimplementować w językach programowania jak C# czy JavaScript przy pomocy wyrażeń regularnych albo gotowych komponentów UI. Dobrze zaprojektowane maski wprowadzania pomagają też utrzymać porządek w bazach danych i zgodność z wymaganiami, które mamy na myśli.

Pytanie 13

Jaki kolor oznacza zapis szesnastkowy #0000FF?

A. niebieski
B. czarny
C. czerwony
D. zielony
W zapisie szesnastkowym #RRGGBB kolejne pary to czerwony, zielony i niebieski. W #0000FF czerwony i zielony są zerowe, a niebieski maksymalny (FF = 255), więc kolor jest NIEBIESKI. Dlatego #0000FF to niebieski.

Pytanie 14

Który z elementów relacyjnej bazy danych, zapisany w języku SQL, może być wykorzystany w zapytaniach modyfikujących kolumny danych udostępnione jako tabela, niezależnie od tego, czy jest stworzony programowo, czy dynamicznie?

A. Procedura składowa
B. Trigger
C. Funkcja zdefiniowana
D. Zasada
Kiedy analizujemy inne obiekty bazy danych, takie jak reguły, wyzwalacze i procedury składowe, możemy zidentyfikować, dlaczego nie są one odpowiednie w kontekście tego pytania. Reguły w SQL są używane do automatyzacji modyfikacji zapytań, ale ich zastosowanie jest ograniczone i rzadko używane w nowoczesnych bazach danych. Reguły są rzeczywiście często pomijane w nowoczesnych implementacjach ze względu na ich złożoność oraz ograniczenia w stosowaniu. Wyzwalacze natomiast są mechanizmami, które automatycznie wywołują się w odpowiedzi na określone zdarzenia w bazie danych, takie jak dodawanie, aktualizacja lub usuwanie rekordów. Choć mogą modyfikować dane, to nie są one wywoływane bezpośrednio przez zapytania, a raczej jako odpowiedź na zdarzenia, co czyni je mniej elastycznymi w kontekście bezpośrednich zapytań. Procedury składowe są kolejnym typem obiektu bazy danych, które mogą implementować złożoną logikę, jednak są one zazwyczaj wywoływane jako całość i nie mogą być używane w kontekście zapytań modyfikujących dane, jak to ma miejsce w przypadku funkcji zdefiniowanej. Zatem w kontekście elastyczności i modułowości w modyfikacjach danych, funkcje zdefiniowane pozostają najodpowiedniejszym rozwiązaniem.

Pytanie 15

Które znaczniki HTML umożliwiają wyświetlenie tekstu w jednym wierszu na stronie, zakładając brak zdefiniowanego formatu CSS?

Dobre strony m o j e j  s t r o n y
A. <div>Dobre strony </div><div style="letter-spacing:3px">mojej strony</div>
B. <p>Dobre strony </p><p style="letter-spacing:3px">mojej strony</p>
C. <h3>Dobre strony </h3><h3 style="letter-spacing:3px">mojej strony</h3>
D. <span>Dobre strony </span><span style="letter-spacing:3px">mojej strony</span>
Znacznik <span> jest elementem inline HTML który pozwala na wyświetlanie tekstu w jednym wierszu. Oznacza to że elementy te nie wprowadzają automatycznych przerw liniowych przed i po sobie co jest typowe dla elementów block-level takich jak <div> czy <p>. W praktycznych zastosowaniach <span> jest często używany do stylizacji i formatowania fragmentów tekstu bez zmiany struktury dokumentu HTML. Użycie <span> jest zgodne z dobrymi praktykami dla elementów które wymagają jedynie lekkiej modyfikacji wizualnej bez naruszenia układu strony. Jest to element niezwykle elastyczny często łączony z CSS i JavaScript w celu wpływania na wygląd i interaktywność stron internetowych. Znaczniki inline takie jak <span> są kluczowe w responsywnym web designie ponieważ pozwalają na dokładne kontrolowanie stylu i zachowania tekstu w ramach szerszej struktury strony. Umożliwiają także semantyczne i dostępnościowe ulepszenia pomagając w tworzeniu bardziej zrozumiałych i przyjaznych dla użytkownika interfejsów. Wiedza o różnicy między elementami inline i block-level jest fundamentem w profesjonalnym tworzeniu stron internetowych i pozwala unikać powszechnych błędów w układzie treści.

Pytanie 16

Która metoda JavaScript dodaje nowy element na końcu tablicy?

A.
push()
B.
pop()
C.
shift()
D.
unshift()
Metoda push() dodaje nowy element na KOŃCU tablicy i zwraca jej nową długość. Dlatego element na końcu dodaje push().

Pytanie 17

Na czym polega analiza ścieżek w testach jednostkowych?

A. na testowaniu wartości brzegowych danych
B. na utworzeniu kilku zbiorów danych o podobnym przetwarzaniu i przetestowaniu nimi
C. na wyznaczeniu punktu początkowego i końcowego oraz zbadaniu dróg między nimi
D. na badaniu inicjacji i zwalniania pamięci obiektów
Analiza ścieżek w testach jednostkowych polega na wyznaczeniu punktu początkowego i końcowego fragmentu kodu, a następnie zbadaniu wszystkich możliwych dróg (przepływów sterowania) między nimi - tak, by przetestować każdą gałąź. Pozwala to wykryć nieobsłużone przypadki. Dlatego to badanie dróg między punktem startu a końca.

Pytanie 18

Który element relacyjnej bazy danych (kod w języku SQL) można WYWOŁAĆ wewnątrz zapytania, tak że zwróci wartość lub dane widoczne jak tabela?

A. wyzwalacz
B. reguła
C. procedura składowana
D. funkcja zdefiniowana przez użytkownika
Pozostałe elementy działają inaczej. Wyzwalacz (trigger) uruchamia się automatycznie przy zmianie danych, a nie na żądanie w zapytaniu. Procedury składowanej nie wywołuje się wewnątrz SELECT jak źródła danych (uruchamia się ją osobno). Reguła to ograniczenie. Wartość lub dane w zapytaniu zwraca funkcja zdefiniowana przez użytkownika.

Pytanie 19

Który atrybut HTML wyświetla podpowiedź (dymek) pokazywaną po najechaniu kursorem na element?

A.
id
B.
src
C.
alt
D.
title
Atrybut title można dodać do niemal każdego znacznika; przeglądarka pokazuje jego treść jako mały dymek (tooltip) po zatrzymaniu kursora nad elementem. Służy do krótkiej dodatkowej podpowiedzi, np. wyjaśnienia odnośnika czy ikony. Dlatego dymek z podpowiedzią wyświetla atrybut title.

Pytanie 20

W bazie danych księgarni znajduje się tabela ksiazki, która zawiera pola: id, idAutor, tytul, ileSprzedanych, oraz tabela autorzy z polami: id, imie, nazwisko. Jak można utworzyć raport sprzedanych książek zawierający tytuły oraz nazwiska autorów?

A. konieczne jest stworzenie kwerendy, która wyszukuje tytuły książek
B. trzeba utworzyć dwie oddzielne kwerendy: pierwsza do wyszukiwania tytułów książek, druga do wyszukiwania nazwisk autorów
C. należy zdefiniować relację l..n pomiędzy tabelami ksiazki a autorzy, a następnie stworzyć kwerendę łączącą obie tabele
D. należy zdefiniować relację 1..1 pomiędzy tabelami ksiazki a autorzy, a następnie stworzyć kwerendę łączącą obie tabele
Relacja l..n między tabelami 'ksiazki' i 'autorzy' jest naprawdę ważna. To oznacza, że jeden autor może napisać kilka książek, co jest całkiem normalne w świecie księgarni. Dzięki tej relacji, dla każdego 'idAutor' w tabeli 'ksiazki' możemy mieć wiele wpisów, co super ułatwia powiązanie tytułów z autorami. Jakbyś stworzył kwerendę, która łączy te obie tabele, to bez problemu uzyskasz dane, które jasno pokazują te relacje. Na przykład, taka kwerenda SQL mogłaby wyglądać tak: SELECT ksiazki.tytul, autorzy.nazwisko FROM ksiazki JOIN autorzy ON ksiazki.idAutor = autorzy.id; Taki sposób działania jest zgodny z normalizacją danych, co sprawia, że nasze bazy danych będą efektywne i dobrze zorganizowane.

Pytanie 21

Baza danych przechowuje dane multimedialne (duże ilości danych binarnych). Którego typu danych należy użyć dla takich pól?

A.
ENUM
B.
DOUBLE
C.
BLOB
D.
LONGTEXT
Do przechowywania dużych danych binarnych - obrazów, dźwięku, plików - służy typ BLOB (Binary Large Object). W odróżnieniu od typów tekstowych nie zakłada kodowania znaków, więc nadaje się do surowych bajtów. W MySQL ma warianty (TINYBLOB, MEDIUMBLOB, LONGBLOB) o różnej pojemności. Dlatego dla danych multimedialnych właściwy jest BLOB.

Pytanie 22

Programista stworzył pętlę w języku C++, która miała za zadanie obliczyć wynik 5! (5! = 1 * 2 * 3 * 4 * 5). Niestety, popełnił błąd logiczny, gdyż

int a = 1;
for (int i=1; i < 5; i++)
{
    a = a * i;
}
cout << a;
Ilustracja do pytania
A. zmienna i pętli powinna być zmniejszana, a nie zwiększana
B. zmienna i w pętli powinna być rozpoczynana od 0, a nie od 1
C. zmienna a powinna być początkowo ustawiona na 0 zamiast 1
D. w drugim parametrze pętli powinno być porównanie i < 6 zamiast i < 5
Odpowiedź jest prawidłowa, ponieważ pętla powinna przebiegać przez wszystkie liczby od 1 do 5, aby obliczyć wartość 5! czyli 120. W kodzie pętla for zaczyna się od wartości i=1 i kontynuuje, dopóki i jest mniejsze niż 5, co oznacza, że nie uwzględnia liczby 5. Zmiana warunku na i<6 powoduje, że pętla wykona się pięć razy dla wartości i=1, 2, 3, 4, 5. To zgodne z matematyczną definicją silni, gdzie należy przemnożyć wszystkie liczby całkowite od 1 do n. Wpisując warunek i<6, kod stanie się bardziej zgodny z dobrymi praktykami programowania, które zalecają jasne i jednoznaczne warunki zakończenia pętli. Prawidłowe obliczenie silni jest częstym zadaniem w programowaniu i stanowi fundament dla bardziej zaawansowanych algorytmów liczbowych takich jak algorytmy rekurencyjne. Zrozumienie iteracyjnego i rekurencyjnego podejścia do tego problemu rozwija umiejętności logicznego myślenia i projektowania algorytmów. Takie zrozumienie jest kluczowe zwłaszcza w dziedzinie analizy algorytmów i optymalizacji kodu.

Pytanie 23

W wyniku przedstawionego polecenia w tabeli zostanie

ALTER TABLE nazwa1 ADD nazwa2 DOUBLE NOT NULL;
A. zmieniona kolumna z nazwa1 na nazwa2
B. dodana kolumna nazwa2 z wymuszoną wartością DOUBLE
C. dodana kolumna nazwa2 o typie zmiennoprzecinkowym
D. zmieniony typ kolumny nazwa2 na DOUBLE
Analizując pozostałe odpowiedzi, można zauważyć, że nie odzwierciedlają one poprawności działania zapytania SQL. Pierwsza odpowiedź sugeruje zmianę nazwy kolumny, co jest błędnym podejściem, ponieważ użycie klauzuli "ADD" wyraźnie wskazuje na dodanie nowej kolumny, a nie na modyfikację istniejącej. Zmiana nazwy kolumny wymagałaby użycia zapytania "ALTER TABLE ... RENAME COLUMN...", co jest zupełnie inną operacją. Drugie stwierdzenie koncentruje się na zmianie wartości kolumny "nazwa2" na typ DOUBLE, co jest niepoprawne, gdyż zapytanie nie zmienia wartości, a dodaje nową kolumnę. Ostatnia odpowiedź wskazuje na dodanie kolumny z wartością domyślną, co również jest błędne, gdyż w zapytaniu nie określono wartości domyślnej dla nowej kolumny. W rzeczywistości, przy dodawaniu kolumny można również ustawić wartość domyślną, ale nie jest to wymagane. Typowe błędy w myśleniu prowadzące do takich wniosków często wynikają z niepełnego zrozumienia składni SQL i funkcji poszczególnych poleceń. Dlatego istotne jest, aby przed przystąpieniem do modyfikacji struktury bazy danych dobrze zaznajomić się z dokumentacją i zasadami działania systemu zarządzania bazą danych, z którego się korzysta.

Pytanie 24

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

SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Poznań" UNION ALL SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Kraków"
Wskaż zapytanie, które zwróci te same dane:
A. SELECT nazwisko, imie FROM mieszkancy WHERE miasto="Poznań" OR miasto="Kraków"
B. SELECT nazwisko, imie FROM mieszkancy WHERE miasto HAVING "Poznań" OR "Kraków"
C. SELECT nazwisko, imie FROM mieszkancy WHERE miasto BETWEEN "Poznań" OR "Kraków"
D. SELECT nazwisko, imie FROM mieszkancy AS "Poznań" OR "Kraków"
Zarówno druga, jak i trzecia odpowiedź zawierają błędne konstrukcje zapytań SQL, które nie są zgodne z syntaktyką SQL. W drugiej propozycji użycie aliasu 'AS' dla miast jest niepoprawne, ponieważ aliasowanie dotyczy głównie tabel i kolumn, a nie wartości w klauzuli WHERE. W konsekwencji zapytanie nie zwróci żadnych danych, gdyż nie jest w stanie poprawnie zinterpretować podanych warunków. Trzecia odpowiedź sugeruje użycie operatora BETWEEN w kontekście miast, co również jest niepoprawne. BETWEEN wymaga wartości liczbowych lub dat, a nie tekstowych. Dodatkowo, użycie operatora OR w kontekście BETWEEN jest błędne, ponieważ BETWEEN sam w sobie definiuje zakres wartości. Ostatnia odpowiedź jest również niepoprawna, ponieważ klauzula HAVING jest wykorzystywana w kontekście agregacji danych i nie jest przeznaczona do stosowania w prostych warunkach filtracji, jak w tym przypadku. Typowym błędem jest mylenie kontekstu użycia różnych klauzul w SQL oraz niewłaściwe stosowanie operatorów, co prowadzi do niepoprawnych wniosków o skutkach zapytań. Warto zrozumieć zasady rządzące składnią SQL, aby efektywnie tworzyć zapytania, które zwracają oczekiwane wyniki.

Pytanie 25

W znaczniku meta w miejsce kropek należy wpisać

Ilustracja do pytania
A. streszczenie treści strony
B. język dokumentu
C. informację o dostosowaniu do urządzeń mobilnych
D. nazwa edytora
Znacznik meta opatrzony atrybutem name="description" służy do zamieszczenia streszczenia treści strony internetowej. Jest to element HTML używany w nagłówku dokumentu, który dostarcza wyszukiwarkom i innym usługom internetowym informacji o zawartości strony. Opis ten pomaga w lepszym indeksowaniu strony przez wyszukiwarki oraz może wpływać na to, jak strona jest prezentowana w wynikach wyszukiwania. Dzięki dobrze sformułowanemu opisowi użytkownicy mogą szybciej zrozumieć, czego mogą się spodziewać po odwiedzeniu danej strony. Jest to dobra praktyka SEO, ponieważ poprawia widoczność strony w wyszukiwarkach. Zawartość opisana w znaczniku meta description nie powinna przekraczać 160 znaków, aby zapewnić odpowiednie wyświetlanie w wynikach wyszukiwania. Użycie streszczenia w odpowiedni sposób zwiększa atrakcyjność kliknięcia przez potencjalnych odwiedzających. To podejście jest zgodne z wytycznymi Google, które zaleca tworzenie unikalnych i treściwych opisów dla każdej strony w serwisie.

Pytanie 26

Aby uzyskać informacje o środowisku pracy serwera obsługującego PHP, należy skorzystać z funkcji

A.
phpinformation()
B.
php()
C.
phpinfo()
D.
phpgetinfo()
Tylko jedna z podanych nazw to prawdziwa funkcja PHP. php() wygląda jak skrót od nazwy języka, ale w PHP nie ma funkcji o takiej nazwie - jej wywołanie zgłosi błąd o nieznanej funkcji. Podobnie phpgetinfo() brzmi sensownie i kojarzy się z pobieraniem informacji, lecz również nie została zdefiniowana w języku; nie znajdziesz jej w dokumentacji PHP. phpinformation() to kolejna zmyślona nazwa - dłuższy zapis, który nigdy nie był częścią PHP. Te trzy warianty celowo przypominają poprawną odpowiedź, by sprawdzić, czy znasz dokładną nazwę. Środowisko serwera raportuje wyłącznie phpinfo(): po wywołaniu wypisuje wersję PHP, załadowane rozszerzenia, ustawienia php.ini oraz dane o serwerze. Jeśli nie masz pewności co do nazwy funkcji, sprawdź ją w oficjalnej dokumentacji - to pozwala uniknąć sięgania po nieistniejące wywołania.

Pytanie 27

Która deklaracja w C++ przyjmuje argument typu RZECZYWISTEGO i zwraca wynik typu CAŁKOWITEGO?

A.
int fun1(float a);
B.
void fun1(int a);
C.
float fun1(int a);
D.
float fun1(void a);
Funkcja ma przyjmować argument RZECZYWISTY i zwracać CAŁKOWITY. Argument rzeczywisty to float a, a typ zwracany całkowity to int przed nazwą - czyli int fun1(float a). Dlatego poprawna deklaracja to int fun1(float a);.

Pytanie 28

Na ilustracji przedstawiono rezultat stosowania stylów CSS oraz odpowiadający mu kod HTML, który generuje ten przykład. Przyjmując, że marginesy wewnętrzne mają wartość 50 px, natomiast zewnętrzne wynoszą 20 px, styl CSS dla tego obrazu wygląda następująco

Ilustracja do pytania
A. Odpowiedź C
B. Odpowiedź D
C. Odpowiedź A
D. Odpowiedź B
Odpowiedź C jest poprawna, ponieważ zdefiniowany styl CSS zawiera wszystkie elementy odpowiadające przedstawionemu formatowaniu obrazu. Styl ten określa kolor tła jako Teal, co jest zgodne z opisem wizualnym obrazu. Dodatkowo zastosowanie solidnej czarnej ramki o grubości 4 pikseli odpowiada profesjonalnym standardom, które zapewniają wyraźne oddzielenie obrazu od reszty treści przez wyróżnienie go. Zastosowanie marginesów zewnętrznych o wartości 20 pikseli oraz wewnętrznych paddingów o wartości 50 pikseli jest zgodne z podanym założeniem, co pozwala na właściwe umiejscowienie obrazu na stronie, dając przestrzeń wokół i wewnątrz elementu. Dbałość o takie szczegóły jest kluczowa dla tworzenia responsywnych i estetycznych stron internetowych. Praktyczne stosowanie tego typu stylizacji umożliwia poprawienie czytelności oraz przyciąga uwagę użytkowników na znaczące elementy strony. Warto przy tym pamiętać o zasadzie KISS (Keep It Simple, Stupid), która zachęca do utrzymywania prostoty w projektach, co nie tylko ułatwia ich tworzenie ale też późniejsze utrzymanie.

Pytanie 29

bool gotowe=true;
cout<<gotowe;
Jakie będzie wyjście w wyniku wykonania podanych poleceń?

A. Nie
B. 1
C. 0
D. Tak
Po wykonaniu poleceń na ekranie zobaczysz '1'. Zmienna 'gotowe' jest ustawiona jako typ bool i ma wartość true. W C++ typ bool może mieć dwie wartości: true lub false. Kiedy zmienną bool wyświetlamy przy użyciu cout, to 'true' pokazuje się jako '1', a 'false' jako '0'. To jest zgodne z zasadami C++, które mówią, że wartości logiczne są traktowane jako liczby całkowite. Z mojego doświadczenia, zrozumienie tego, jak C++ interpretuje różne typy danych, jest naprawdę istotne w programowaniu, bo pomaga lepiej ogarnąć działanie kodu, a także poprawić algorytmy. Na przykład, jeśli programista ma świadomość, że true to 1, może wykorzystać tę wiedzę przy operacjach na liczbach lub podczas tworzenia warunków. To fajnie działa, zwłaszcza gdy zaczynamy tworzyć bardziej złożone struktury danych.

Pytanie 30

Które wartości może przyjąć zmienna typu double?

A. 1979-12-05; 12:33
B. 2.4; 4; 3.2
C. "Ala"; 'd'
D. 1,44; 2,55
double mieści tylko liczby. Zapis 1,44; 2,55 używa PRZECINKA, którego w kodzie nie stosuje się jako separatora dziesiętnego. 1979-12-05; 12:33 to data i godzina (tekst), a "Ala"; 'd' to napis i znak. Liczbom rzeczywistym odpowiada 2.4; 4; 3.2.

Pytanie 31

ALTER TABLE transport MODIFY COLUMN rok_produkcji INT;
Wykonanie powyższej kwerendy SQL w bazie MySQL spowoduje:
A. zmianę typu danych w kolumnie rok_produkcji na INT.
B. dodanie kolumny rok_produkcji typu INT w tabeli transport.
C. usunięcie kolumny rok_produkcji w tabeli transport.
D. utworzenie tabeli transport zawierającej kolumnę rok_produkcji.
Poprawnie – polecenie ALTER TABLE ... MODIFY COLUMN w MySQL służy do modyfikowania istniejącej kolumny, a nie do jej tworzenia czy usuwania. W podanym przykładzie baza danych szuka tabeli o nazwie `transport`, a następnie zmienia definicję kolumny `rok_produkcji` tak, aby jej typ danych był `INT`. Jeśli kolumna już istnieje (a musi istnieć, żeby MODIFY zadziałało), to po wykonaniu polecenia dalej będzie miała tę samą nazwę, ale jej typ i właściwości zostaną nadpisane nową definicją. W MySQL warto pamiętać, że przy MODIFY COLUMN trzeba podać pełną definicję kolumny, nie tylko sam typ. Czyli jeśli wcześniej była np. NOT NULL albo miała domyślną wartość, to dobra praktyka jest napisać coś w stylu: `ALTER TABLE transport MODIFY COLUMN rok_produkcji INT NOT NULL DEFAULT 2000;` – inaczej można przypadkiem zgubić część ustawień. W praktyce takie polecenia stosuje się przy zmianach w projekcie bazy: np. najpierw kolumna jest typu VARCHAR, bo ktoś przechowuje tam rok jako tekst, a potem, zgodnie z lepszymi zasadami projektowania, zmienia się to na typ liczbowy INT, żeby można było łatwo filtrować, sortować, robić warunki typu `WHERE rok_produkcji > 2015`. Z mojego doświadczenia dobrze jest przed taką zmianą sprawdzić, czy wszystkie dane da się bezpiecznie skonwertować na liczbę, bo jeśli w kolumnie są jakieś śmieciowe wartości tekstowe, to MySQL może je obciąć albo zamienić na 0, co później robi bałagan w raportach. W środowiskach produkcyjnych takie ALTER TABLE najlepiej wykonywać po zrobieniu kopii zapasowej i często w oknie serwisowym, bo przy dużych tabelach operacja może chwilowo blokować dostęp do danych.

Pytanie 32

Tabela podzespoly ma pola: model, producent, typ, cena. Które zapytanie wyświetli modele dysków SSD firmy Samsung od najdroższego do najtańszego?

A.
SELECT model FROM podzespoly WHERE typ='SSD' OR producent='Samsung' ORDER BY cena DESC;
B.
SELECT model FROM podzespoly WHERE typ='SSD' AND producent='Samsung' ORDER BY cena ASC;
C.
SELECT model FROM podzespoly WHERE typ='SSD' AND producent='Samsung' ORDER BY cena DESC;
D.
SELECT model FROM producent WHERE typ='SSD' OR producent='Samsung' ORDER BY podzespoly ASC;
Dyski SSD firmy Samsung to część wspólna dwóch warunków - typ „SSD” ORAZ producent „Samsung” - więc łączymy je AND, a od najdroższego do najtańszego sortuje ORDER BY cena DESC. Wybieramy model z podzespoly. Dlatego ta kwerenda jest poprawna.

Pytanie 33

Która funkcja edytora grafiki wektorowej spowoduje przekształcenie z przedstawionych po lewej stronie figur koła i prostokąta do figury półkola widocznej po prawej stronie?

Ilustracja do pytania
A. Wykluczenie.
B. Różnica.
C. Podział.
D. Część wspólna.
W grafice wektorowej operacje na kształtach, takie jak Różnica, Podział, Wykluczenie czy Część wspólna, to tzw. operacje boole’owskie. One nie są losowe – każda z nich ma bardzo konkretne, matematyczne znaczenie. Typowy błąd polega na tym, że patrzymy tylko na „intuicyjną” nazwę funkcji, a nie na to, co faktycznie dzieje się z obszarami wypełnienia. Różnica (ang. Subtract / Difference) polega na tym, że jedna figura „wycina” fragment z drugiej. Gdyby w naszym przykładzie użyć różnicy, to z jednej figury zostałby usunięty fragment zajmowany przez drugą. W efekcie dostalibyśmy kształt przypominający np. prostokąt z zaokrąglonym wycięciem, a nie pełne półkole. To przydaje się np. do robienia otworów, ramek, ikon z „dziurą”, ale nie do budowy półkola. Podział (ang. Divide / Fragment) dzieli obszar wszędzie tam, gdzie kształty się przecinają, na kilka osobnych obiektów. Wizualnie może to chwilowo wyglądać podobnie, ale końcowy efekt to kilka fragmentów, które trzeba ręcznie usuwać lub scalać. W testowym zadaniu chodzi o jedną, gotową figurę półkola, bez dodatkowego sprzątania, więc to nie jest optymalna operacja. Wykluczenie (ang. Exclude / XOR) działa odwrotnie do części wspólnej – usuwa obszar nakładania się, a zostawia tylko to, co jest „na zewnątrz” przecięcia. Gdyby użyć wykluczenia na kole i prostokącie, środek, czyli miejsce ich wspólnego nakładania, zniknie, a zostaną dwa osobne dziwne kształty po bokach. To dobra funkcja do tworzenia bardziej dekoracyjnych, ażurowych form, ale kompletnie nie nadaje się do uzyskania klasycznego półkola. W tym zadaniu kluczowe jest zrozumienie, że półkole jest dokładnie tym obszarem, gdzie koło i prostokąt się pokrywają. Stąd jedynie „Część wspólna” daje czysty, poprawny efekt bez dodatkowej obróbki. Warto przy takich pytaniach wyobrażać sobie, które fragmenty zostaną, a które zostaną usunięte, zamiast sugerować się tylko nazwą funkcji w menu programu.

Pytanie 34

Jakie efekt osiągnie się za pomocą przedstawionego formatowania CSS dla nagłówka trzeciego poziomu?

Ilustracja do pytania
A. tło będzie w odcieniu szarym
B. kolor tekstu będzie pomarańczowy
C. tło będzie pomarańczowe
D. kolor tekstu będzie szary
Poprawna odpowiedź dotycząca tła pomarańczowego wynika z zasady specyficzności CSS W przedstawionym przykładzie stylu dla elementu h3 zastosowano właściwość background-color przypisując jej wartość orange bezpośrednio w znaczniku HTML co zwiększa specyficzność takiego stylu nad stylem zdefiniowanym w sekcji style w nagłówku strony Specyficzność w CSS to mechanizm określający który styl ma pierwszeństwo w przypadku konfliktu stylów dla tego samego elementu Styl wbudowany inline ma wyższą specyficzność niż style określone w sekcjach style co oznacza że definiując background-color inline jako orange nadpisuje on wcześniej zdefiniowane style Dzięki temu można precyzyjnie kontrolować wygląd poszczególnych elementów na stronie co jest dobrą praktyką w przypadku gdy konieczne są jednorazowe zmiany stylu dla konkretnego elementu Warto jednak pamiętać że nadmierne wykorzystywanie stylów inline może prowadzić do trudności w zarządzaniu wyglądem całej strony dlatego dobrą praktyką jest używanie ich oszczędnie oraz stosowanie zewnętrznych arkuszy stylów CSS tam gdzie to możliwe

Pytanie 35

W języku Javascript obiekt typu array służy do przechowywania

A. wielu wartości lub funkcji
B. wielu wartości różnego rodzaju
C. wielu wartości tylko tekstowych
D. wielu wartości tylko liczbowych
Obiekt typu array w języku JavaScript jest niezwykle elastycznym narzędziem, które pozwala na przechowywanie wielu wartości dowolnego typu. Arrays mogą zawierać liczby, stringi, obiekty, a nawet inne tablice, w ramach jednego zbioru. Taka struktura danych jest bardzo przydatna w programowaniu, szczególnie w kontekście pracy z danymi, gdyż umożliwia tworzenie kolekcji o zmiennej długości, które można łatwo przetwarzać. Na przykład, w aplikacjach webowych można wykorzystać tablice do grupowania danych z formularzy lub przechowywania wyników zapytań do bazy danych. Dzięki metody takim jak .push(), .pop() czy .map(), programiści mogą łatwo manipulować danymi w tablicach. Ważnym aspektem jest również to, że tablice są obiektami w JavaScript, co oznacza, że można do nich przypisywać dodatkowe właściwości i metody, zwiększając ich funkcjonalność. Przykładem zaawansowanego zastosowania tablic jest wykorzystanie ich do implementacji algorytmów, takich jak sortowanie czy przeszukiwanie danych. Zgodnie z dokumentacją MDN, tablice w JavaScript są dynamiczne, co oznacza, że ich rozmiar może być dostosowywany w czasie działania programu, co czyni je bardzo wszechstronnym narzędziem w pracy programisty.

Pytanie 36

Aby wstawić w napisie (zmiennej typu string) złamanie linii, należy użyć znaku:

A.
\\
B.
\b
C.
\n
D.
\t
Sekwencja \n to tak zwany znak nowej linii (newline). W napisie ukośnik wsteczny rozpoczyna sekwencję sterującą, a litera po nim określa jej znaczenie - \n oznacza przejście do nowej linii. Dzięki temu można formatować wieloliniowy tekst zapisany w jednej zmiennej, bez fizycznego entera w kodzie. To powszechna konwencja w wielu językach (m.in. JavaScript, PHP, C). Dlatego do złamania linii w napisie służy właśnie \n.

Pytanie 37

Na podstawie kodu widocznego na ilustracji można stwierdzić, że

Ilustracja do pytania
A. podano nieprawidłowy argument do funkcji alert.
B. nie przypisano wartości do zmiennej nazwisko.
C. funkcja wyswietlNazwisko(nazwisko) musi być wywołana wewnątrz innej funkcji.
D. nie zadeklarowano funkcji wyswietlNazwisko.
W tym kodzie funkcja wyswietlNazwisko(nazwisko) jest poprawnie zadeklarowana, a komunikat przekazywany do alert() też jest w porządku. Problem wcale nie leży w samej funkcji, tylko w tym, że wywołujemy ją z argumentem nazwisko, który nigdzie wcześniej nie został zdefiniowany ani nie ma do niego przypisanej żadnej wartości. Silnik JavaScript widzi wywołanie wyswietlNazwisko(nazwisko); i szuka zmiennej o nazwie nazwisko w aktualnym zasięgu (scope). Ponieważ jej nie znajduje, zgłasza błąd ReferenceError: nazwisko is not defined. To jest klasyczny przypadek braku inicjalizacji zmiennej przed użyciem.
W praktyce, żeby to naprawić, trzeba najpierw zadeklarować zmienną, np.: var nazwisko = "Kowalski"; albo let nazwisko = prompt("Podaj swoje nazwisko:"); i dopiero potem wywołać funkcję: wyswietlNazwisko(nazwisko);. Dobra praktyka w JavaScript to zawsze jawne deklarowanie zmiennych przy użyciu let lub const (ewentualnie var w starszym kodzie) oraz nadawanie im czytelnych, przewidywalnych wartości początkowych. W aplikacjach webowych takie zmienne często pochodzą z pól formularza, np. z document.getElementById("nazwisko").value, i dopiero ta wartość jest przekazywana jako argument funkcji. Moim zdaniem warto wyrobić sobie nawyk, że zanim użyjesz jakiejś nazwy w wywołaniu funkcji, sprawdzasz, czy na pewno istnieje jej deklaracja w odpowiednim zasięgu i czy ma sensowną wartość. Dzięki temu unikniesz wielu irytujących błędów w konsoli i łatwiej będzie debugować kod.

Pytanie 38

Który ze skrótów oznacza sieć bezprzewodową?

A. WLAN
B. LAN
C. WAN
D. MAN
WLAN (Wireless Local Area Network) to bezprzewodowa sieć lokalna - litera „W” (Wireless) wskazuje brak kabli, a łączność zapewnia technologia Wi-Fi (standardy IEEE 802.11). Pozostałe skróty opisują sieci według zasięgu, nie sposobu transmisji: LAN to sieć lokalna (np. w biurze), MAN obejmuje miasto, a WAN to sieć rozległa, jak internet. Dlatego sieć bezprzewodową oznacza skrót WLAN.

Pytanie 39

Do czego służy funkcja CONCAT() w SQL?

A. do usuwania wskazanego tekstu
B. do łączenia tekstów (konkatenacji)
C. do wyciągania podłańcucha
D. do przycinania tekstu
Pozostałe operacje wykonują inne funkcje. Usuwanie lub zamianę fragmentu robi REPLACE(), przycinanie - TRIM(), a wycinanie podłańcucha - SUBSTRING(). Łączeniem tekstów zajmuje się CONCAT().

Pytanie 40

Model fizyczny replikacji bazy danych pokazany na ilustracji jest modelem

Ilustracja do pytania
A. centralnego wydawcy
B. równorzędnym
C. centralnego subskrybenta
D. rozproszonym
Model centralnego subskrybenta polega na tym że jeden serwer subskrybuje dane z wielu wydawniczych serwerów co jest odwrotnością modelu centralnego wydawcy. Tego typu rozwiązanie jest mniej popularne ze względu na potrzebę zarządzania synchronizacją z wielu źródeł co komplikuje proces replikacji i zwiększa ryzyko konfliktów danych. Model równorzędny z kolei zakłada że każdy serwer w architekturze działa jako równy uczestnik mający zdolność zarówno publikowania jak i subskrybowania danych. Taka architektura jest bardziej złożona w zarządzaniu zwłaszcza przy dużej liczbie uczestników ponieważ wymaga zaawansowanych mechanizmów rozwiązywania konfliktów i zarządzania współbieżnością. Rozproszony model to rozwiązanie gdzie dane są przechowywane i zarządzane bez centralnego punktu co może być korzystne dla systemów wymagających wysokiej dostępności i elastyczności ale stwarza wyzwania w zakresie spójności danych i wymaga skomplikowanych algorytmów synchronizacji. Wybór modelu nieodpowiedniego dla danej infrastruktury może prowadzić do problemów z wydajnością i spójnością co jest typowym błędem myślowym wynikającym z niewłaściwego zrozumienia wymagań systemowych. Każdy z tych modeli ma swoje specyficzne zastosowania i wyzwania co wymaga odpowiedniej analizy i doświadczenia przy projektowaniu systemów bazodanowych.