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 16:39
  • Data zakończenia: 8 czerwca 2026 16:59

Egzamin zdany!

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

Funkcję mysqli_num_rows() w PHP można wywołać po wykonaniu zapytania:

A.
DELETE
B.
UPDATE
C.
INSERT
D.
SELECT
Funkcja mysqli_num_rows() zwraca liczbę wierszy w zbiorze wynikowym i ma sens tylko wtedy, gdy zapytanie taki zbiór zwraca - czyli po SELECT (lub np. SHOW). Przekazuje się jej wynik zapytania, np. $w = mysqli_query($db, "SELECT * FROM klienci"); $ile = mysqli_num_rows($w);. Dla zapytań modyfikujących dane liczbę zmienionych wierszy podaje inna funkcja - mysqli_affected_rows(). Dlatego mysqli_num_rows() stosuje się po zapytaniu SELECT.

Pytanie 2

Jakie wartości zostaną wypisane po wykonaniu poniższego skryptu?

var x = 1;
var y;
/*0*/ ++y;
/*1*/ document.write(++x);
/*2*/ document.write(" ");
/*3*/ document.write(x--);
/*4*/ document.write(" ");
/*5*/ document.write(x);
A. 2 2 1
B. 1 2 1
C. 1 2 2
D. 2 1 1
Wynik działania skryptu JavaScript wypisuje wartości według kolejności operacji na zmiennej x. Na początku wartość x wynosi 1. Pierwsza operacja preinkrementacji ++x zwiększa wartość x o 1 przed jej użyciem, więc teraz x wynosi 2. Kolejna instrukcja wypisuje tę wartość. Następnie w kodzie jest spacja, która oddziela kolejne wartości. Kolejna operacja to postdekrementacja x--, która wypisuje aktualną wartość x, a dopiero potem zmniejsza ją o 1. W efekcie wypisywane jest 2, a następnie x zmienia wartość na 1. Ostatecznie dokument.write wypisuje spację i końcową wartość x, która wynosi 1. W praktycznych zastosowaniach preinkrementacja i postdekrementacja są często używane w pętlach lub operacjach, gdzie istotna jest kolejność modyfikacji wartości. Użycie odpowiednich operatorów wpływa na logikę programu, co jest kluczowe przy pisaniu i analizowaniu kodu. Ważne jest również zrozumienie różnic między pre- a post-operatorami inkrementacji i dekrementacji, co jest podstawą w programowaniu JavaScript.

Pytanie 3

Tabele Osoby i Adresy są połączone relacją jeden do wielu. Które zapytanie SQL należy wykonać, aby korzystając z tej relacji, prawidłowo wyświetlić nazwiska oraz przyporządkowane im miasta?

Ilustracja do pytania
A. SELECT nazwisko, Miasto FROM Osoby.Adresy_id = Adresy.id FROM Osoby, Adresy;
B. SELECT nazwisko, Miasto FROM Osoby, Adresy;
C. SELECT nazwisko, Miasto FROM Osoby JOIN Adresy ON Osoby.Adresy_id = Adresy.id;
D. SELECT nazwisko, Miasto FROM Osoby, Adresy WHERE Osoby.id = Adresy.id;
Poprawne zapytanie korzysta z jawnego złączenia tabel: SELECT nazwisko, Miasto FROM Osoby JOIN Adresy ON Osoby.Adresy_id = Adresy.id;. Kluczowe są tu dwie rzeczy: użycie słowa kluczowego JOIN oraz właściwy warunek ON, który łączy klucz obcy z kluczem głównym. W tabeli Osoby kolumna Adresy_id jest kluczem obcym (FK), który wskazuje na kolumnę id w tabeli Adresy. To dokładnie odzwierciedla relację jeden‑do‑wielu narysowaną na diagramie. Dzięki temu baza danych wie, które miasto przypisać do którego nazwiska. Takie podejście jest zgodne ze standardem SQL i dobrą praktyką w relacyjnych bazach danych. Jawne JOIN-y są czytelne, łatwe do modyfikacji (np. dodanie kolejnych tabel lub warunków filtrowania) i dobrze współpracują z optymalizatorem zapytań. W praktycznych projektach, np. w aplikacjach webowych, właśnie tak buduje się zapytania: łączymy tabelę użytkowników lub klientów z tabelą adresów, zamówień, faktur, logów itp. zawsze po kluczach głównych i obcych, a nie po przypadkowo dobranych kolumnach. Moim zdaniem warto od razu wyrabiać sobie nawyk pisania nazw tabel przy kolumnach, czyli Osoby.nazwisko, Adresy.Miasto – zmniejsza to ryzyko konfliktu nazw i poprawia czytelność kodu SQL. Gdyby w przyszłości w którejś tabeli pojawiła się druga kolumna o nazwie Miasto, zapytanie nadal byłoby jednoznaczne. W większych systemach, gdzie dochodzą dodatkowe warunki (WHERE, ORDER BY, GROUP BY), taka struktura zapytania z JOIN ON jest po prostu dużo łatwiejsza w utrzymaniu i debugowaniu. Warto też pamiętać, że relacja jeden‑do‑wielu oznacza, że jedna osoba może mieć wiele adresów albo jeden adres może być przypisany do wielu osób – dokładne powiązanie zależy od modelu, ale technika złączenia po kluczu obcym pozostaje taka sama.

Pytanie 4

Jak za pomocą JavaScriptu wyświetlić na stronie bieżącą datę i czas?

A.
innerHTML = Date()
B.
echo Date()
C.
echo Date() + Time()
D.
document.write(Date())
Pozostałe odpowiedzi nie zadziałają w JavaScripcie. Dwie z nich zaczynają się od echo, które jest instrukcją języka PHP - w JS nie istnieje, a dodatkowo Time() również nie jest funkcją JavaScriptu. Zapis innerHTML = Date() sam w sobie jest niekompletny: innerHTML trzeba przypisać konkretnemu elementowi strony, np. document.getElementById("x").innerHTML, inaczej nic się nie wyświetli. Bieżącą datę i czas wypisze document.write(Date()), dlatego to ono jest poprawne.

Pytanie 5

Fragment kodu w języku PHP przedstawia się następująco (patrz ramka): W wyniku wykonania pętli zostaną wyświetlone liczby

Ilustracja do pytania
A. 0, 4, 8, 12, 16, 20
B. 0, 4, 8, 12, 16
C. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
D. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19
Pętla for w PHP to naprawdę podstawowe narzędzie, które pozwala nam w łatwy sposób powtarzać różne operacje na danych. W tej pętli zaczynamy od $i równego 0, a kończymy, kiedy $i osiągnie 20. W każdej iteracji dodajemy 4 do $i, więc wypisujemy liczby od 0 do 20, co 4 jednostki. Super sprawa, jeśli chcemy równomiernie przetwarzać dane. Przykładowo, gdy mamy jakieś tabele z danymi albo potrzebujemy wygenerować wykresy w regularnych odstępach, to taka pętla się przydaje. Stosowanie pętli to też dobra praktyka programistyczna, bo automatyzuje nam powtarzalne zadania, co czyni kod bardziej przejrzystym. Jak zrozumiesz, jak działa ta pętla, to dużo łatwiej będzie ci tworzyć różne algorytmy, co jest super ważne w informatyce.

Pytanie 6

Aby zdefiniować styl akapitu <p>, który występuje bezpośrednio po znaczniku <img>, należy w arkuszu CSS zastosować selektor:

A.
img + p
B.
img > p
C.
img [p]
D.
img p
Te selektory różnią się rodzajem powiązania między elementami. img p ze spacją to selektor potomka - odnosi się do akapitów znajdujących się wewnątrz obrazu, co jest niemożliwe, bo <img> nie zawiera treści. img > p z operatorem > wybiera bezpośrednie dzieci elementu, więc również szuka <p> w środku <img>. Zapis img [p] jest po prostu błędny - nawiasy kwadratowe w CSS służą do dopasowania po atrybutach, a nie po nazwie znacznika. Akapit stojący tuż za obrazem, jako jego sąsiad, wskazuje selektor img + p z operatorem sąsiedztwa.

Pytanie 7

Grafik chce zamienić obraz JPG na PNG tak, by białe miejsca stały się przezroczyste. Co powinien zrobić?

A. obniżyć rozdzielczość obrazu
B. zamienić obraz na odcienie szarości
C. dodać kanał alfa
D. zaimportować obraz do edytora wektorowego
Aby białe miejsca stały się przezroczyste po zapisie do PNG, trzeba dodać KANAŁ ALFA - czyli warstwę przezroczystości, w której piksele można uczynić niewidocznymi. Dlatego należy dodać kanał alfa.

Pytanie 8

W języku JavaScript przedstawiona definicja jest definicją

var imiona = ["Anna", "Jakub", "Iwona", "Krzysztof"];
A. klasy.
B. kolekcji.
C. obiektu.
D. tablicy.
Dobra robota! Wybrałeś poprawną odpowiedź, czyli tablicę. W języku JavaScript, tablice służą do przechowywania wielu wartości w pojedynczej zmiennej. W podanym przykładzie, zmienna 'imiona' jest tablicą, która zawiera ciągi znaków reprezentujące imiona. Tablica w JavaScript jest obiektem globalnym, który jest używany w kontekście obiektu. Tablice są jednym z podstawowych typów danych, które są niezbędne dla tworzenia i manipulowania danymi. Tworzenie tablicy jest bardzo proste, wystarczy użyć nawiasów kwadratowych [] i oddzielić elementy za pomocą przecinków. Oto przykład: var imiona = ['Jan', 'Anna', 'Piotr'];. W praktyce, tablice są używane w wielu różnych sytuacjach, takich jak przechowywanie danych do dalszej analizy, grupowanie powiązanych danych, tworzenie list lub tabel, a także do przechowywania danych na potrzeby pętli i innych struktur sterujących.

Pytanie 9

Parametr face w znaczniku <font> jest używany do określenia

A. koloru czcionki
B. stylów czcionki
C. rozmiaru czcionki
D. typy czcionki
Zrozumienie parametrów stylizacji tekstu jest kluczowe w pracy z HTML i często napotyka na nieporozumienia. Wiele osób błędnie interpretuje funkcję parametru <b>face</b> w znaczniku <b>&lt;font&gt;</b>, co prowadzi do niepoprawnych odpowiedzi. Na przykład, nie jest on używany do określenia barwy czcionki, co jest zadaniem innego parametru, jak 'color'. Barwa czcionki dotyczy estetyki i może być ustawiana niezależnie od samej czcionki. Kolejnym błędnym założeniem jest możliwość korzystania z parametru <b>face</b> do definiowania efektów czcionki, takich jak pogrubienie czy kursywa; te efekty są zwykle osiągane przy użyciu osobnych znaczników lub stylów CSS, takich jak 'font-weight' czy 'font-style'. Wreszcie, pomylenie parametru <b>face</b> z określeniem wielkości czcionki również jest częstym błędem myślowym, ponieważ do tego celu używa się atrybutu 'size', który skoncentrowany jest na rozmiarze tekstu, a nie na jego typie. Warto pamiętać, że precyzyjne zrozumienie tych różnic nie tylko wpływa na jakość tworzonego kodu, ale również na dostępność i estetykę stron internetowych.

Pytanie 10

Które stwierdzenie dotyczy SKALOWANIA obrazu?

A. wycina fragment obrazu (kadrowanie)
B. zmienia rozmiar obrazu bez utraty istotnej zawartości
C. zmienia format zapisu, by zmienić kompresję
D. łączy lub odejmuje kształty
Skalowanie obrazu to zmiana jego ROZMIARU (powiększenie lub pomniejszenie) z zachowaniem istotnej zawartości wizualnej - całość zostaje, zmieniają się wymiary. Stosuje się je np. przy dopasowaniu zdjęcia do układu strony. Dlatego skalowanie to zmiana rozmiaru obrazu bez utraty istotnej zawartości.

Pytanie 11

Funkcja zapisana w języku PHP wygląda tak patrz ramka): Jej celem jest

Ilustracja do pytania
A. zwrócenie wartości 0, gdy liczba jest parzysta
B. wypisanie liczby nieparzystej
C. wypisanie liczby parzystej
D. zwrócenie wartości 1, gdy liczba jest parzysta
Funkcja w języku PHP jest zapisana w taki sposób że przyjmuje jeden argument liczba i sprawdza czy jest on parzysty. Używa operatora modulo % który zwraca resztę z dzielenia. Jeśli liczba podzielona przez 2 daje resztę równą 0 oznacza to że jest parzysta. W takim przypadku funkcja zwraca wartość 1. W przeciwnym razie czyli gdy liczba jest nieparzysta funkcja zwraca 0. Takie podejście jest częstym wzorcem w programowaniu gdyż pozwala na szybkie i efektywne sprawdzenie parzystości liczby. Stosowanie operatora modulo jest standardem w wielu językach programowania dzięki czemu kod jest zrozumiały i łatwo go przenieść między różnymi platformami. W praktyce takie funkcje mogą być używane w algorytmach gdzie konieczne jest filtrowanie danych na podstawie parzystości lub innych podobnych kryteriów. Dobre praktyki w kodowaniu w PHP obejmują również jasne nazywanie funkcji i zmiennych co poprawia czytelność i utrzymanie kodu. Można także zastanowić się nad rozszerzeniem funkcji o dodatkowe sprawdzania lub logikę w zależności od potrzeb projektu.

Pytanie 12

Którą funkcję z menu Kolory programu GIMP użyto, w celu uzyskania efektu przedstawionego w filmie?

A. Progowanie.
B. Barwienie.
C. Inwersja.
D. Krzywe.
Prawidłowo wskazana funkcja to „Progowanie”, bo dokładnie ona zamienia obraz kolorowy lub w odcieniach szarości na obraz dwuwartościowy: piksel jest albo czarny, albo biały, w zależności od tego, czy jego jasność przekracza ustawiony próg. W GIMP-ie znajdziesz ją w menu Kolory → Progowanie. Suwakami ustalasz zakres poziomów jasności, które mają zostać potraktowane jako „białe”, a wszystko poza tym zakresem staje się „czarne”. Efekt, który się wtedy uzyskuje, jest bardzo charakterystyczny: mocno kontrastowy, bez półtonów, coś w stylu skanu czarno-białego lub grafiki do druku na ploterze tnącym. Z mojego doświadczenia progowanie świetnie nadaje się do przygotowania logotypów, szkiców technicznych, schematów, a także do wyciągania konturów z lekko rozmytych zdjęć. Często używa się go też przed wektoryzacją, żeby program śledzący krawędzie miał wyraźne granice między czernią a bielą. W pracy z grafiką na potrzeby stron WWW próg bywa stosowany np. przy tworzeniu prostych ikon, piktogramów albo masek (maski przezroczystości można przygotować właśnie na bazie obrazu progowanego). Dobrą praktyką jest najpierw sprowadzenie obrazu do odcieni szarości i dopiero potem użycie progowania, bo wtedy masz większą kontrolę nad tym, jak rozkłada się jasność i gdzie wypadnie granica progu. Warto też pamiętać, że progowanie jest operacją destrukcyjną – traci się informacje o półtonach – więc najlepiej pracować na kopii warstwy, żeby w razie czego móc wrócić do oryginału i poprawić ustawienia progu.

Pytanie 13

Tabela Pacjenci zawiera kolumny: imie, nazwisko, wiek, lekarz_id. Aby stworzyć raport, który będzie zawierał jedynie imiona oraz nazwiska pacjentów mających mniej niż 18 lat i zapisanych do lekarza o id równym 6, można wykorzystać kwerendę SQL

A. SELECT imie, nazwisko FROM Pacjenci WHERE wiek<18 AND lekarz_id=6
B. SELECT imie, nazwisko WHERE wiek<18 AND lekarz_id=6
C. SELECT imie, nazwisko FROM Pacjenci WHERE wiek<18 OR lekarz_id=6
D. SELECT imie, nazwisko WHERE wiek<18 OR lekarz_id=6
Aby uzyskać raport z tabeli Pacjenci, w którym znajdują się wyłącznie imiona i nazwiska pacjentów poniżej 18 roku życia zapisanych do lekarza o id równym 6, należy użyć następującej kwerendy SQL: SELECT imie, nazwisko FROM Pacjenci WHERE wiek<18 AND lekarz_id=6. Kluczowe w tej kwerendzie jest zastosowanie operatora AND, który pozwala na jednoczesne spełnienie obu warunków. W SQL, operator AND łączy dwa warunki, które muszą być prawdziwe, aby dany wiersz został uwzględniony w wynikach. Operator OR byłby nieodpowiedni, ponieważ mógłby zwrócić pacjentów, którzy są młodsi niż 18 lat, ale zapisani do innych lekarzy, co nie spełnia wymagań zadania. Ta kwerenda jest zgodna z ANSI SQL, który jest standardem dla zapytań do baz danych, a także dobrze ilustruje zasady filtracji danych w kontekście relacyjnych baz danych. Przykład takiej tabeli mógłby wyglądać następująco: imie: 'Jan', nazwisko: 'Kowalski', wiek: 17, lekarz_id: 6. W tym przypadku, zapytanie zwróciłoby imię i nazwisko Jana Kowalskiego, ponieważ spełnia on oba warunki.

Pytanie 14

Które stwierdzenie na temat funkcji fun1 zapisanej w języku JavaScript jest prawdziwe?

var x = fun1(3, 24, "Mnożymy");

function fun1(a, b, c) {
    return a * b;
}
A. Ma trzy parametry wejściowe, w tym jeden typu napisowego, i zwraca wartość numeryczną.
B. Zwraca dwie wartości przechowywane w zmiennych a i b.
C. Przyjmuje trzy parametry, lecz nie zwraca wartości.
D. Ma dwa parametry liczbowe i zwraca wartość typu napisowego.
Gratulacje, Twoja odpowiedź jest poprawna. Istotą funkcji w JavaScript jest to, że mogą one przyjmować dowolną liczbę argumentów i mogą zwracać wartość. W przypadku funkcji fun1, przyjmuje ona trzy parametry: a, b, c. Parametr c jest typu napisowego, co jest istotne, ponieważ JavaScript jest językiem słabo typowanym, co oznacza, że możemy przekazywać różne typy zmiennych jako argumenty dla funkcji. Funkcja fun1 zwraca wynik mnożenia dwóch pierwszych parametrów, co jest wartością numeryczną. To jest zgodne z zasadami JavaScript, gdzie funkcje mogą zwracać dowolne wartości - w tym przypadku wartość numeryczną. W praktyce, funkcje takie jak ta mogą być używane w różnych kontekstach, na przykład do manipulacji danymi wejściowymi i zwracania przetworzonych wyników.

Pytanie 15

Aby w skrypcie JavaScript pobrać dane wpisane przez użytkownika, można posłużyć się oknem generowanym przez funkcję:

A.
confirm()
B.
document.write()
C.
alert()
D.
prompt()
Kluczowe jest to, czy dana funkcja faktycznie odbiera tekst od użytkownika, a robi to tylko jedna z nich. alert() wyświetla wyłącznie komunikat z przyciskiem OK - użytkownik może go jedynie przeczytać i zamknąć, więc do pobierania danych się nie nadaje. confirm() pokazuje pytanie z przyciskami OK i Anuluj, ale zwraca tylko wartość logiczną: true po kliknięciu OK lub false po Anuluj - nadaje się do potwierdzeń, nie do wpisywania tekstu. Z kolei document.write() działa w drugą stronę: wypisuje przekazaną treść bezpośrednio do dokumentu HTML, czyli generuje zawartość strony, a nie pozyskuje ją od odwiedzającego. Danymi wpisanymi przez człowieka zajmuje się prompt(), która wyświetla okno z polem tekstowym i zwraca wpisany ciąg znaków - dlatego to ona jest tu poprawną odpowiedzią.

Pytanie 16

Którym sposobem zapisuje się w PHP komentarz zajmujący kilka linii?

A.
#
B.
/* */
C.
//
D.
<!-- -->
Komentarz zajmujący kilka linii zapisuje się w PHP między /* a */ - wszystko w środku jest pomijane. Dlatego komentarz wieloliniowy to /* */.

Pytanie 17

Jaką wartość wyświetli się po uruchomieniu poniższego kodu JavaScript?

javascript
document.write(Math.round(4.51) + Math.pow(2, 3));
A. 11
B. 13
C. 12
D. 14
Przyjrzyjmy się innym odpowiedziom. Widać, że każda z nich ma jakieś błędy w zrozumieniu działania funkcji w kodzie. Niepoprawne odpowiedzi proponują różne sumy, ale są one wynikiem złych obliczeń. No bo na przykład, 11 wychodzi tylko z 4 + 7, ale to nie ma zastosowania w tym przypadku, bo zaokrąglanie i potęgowanie dają inne wartości. Liczba 12 mogłaby być wynikiem zaokrąglenia do 4 i zmniejszenia 8 z Math.pow(2, 3), ale to też nie zgadza się z tym, co wyszło. Z kolei 14 jako suma 6 i 8 jest mylna, bo 6 nie jest wynikiem zaokrąglenia 4.51, tylko 5. Jak analizujemy Math.round i Math.pow, to widzimy, że są zgodne z dokumentacją ECMAScript, co daje solidne podstawy do obliczeń. Jak nie rozumiemy tych funkcji, to łatwo o błędy, więc warto znać podstawowe operacje matematyczne w programowaniu.

Pytanie 18

W języku PHP wartość 1 została przypisana do zmiennej $a. Porównanie $a === $b zwraca true, gdy zmienna $b ma wartość

A. D. "1" lub '1'
B. B. '1'
C. A. *1
D. C. 1 lub '1'
W przypadku użycia operatora == w porównaniu zmiennych w PHP, może dojść do automatycznej konwersji typów, co prowadzi do niejasnych wyników. Wiele osób myśli, że porównanie zmiennej typu integer z zmienną typu string zawsze będzie zachodzić poprawnie, co jest jednym z najczęstszych błędów. Na przykład, jeśli zmienna $b jest zainicjowana wartością '1' (string), operator == zwróci true, ponieważ PHP automatycznie przekształci string na liczbę przed porównaniem. To podejście może prowadzić do nieprzewidywalnych wyników, gdy porównujemy różne typy danych, co może być źródłem błędów w bardziej złożonych aplikacjach. Ponadto, w kontekście programowania w PHP, praktyki związane z silnym typowaniem zyskują na znaczeniu, a operator === staje się preferowany, ponieważ zapewnia większą przewidywalność i bezpieczeństwo kodu. Używanie operatora == może prowadzić do sytuacji, gdzie programista nie jest świadomy, że różne typy danych są porównywane, co może skutkować nieprawidłowymi wynikami. Warto również rozważyć, że w przypadku porównania z typem string, takie jak '1', PHP zastosuje konwersję, co może prowadzić do błędów, jeśli nie jesteśmy świadomi tej konwencji. Dlatego kluczowe jest zrozumienie różnicy między tymi operatorami, aby uniknąć niezamierzonych konsekwencji w logicznych warunkach w kodzie.

Pytanie 19

Którego selektora użyć, aby odmiennie sformatować PIERWSZĄ literę akapitu?

A. selektora klasy p.first-letter
B. selektora dziecka p + first-letter
C. pseudoelementu p::first-letter
D. selektora atrybutu p [first-letter]
Pierwszą literę akapitu formatuje pseudoelement p::first-letter - pozwala np. zrobić inicjał (duża, ozdobna litera na początku). Pseudoelementy (z ::) sięgają fragmentu, którego nie ma osobnego znacznika. Zapamiętaj: ::first-letter celuje w samą pierwszą literę, bez dodatkowego HTML-a.

Pytanie 20

Aby wykonać usunięcie wszystkich zapisów z tabeli, konieczne jest użycie kwerendy

A. TRUNCATE TABLE
B. ALTER COLUMN
C. INSERT INTO
D. CREATE COLUMN
Odpowiedź 'TRUNCATE TABLE' jest poprawna, ponieważ ta kwerenda służy do usuwania wszystkich rekordów z tabeli w bazach danych SQL. W przeciwieństwie do kwerendy 'DELETE', która usuwa rekordy jeden po drugim i może być stosowana z warunkiem, 'TRUNCATE TABLE' działa na poziomie strony i usuwa wszystkie wiersze za jednym razem, co czyni ją znacznie bardziej wydajną, szczególnie w przypadku dużych zbiorów danych. Gdy wykonujemy 'TRUNCATE TABLE', wszystkie dane są usuwane, a struktura tabeli pozostaje nienaruszona, co oznacza, że możemy natychmiast dodawać nowe dane do tej samej tabeli. Ponadto, użycie 'TRUNCATE TABLE' resetuje wszelkie generatory tożsamości (IDENTITY) w tabeli. W praktyce ta metoda jest często wykorzystywana w scenariuszach, gdzie potrzebne jest szybkie zresetowanie danych w tabeli, na przykład w aplikacjach testowych lub podczas czyszczenia danych w hurtowniach danych. Warto pamiętać, że 'TRUNCATE' nie można zastosować, jeśli tabela jest powiązana z innymi tabelami przez klucze obce, co jest zgodne z zasadami integralności referencyjnej w bazach danych.

Pytanie 21

Który warunek będzie prawdziwy, gdy $a < -10 LUB $b należy do przedziału (25, 75)?

A.
($a < -10) or (($b > 25) or ($b < 75))
B.
($a < -10) and (($b > 25) or ($b < 75))
C.
($a < -10) and (($b > 25) and ($b < 75))
D.
($a < -10) or (($b > 25) and ($b < 75))
Wyrażenie ma być prawdziwe, gdy $a < -10 LUB gdy $b mieści się w przedziale (25, 75) - a przedział to dwa warunki naraz ($b > 25 i $b < 75). Łączy się je tak: ($a < -10) or (($b > 25) and ($b < 75)). Dlatego ten warunek jest poprawny.

Pytanie 22

Co powinno znaleźć się w KAŻDEJ tabeli, aby baza działała poprawnie i spójnie?

A. klucz obcy z NOT NULL i UNIQUE
B. klucz PRIMARY KEY (unikalny i niepusty)
C. klucz FOREIGN KEY z NOT NULL
D. klucze PRIMARY KEY i FOREIGN KEY
Każda tabela powinna mieć klucz główny (PRIMARY KEY) - pole o wartościach UNIKALNYCH i NIEPUSTYCH, które jednoznacznie identyfikuje każdy wiersz. Bez niego trudno odróżnić rekordy i utrzymać spójność. Dlatego w każdej tabeli potrzebny jest klucz główny.

Pytanie 23

W wyniku przedstawionego polecenia w tabeli zostanie

ALTER TABLE nazwa1 ADD nazwa2 DOUBLE NOT NULL;
A. dodana kolumna nazwa2 o typie zmiennoprzecinkowym
B. zmieniona kolumna z nazwa1 na nazwa2
C. zmieniony typ kolumny nazwa2 na DOUBLE
D. dodana kolumna nazwa2 z wymuszoną wartością DOUBLE
Odpowiedź numer 3 jest prawidłowa, ponieważ zapytanie SQL "ALTER TABLE nazwa1 ADD nazwa2 DOUBLE NOT NULL;" definiuje dodanie nowej kolumny o nazwie "nazwa2" do istniejącej tabeli "nazwa1". Typ danych DOUBLE oznacza, że kolumna ta będzie mogła przechowywać liczby zmiennoprzecinkowe, co jest przydatne w przypadku danych wymagających wysokiej precyzji, takich jak wartości finansowe czy pomiary naukowe. Oprócz tego, klauzula "NOT NULL" oznacza, że w kolumnie nie mogą znajdować się żadne wartości NULL, co jest istotne dla zapewnienia integralności danych. W praktyce, dodawanie kolumn w bazach danych jest często używane do wzbogacania istniejących struktur danych, aby dostosować je do zmieniających się wymagań aplikacji. Dobrą praktyką jest również odpowiednie indeksowanie nowych kolumn, aby zwiększyć wydajność zapytań, które będą z nich korzystały. W kontekście standardów, ważne jest, aby zmiany w strukturze tabeli były wprowadzane w sposób, który nie wpływa negatywnie na istniejące dane i aplikacje.

Pytanie 24

Wskaż zapytanie, które z tabeli klienci wybierze tylko nazwiska trzech najlepszych klientów, czyli tych, którzy mają najwięcej punktów na swoim koncie (pole całkowite punkty)?

A. SELECT nazwisko FROM klienci ORDER BY nazwisko DESC LIMIT 3
B. SELECT nazwisko FROM klienci LIMIT 3
C. SELECT nazwisko FROM klienci ORDER BY punkty DESC LIMIT 3
D. SELECT LIMIT 3 nazwisko FROM klienci ORDER BY nazwisko DESC
Wybór kwerendy SELECT nazwisko FROM klienci ORDER BY punkty DESC LIMIT 3 jest poprawny, ponieważ wykorzystuje klauzulę ORDER BY w celu posortowania wyników na podstawie kolumny 'punkty' w porządku malejącym. Dzięki temu, najpierw wyświetlone zostaną rekordy z najwyższą liczbą punktów. Zastosowanie LIMIT 3 oznacza, że z całej posortowanej listy, wybierane są jedynie trzy rekordy, co idealnie odpowiada wymaganiu znalezienia trzech najlepszych klientów. Takie podejście jest zgodne z dobrymi praktykami w programowaniu SQL, ponieważ pozwala na precyzyjne wydobycie danych z bazy, a także na efektywne zarządzanie wynikami zapytań. Przykład zastosowania to sytuacja, gdy firma chce nagrodzić swoich najlepszych klientów na podstawie ich aktywności, co może przyczynić się do zwiększenia ich lojalności. W kontekście analizy danych, zrozumienie, jak korzystać z klauzul ORDER BY i LIMIT, jest kluczowe dla optymalizacji zapytań oraz interpretacji wyników.

Pytanie 25

Co oznacza akronim ACID w kontekście transakcji bazodanowych?

A. atomic, consistent, iss, dependable
B. atomic, constraint, isolated, dependable
C. atomic, consistent, isolated, durable
D. atomic, comming, is, do
ACID to cztery właściwości poprawnej transakcji bazodanowej: Atomicity (atomowość - transakcja wykonuje się w całości albo wcale), Consistency (spójność - baza przechodzi z jednego poprawnego stanu w drugi), Isolation (izolacja - równoległe transakcje nie zakłócają się wzajemnie) i Durability (trwałość - zatwierdzone zmiany przetrwają nawet awarię). Dlatego ACID to atomic, consistent, isolated, durable.

Pytanie 26

Które z pól edycyjnych zostało przedstawione w opisanym stylu, zakładając, że pozostałe atrybuty pola mają wartości domyślne, a użytkownik wpisał imię Krzysztof w przeglądarce?

Ilustracja do pytania
A. Pole 1
B. Pole 3
C. Pole 4
D. Pole 2
Dobrze, że dopasowałeś Pole 2 do stylu z kodu CSS. Widać, że dobrze ogarniasz te rzeczy! Ten padding 10px, co dałeś, naprawdę robi różnicę. Dzięki temu tekst ma więcej przestrzeni wokół siebie. A kolor tła Teal? Super wybór, bo to taki fajny pośredni odcień między niebieskim a zielonym. Biały tekst na tym tle jest świetnie widoczny, co jest mega ważne. No i brak obramowania, czyli border none, dodaje nowoczesności! Zaokrąglenie krawędzi, które ustawiłeś na 7px, sprawia, że pole wygląda przyjemniej. Takie rzeczy są często stosowane, by przygotować interfejsy, które są estetyczne i funkcjonalne. Jak projektujesz, pamiętaj o kontrastach, bo to naprawdę podnosi jakość aplikacji. Troska o estetykę i użyteczność to kluczowa sprawa. Dobra robota!

Pytanie 27

Sklep online używa tabeli faktury. W trakcie generowania faktury pole dataPlatnosci nie zawsze zostaje uzupełnione. Aby to skorygować, na zakończenie dnia trzeba wpisać bieżącą datę do rekordów, w których to pole nie jest wypełnione. Można to osiągnąć za pomocą kwerendy

A. UPDATE faktury SET dataPlatnosci=CURTIME() WHERE id = 3;
B. UPDATE faktury SET dataPlatnosci=CURTIME() WHERE dataPlatnosci IS NOT NULL;
C. UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataplatnosci = '0000-00-00';
D. UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataPlatnosci IS NULL;
Odpowiedź, którą wybrałeś, jest jak najbardziej trafna. Kwerenda UPDATE faktury SET dataPlatnosci=CURDATE() WHERE dataPlatnosci IS NULL rzeczywiście aktualizuje pole dataPlatnosci w tabeli faktur, ale tylko wtedy, gdy jest ono puste. Super, że korzystasz z CURDATE(), bo to daje nam bieżącą datę. W SQL ważne jest, żeby nie tracić czasu na aktualizowanie wierszy, które już mają datę. Dobrze widzieć, że zastosowałeś IS NULL, bo to pozwala uniknąć kłopotów z porównywaniem dat i wydobywaniem takich wartości jak '0000-00-00', co na pewno by namieszało z interpretacją. Twoje podejście jest zgodne z tym, co powinno być w bazach danych – minimalizowanie zbędnych danych i dbanie o ich spójność. Z mojego doświadczenia, zawsze lepiej korzystać z funkcji datowych, bo to pozwala mieć pewność, że wprowadzane wartości są aktualne i pasują do reszty aplikacji.

Pytanie 28

Którego słowa kluczowego SQL należy użyć, aby w wyniku zapytania wyeliminować powtarzające się wartości?

A.
ORDER BY
B.
LIKE
C.
DISTINCT
D.
GROUP BY
Aby w wyniku zapytania usunąć powtarzające się wartości, używa się słowa DISTINCT (np. SELECT DISTINCT miasto FROM ...). Zwraca ono tylko unikalne wartości wskazanych kolumn. Dlatego duplikaty eliminuje DISTINCT.

Pytanie 29

Zamieszczone zapytanie SQL przyznaje prawo SELECT:

GRANT SELECT ON hurtownia.* TO 'sprzedawca'@'localhost';
A. dla użytkownika root na serwerze localhost
B. do wszystkich kolumn w tabeli hurtownia
C. dla użytkownika root na serwerze sprzedawca
D. do wszystkich tabel w bazie hurtownia
Polecenie GRANT SELECT ON hurtownia.* TO sprzedawca@localhost; jest często źle interpretowane co prowadzi do błędnego przypisania uprawnień. Częstym problemem jest mylne przekonanie, że przyznanie uprawnień do wszystkich pól w tabeli oznacza to samo co do wszystkich tabel. Symbol * w poleceniu odnosi się do wszystkich tabel w bazie hurtownia a nie do wszystkich pól pojedynczej tabeli. To ważne rozróżnienie wpływa na sposób przyznawania i zarządzania uprawnieniami w kontekście bezpieczeństwa i dostępu do danych. Błędna interpretacja że uprawnienie dotyczy użytkownika root jest wynikiem niezrozumienia konwencji dotyczącej składni SQL gdzie specyficzna definicja użytkownika pojawia się po słowie TO w naszym przypadku jest to sprzedawca@localhost. To wyklucza użytkownika root z opcji możliwych odbiorców tego uprawnienia. Warto zwrócić uwagę że identyfikacja użytkownika sprzedawca@localhost jednoznacznie określa użytkownika działającego z lokalnego serwera a nie z dowolnego hosta co jest istotne z punktu widzenia bezpieczeństwa systemu. Zrozumienie tych niuansów jest kluczowe dla efektywnego zarządzania bazami danych i ochrony przed nieautoryzowanym dostępem. W praktyce przyznanie uprawnień powinno być starannie rozważone i dostosowane do potrzeb zgodnie z zasadą najmniejszych uprawnień co minimalizuje ryzyko błędów i nadużyć systemowych.

Pytanie 30

Co realizuje funkcja COUNT w SQL?

A. obliczanie wartości bezwzględnej
B. zliczanie rekordów (wierszy) wybranych kwerendą
C. obliczanie średniej w kolumnie
D. zliczanie znaków w polu tekstowym
Funkcja agregująca COUNT zlicza REKORDY (wiersze) zwrócone przez kwerendę - np. COUNT(*) poda liczbę wszystkich wierszy spełniających warunki. Dlatego COUNT zlicza rekordy wybrane kwerendą.

Pytanie 31

Jaką formę ma instrukcja w języku PHP, która tworzy obiekt pkt w klasy Punkt zdefiniowanej w klasie?

Ilustracja do pytania
A. Punkt() pkt;
B. pkt= new Punkt();
C. pkt Punkt();
D. pkt Punkt;
W języku PHP każda z podanych niepoprawnych opcji wynika z niewłaściwego zrozumienia konstrukcji obiektowej. Pierwszy błąd polega na próbie inicjalizacji obiektu przy użyciu składni pkt Punkt;, która jest niepoprawna, gdyż nie wykorzystuje słowa kluczowego new obowiązkowego podczas tworzenia instancji klasy. Taka składnia przypomina deklarację zmiennych typów prostych, co nie znajduje zastosowania w kontekście obiektowym. Innym powszechnym nieporozumieniem jest myślenie, że pkt Punkt(); jest poprawne, co sugeruje funkcję, jednakże PHP wymaga jawnego użycia new. Kolejna błędna koncepcja to Punkt() pkt;, która zdaje się używać składni funkcji z przypisaniem, co również jest niezgodne z semantyką PHP dla obiektów. Tego typu błędy często wynikają z prób zastosowania logiki innych języków programowania lub z niewłaściwej interpretacji składni PHP. Zrozumienie różnicy między deklaracją zmiennej a tworzeniem obiektu jest kluczowe dla efektywnego programowania obiektowego. Aby uniknąć takich błędów, warto zwrócić uwagę na dokumentację i praktykować pisanie kodu zgodnie z konwencjami przyjętymi w PHP, co nie tylko zwiększa czytelność kodu, ale także ułatwia późniejsze jego modyfikacje oraz integrację z większymi systemami. Poprawne zrozumienie konstrukcji obiektowej jest fundamentalne dla każdego programisty PHP, szczególnie w kontekście tworzenia aplikacji skalowalnych i łatwych do zarządzania.

Pytanie 32

Który atrybut należy dodać do znacznika <video>, aby wyciszyć dźwięk odtwarzanego w przeglądarce filmu?

<video>
    <source src="film.mp4" type="video/mp4">
</video>
A. loop
B. muted
C. autoplay
D. controls
Twoja odpowiedź jest poprawna. Atrybut 'muted' jest używany w znaczniku <video>, aby wyłączyć dźwięk dla filmu wyświetlanego w przeglądarce. Jest to sposób na sterowanie dźwiękiem bez konieczności korzystania z dodatkowych elementów kontrolujących odtwarzanie filmu. Jest to bardzo przydatne, gdy chcemy, aby film był odtwarzany w tle bez zakłócania użytkownika dźwiękiem, co jest często stosowane na stronach internetowych. Ważne jest to, że to atrybut 'muted' jest odpowiedzialny za początkowy stan dźwięku filmu, a nie za to, czy użytkownik będzie mógł go później włączyć. Dodatkowo, dobrą praktyką jest pozostawienie użytkownikowi możliwości sterowania dźwiękiem, nawet jeśli jest on domyślnie wyłączony, co można osiągnąć dodając atrybut 'controls'.

Pytanie 33

W języku JavaScript funkcja getElementById() odnosi się do

A. zmiennej liczbowej
B. elementu HTML o określonym id
C. klasy zdefiniowanej w CSS
D. elementu HTML o wskazanej nazwie klasy
Metoda getElementById() jest jedną z najczęściej używanych funkcji w JavaScript, która pozwala na bezpośrednie odwołanie się do elementu DOM (Document Object Model) za pomocą atrybutu id. Gdy wywołujemy tę metodę, przekazujemy jej jako argument ciąg znaków odpowiadający wartości atrybutu id danego elementu HTML. Przykładowo, jeśli mamy znacznik `<div id='myDiv'></div>`, możemy uzyskać do niego dostęp za pomocą `document.getElementById('myDiv')`. Jest to bardzo efektywny sposób na manipulowanie elementami strony, umożliwiający m.in. zmianę ich zawartości, stylu czy atrybutów. Dzięki tej metodzie programiści mogą szybko i łatwo modyfikować interfejs użytkownika oraz reagować na zdarzenia, co jest zgodne z zasadami responsywnego projektowania i tworzenia dynamicznych aplikacji webowych. Warto również pamiętać, że użycie unikalnych identyfikatorów w HTML jest zgodne z dobrymi praktykami, ponieważ pozwala na łatwiejszą nawigację po strukturze dokumentu i unika konfliktów z innymi elementami.

Pytanie 34

Przedstawiony w ramce fragment kwerendy SQL ma za zadanie wybrać

SELECT COUNT(wartosc) FROM ...
A. średnią w kolumnie wartosc.
B. liczbę kolumn.
C. liczbę wierszy.
D. sumę w kolumnie wartosc.
Funkcja COUNT() w SQL bardzo często bywa mylona z innymi funkcjami agregującymi, takimi jak SUM() czy AVG(), i stąd biorą się nietrafione interpretacje tego typu zapytań. Trzeba jasno podkreślić: COUNT(wartosc) nie zwraca ani liczby kolumn, ani sumy wartości, ani średniej. Zlicza wiersze, w których dana kolumna ma ustawioną jakąś wartość, czyli nie jest NULL. To jest operacja na rekordach, a nie na strukturze tabeli. Liczba kolumn w tabeli jest cechą schematu bazy danych i jej się nie wyciąga funkcją COUNT() w taki sposób; do tego służą metadane systemowe, np. odpowiednie zapytania do information_schema w systemach zgodnych ze standardem SQL. Mylenie COUNT z operacjami na strukturze wynika często z intuicji, że „liczę coś w SELECT, więc może kolumny”, ale SQL tak nie działa. Z kolei oczekiwanie, że COUNT(wartosc) policzy sumę lub średnią, bierze się z mieszania pojęć między różnymi funkcjami agregującymi. SUM(wartosc) faktycznie dodaje wszystkie nie-NULL wartości w danej kolumnie, a AVG(wartosc) oblicza z nich średnią arytmetyczną. COUNT natomiast w ogóle nie zagląda do treści liczbowej czy tekstowej, interesuje go tylko, czy wiersz ma wartość, czy ma NULL. Typowy błąd myślowy polega na tym, że ktoś widzi w SELECT jakąś nazwę funkcji i kolumnę w nawiasie i automatycznie zakłada, że wynik będzie „jakimś przetworzeniem” danych – sumą, średnią, czymś w tym stylu. Tymczasem w SQL każda funkcja ma bardzo precyzyjnie zdefiniowane działanie i trzeba znać różnice. Dobre praktyki mówią, żeby zawsze dobierać funkcję agregującą do konkretnego pytania biznesowego: jeśli pytasz „ile rekordów?”, używasz COUNT; jeśli „jaka jest łączna wartość?”, wtedy SUM; jeśli „jaka jest przeciętna wartość?”, wtedy AVG. Warto też pamiętać o różnicy między COUNT(*) a COUNT(kolumna), bo to kolejna pułapka: pierwsze liczy wszystkie wiersze, nawet z NULL-ami, drugie tylko te z uzupełnioną wartością. Świadome korzystanie z tych funkcji to podstawa rzetelnej analizy danych w każdej profesjonalnej bazie.

Pytanie 35

Wyjątkowa metoda przynależąca do danej klasy w programowaniu obiektowym, która jest automatycznie wywoływana w momencie tworzenia obiektu i zazwyczaj ma na celu inicjalizację pól, to

A. specyfikator dostępu
B. obiekt
C. konstruktor
D. destruktor
Konstruktor to specjalna metoda, która jest wywoływana automatycznie w momencie tworzenia nowego obiektu danej klasy. Jego głównym celem jest zainicjowanie pól obiektu oraz, w razie potrzeby, wykonanie dodatkowych działań konfiguracyjnych. W praktyce konstruktor umożliwia przygotowanie obiektu do dalszego użytkowania. Na przykład, w języku Java, konstruktor o nazwie klasy pozwala na tworzenie instancji tej klasy z określonymi wartościami dla pól. Dobre praktyki wskazują, że konstruktor powinien być używany do przekazywania parametrów, które są niezbędne do prawidłowego działania obiektu. Warto również wspomnieć o koncepcji konstruktorów przeciążonych, która pozwala na definiowanie wielu konstruktorów w jednej klasie, umożliwiając różne sposoby inicjalizacji obiektów. To sprawia, że kod jest bardziej elastyczny i czytelny, co jest zgodne z zasadami programowania obiektowego i dobrymi praktykami inżynierii oprogramowania.

Pytanie 36

Narzędziem do zarządzania bazą danych, które jest zintegrowane w pakiecie XAMPP, jest

A. phpMyAdmin
B. SQLite
C. pgAdmin
D. MySQL Workbench
phpMyAdmin jest popularnym narzędziem wbudowanym w pakiet XAMPP, które służy do zarządzania bazą danych MySQL. Umożliwia użytkownikom łatwe wykonywanie operacji takich jak tworzenie, edytowanie i usuwanie baz danych oraz tabel, a także zarządzanie użytkownikami i uprawnieniami. Interfejs phpMyAdmin jest oparty na przeglądarkach internetowych, co sprawia, że jego obsługa jest intuicyjna nawet dla osób bez zaawansowanej wiedzy technicznej. Przykładowo, można szybko importować lub eksportować dane w różnych formatach, takich jak SQL, CSV czy XML, co jest niezwykle przydatne podczas migracji danych między różnymi środowiskami. Standardy dobrych praktyk przewidują korzystanie z narzędzi takich jak phpMyAdmin w celu minimalizacji ryzyka błędów manualnych, a także w celu zwiększenia efektywności pracy z bazami danych. Dzięki phpMyAdmin, użytkownicy mogą również łatwo monitorować wydajność bazy danych i optymalizować zapytania, co jest kluczowe dla utrzymania wysokiej jakości aplikacji webowych.

Pytanie 37

Przedstawiony fragment kodu PHP ma za zadanie umieścić dane znajdujące się w zmiennych $a, $b, $c w bazie danych, w tabeli dane. Tabela dane zawiera cztery pola, z czego pierwsze to autoinkrementowany klucz główny. Które z poleceń powinno być przypisane do zmiennej $zapytanie?

<?php
...
$zapytanie = "...";
mysqli_query($db, $zapytanie);
...
?>
A. SELECT NULL, '$a', '$b', '$c' FROM dane;
B. INSERT INTO dane VALUES ('$a', '$b', '$c');
C. SELECT '$a', '$b', '$c' FROM dane;
D. INSERT INTO dane VALUES (NULL, '$a', '$b', '$c');
Właściwe polecenie to 'INSERT INTO dane VALUES (NULL, '$a', '$b', '$c');'. Użycie NULL w pierwszym polu pozwala na automatyczne ustawienie wartości klucza głównego, co jest zgodne z zasadą autoinkrementacji w bazach danych. Wartości zmiennych $a, $b i $c są wstawiane do kolejnych pól tabeli, co jest standardową praktyką w przypadku dodawania nowych rekordów do bazy danych. Dobrą praktyką jest również stosowanie przygotowanych zapytań, aby zminimalizować ryzyko ataków typu SQL injection. Można to osiągnąć za pomocą funkcji mysqli_prepare, co zwiększa bezpieczeństwo aplikacji. W kontekście standardów branżowych, PostgreSQL oraz MySQL stosują podobne zasady dotyczące wstawiania danych, co czyni tę wiedzę uniwersalną dla różnych systemów zarządzania bazami danych. Warto również zrozumieć, że wstawianie danych bezpośrednio przy użyciu zmiennych bez walidacji może prowadzić do błędów, dlatego zaleca się ich odpowiednie przetwarzanie przed wykonaniem zapytania.

Pytanie 38

Która cecha wyróżnia format PNG?

A. brak obsługi kanału alfa
B. obsługa animacji
C. reprezentacja grafiki wektorowej
D. kompresja bezstratna
PNG wyróżnia kompresja BEZSTRATNA - zmniejsza rozmiar pliku bez utraty jakości, dzięki czemu format nadaje się do grafik z ostrymi krawędziami, logo i przezroczystością (obsługuje kanał alfa). Dlatego cechą PNG jest kompresja bezstratna.

Pytanie 39

W SQL, aby zmienić dane w tabeli, wykorzystuje się instrukcję

A. CREATE
B. SELECT
C. JOIN
D. UPDATE
Odpowiedź 'UPDATE' jest poprawna, ponieważ w języku SQL polecenie to służy do modyfikacji danych w istniejących rekordach tabeli. Umożliwia aktualizację wartości w jednym lub więcej polach w wybranych wierszach, których identyfikacja może być dokonana poprzez zastosowanie klauzuli WHERE. Na przykład, aby zaktualizować nazwisko użytkownika w tabeli 'Użytkownicy', można użyć polecenia: 'UPDATE Użytkownicy SET nazwisko = 'NoweNazwisko' WHERE id = 1;'. Dobrą praktyką jest zawsze uwzględnienie klauzuli WHERE, aby uniknąć przypadkowego zaktualizowania wszystkich rekordów w tabeli. Polecenie UPDATE jest częścią standardu SQL i szeroko stosowane w codziennej pracy z bazami danych, co czyni je kluczowym narzędziem w zarządzaniu danymi. Warto również pamiętać, że przed wykonaniem aktualizacji zaleca się wykonanie kopii zapasowej danych, aby zabezpieczyć się przed niezamierzonymi zmianami.

Pytanie 40

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

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