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: 12 czerwca 2026 10:35
  • Data zakończenia: 12 czerwca 2026 10:43

Egzamin niezdany

Wynik: 11/40 punktów (27,5%)

Wymagane minimum: 20 punktów (50%)

Udostępnij swój wynik
Szczegółowe wyniki:
Pytanie 1

Aby podczas tworzenia tabeli zdefiniować klucz obcy na wielu kolumnach, należy użyć zapisu:

A.
CONSTRAINT (nazwisko, imie) FOREIGN KEY REFERENCES osoby (nazwisko, imie)
B.
CONSTRAINT (nazwisko, imie) FOREIGN REFERENCES KEY osoby (nazwisko, imie)
C.
CONSTRAINT fk_osoba_uczen FOREIGN KEY(nazwisko, imie) REFERENCES osoby (nazwisko, imie)
D.
CONSTRAINT fk_osoba_uczen FOREIGN KEY ON(nazwisko, imie) REFERENCES osoby (nazwisko, imie)
Pozostałe zapisy łamią składnię definicji klucza obcego. W dwóch brakuje listy kolumn zaraz po FOREIGN KEY albo przestawiono słowa kluczowe (FOREIGN REFERENCES KEY zamiast FOREIGN KEY ... REFERENCES) - serwer odrzuci je jako błąd. W jeszcze innym po FOREIGN KEY dopisano zbędne ON, którego w tej konstrukcji nie ma. Prawidłowy wielokolumnowy klucz obcy to CONSTRAINT nazwa FOREIGN KEY(kolumny) REFERENCES tabela(kolumny), dlatego to ten zapis jest poprawny.

Pytanie 2

Do czego służy polecenie DROP w SQL?

A. do usunięcia istniejącego obiektu (np. tabeli)
B. do zmiany parametrów obiektu
C. do aktualizacji danych obiektu
D. do dodania nowego obiektu
Polecenie DROP USUWA istniejący obiekt bazy - np. DROP TABLE kasuje tabelę, DROP DATABASE bazę, DROP VIEW widok. To operacja nieodwracalna. Dlatego pierwsza odpowiedź jest poprawna.

Pytanie 3

Jakie informacje z ośmiu wpisanych rekordów w tabeli zwierzęta zostaną przedstawione w wyniku wykonania wskazanej instrukcji SQL?

Ilustracja do pytania
A. Dika, Fuks
B. Figaro, Dika, Fuks
C. Fafik, Brutus, Dika, Fuks
D. Anna Kowalska, Jan Nowak
Zapytanie SQL SELECT imie FROM zwierzeta WHERE rodzaj = 2 AND szczepienie = 2016; filtruje wyniki według dwóch kryteriów: rodzaj musi być równy 2 i rok szczepienia musi być 2016. W danych mamy kilka zwierząt, ale tylko Dika i Fuks spełniają oba te warunki. Dika i Fuks mają rodzaj równy 2 oraz rok szczepienia 2016, co czyni je jedynymi zwierzętami w tabeli spełniającymi te kryteria. Zrozumienie tego typu zapytań wymaga znajomości składni SQL oraz logiki warunkowej. W praktyce stosowanie filtrów WHERE to jedna z podstawowych technik selekcji danych umożliwiająca precyzyjne wyciąganie rekordów z dużych zbiorów danych. Warto również zaznaczyć, że poprawne używanie takich zapytań w pracy zawodowej jest niezbędne dla zapewnienia jakości i wydajności procesów związanych z bazami danych. Wiedza ta jest kluczowa w wielu branżach, w których przetwarzanie dużych ilości danych jest codziennością.

Pytanie 4

Co stanie się z polem, dla którego w CREATE TABLE użyto klauzuli PRIMARY KEY?

A. stanie się kluczem obcym
B. stanie się indeksem klucza
C. stanie się indeksem unikalnym
D. stanie się kluczem podstawowym (głównym)
Klauzula PRIMARY KEY w poleceniu CREATE TABLE sprawia, że dane pole staje się kluczem PODSTAWOWYM (głównym) tabeli - jednoznacznie identyfikuje każdy wiersz, jest unikalny i nie może być pusty (NULL). Baza automatycznie zakłada na nim indeks. Dlatego pole z PRIMARY KEY staje się kluczem podstawowym.

Pytanie 5

W języku MySQL należy wykorzystać polecenie REVOKE, aby użytkownikowi anna cofnąć możliwość wprowadzania zmian wyłącznie w definicji struktury bazy danych. Polecenie, które służy do odebrania tych uprawnień, ma następującą formę

A. REVOKE ALL ON tabela1 FROM 'anna'@'localhost'
B. REVOKE CREATE ALTER DROP ON tabela1 FROM 'anna'@'localhost'
C. REVOKE CREATE UPDATE DROP ON tabela1 FROM 'anna'@'localhost'
D. REVOKE CREATE INSERT DELETE ON tabela1 FROM 'anna'@'localhost'
Polecenie REVOKE w MySQL jest używane do odbierania przydzielonych uprawnień użytkownikom. W przypadku użytkownika 'anna', aby odebrać mu prawa do modyfikacji struktury bazy danych, należy użyć polecenia REVOKE z odpowiednimi uprawnieniami. Wybór REVOKE CREATE ALTER DROP jest poprawny, ponieważ obejmuje kluczowe prawa związane z zarządzaniem strukturą tabeli. Uprawnienie CREATE pozwala na tworzenie nowych obiektów, ALTER umożliwia modyfikację istniejących obiektów, a DROP pozwala na ich usuwanie. Przydzielając te uprawnienia, użytkownik ma pełną kontrolę nad strukturą bazy danych. Odbierając te uprawnienia, ograniczamy możliwości użytkownika do modyfikacji struktury, co jest kluczowe w kontekście zarządzania bezpieczeństwem bazy danych i zapewnienia integralności danych. Przykładem zastosowania tego polecenia może być sytuacja, w której administrator bazy danych chce, aby użytkownik miał jedynie prawa do wprowadzania danych, ale nie do zmiany ich struktury. W takich przypadkach ważne jest, aby precyzyjnie definiować uprawnienia użytkowników, co może pomóc w unikaniu nieautoryzowanych zmian i potencjalnych utrat danych. Należy również odwołać się do standardów SQL, które definiują zarządzanie uprawnieniami w obiektach bazy danych, co jest kluczowym elementem każdego systemu zarządzania bazą danych.

Pytanie 6

Jaka forma zabezpieczenia dostępu do tabel i kwerend działa w MS Access?

A. stosowanie makr
B. przypisanie uprawnień użytkownikom
C. określanie przestrzeni tabel
D. limity przestrzeni dyskowej
W MS Access zabezpieczenie dostępu do obiektów bazy (tabel, kwerend, formularzy) opiera się na nadawaniu UPRAWNIEŃ konkretnym użytkownikom lub grupom - określa się, kto może dany obiekt odczytać, modyfikować czy projektować. To typowy dla baz danych mechanizm kontroli dostępu. Dlatego formą zabezpieczenia w MS Access jest przypisanie uprawnień użytkownikom.

Pytanie 7

Jak nazywa się platforma wspierająca tworzenie oprogramowania w technologii .NET?

A. db2
B. eclipse
C. framework
D. middleware
Platformą wspierającą tworzenie oprogramowania w technologii .NET jest framework (.NET Framework) - zestaw bibliotek, narzędzi i środowiska uruchomieniowego, który dostarcza gotowych komponentów i upraszcza budowę aplikacji. Framework w ogóle to „szkielet” narzucający strukturę i udostępniający gotowe rozwiązania. Dlatego platformą .NET jest framework.

Pytanie 8

Aby wykonać kopię zapasową bazy danych w MySQL, jakie polecenie należy zastosować?

A. mysqlslap
B. mysqldump
C. mysqlcheck
D. mysqlreplicate
Polecenie mysqldump jest standardowym narzędziem w systemie MySQL, które służy do tworzenia kopii zapasowych baz danych. Umożliwia on eksportowanie danych oraz struktury wszystkich tabel w postaci pliku tekstowego, co sprawia, że jest niezwykle przydatny przy przeprowadzaniu migracji, aktualizacji lub przywracania danych. Przykładowe użycie mysqldump może wyglądać następująco: 'mysqldump -u użytkownik -p nazwa_bazy_danych > kopia_zapasowa.sql', co tworzy plik o nazwie 'kopia_zapasowa.sql' zawierający wszystkie dane i strukturę wskazanej bazy. Dobrą praktyką jest regularne tworzenie kopii zapasowych, szczególnie przed wprowadzeniem istotnych zmian w schemacie bazy danych lub podczas aktualizacji systemu. Ponadto, mysqldump umożliwia także eksportowanie danych w formacie CSV, co ułatwia ich dalszą analizę lub przeniesienie do innych systemów. Warto także pamiętać, że polecenie to oferuje różnorodne opcje, takie jak --single-transaction, które zapewniają spójność danych podczas tworzenia kopii zapasowej w bazach danych o dużym ruchu.

Pytanie 9

Przy użyciu komendy ALTER TABLE można

A. zmienić dane w rekordach
B. zmodyfikować strukturę tabeli
C. usunąć dane z rekordu
D. skasować tabelę
Kiedy mówimy o poleceniu ALTER TABLE w SQL, to jest to naprawdę ważne narzędzie, które pozwala na zmianę struktury tabeli w bazie danych. Możemy dzięki niemu dodać nowe kolumny, zmienić rodzaj danych w istniejących czy nawet usunąć niepotrzebne kolumny. Na przykład, gdybyśmy chcieli dodać kolumnę 'data_urodzenia' do tabeli 'pracownicy', to musielibyśmy użyć takiego polecenia: ALTER TABLE pracownicy ADD data_urodzenia DATE;. To wszystko jest kluczowe, żeby nasze aplikacje mogły się rozwijać i żeby baza danych spełniała coraz to nowe wymagania. Z mojego doświadczenia wynika, że najlepiej jest zawsze robić kopię zapasową danych przed wprowadzeniem jakichkolwiek zmian. Dobrze by też było testować zmiany w środowisku, które nie jest produkcyjne, zanim coś popsujemy. Warto pamiętać, że niektóre operacje mogą wymagać zablokowania tabeli, co może skutkować tym, że użytkownicy nie będą mogli korzystać z systemu, więc trzeba to mieć na uwadze.

Pytanie 10

Które polecenie SQL usunie bazę danych o nazwie firma?

A.
DROP firma;
B.
ALTER firma DROP;
C.
DROP DATABASE firma;
D.
ALTER firma DROP DATABASE;
Bazę danych usuwa polecenie DROP DATABASE nazwa;, np. DROP DATABASE firma; skasuje bazę „firma” wraz ze wszystkimi tabelami i danymi. To operacja nieodwracalna - warto wcześniej zrobić kopię. Analogicznie tabelę usuwa DROP TABLE. Dlatego poprawne jest DROP DATABASE firma;.

Pytanie 11

Jaką funkcję w języku PHP należy wykorzystać, aby nawiązać połączenie z bazą danych o nazwie zwierzaki?

A. $polacz = db_connect('localhost', 'root','','zwierzaki')
B. $polacz = sql_connect('localhost', 'root','','zwierzaki')
C. $polacz = server_connect('localhost', 'root','','zwierzaki')
D. $polacz = mysqli_connect('localhost', 'root','','zwierzaki')
Odpowiedź $polacz = mysqli_connect('localhost', 'root','','zwierzaki'); jest poprawna, ponieważ używa funkcji mysqli_connect, która jest standardowym sposobem nawiązywania połączenia z bazą danych MySQL w PHP. Funkcja ta pozwala na określenie hosta, użytkownika, hasła oraz nazwy bazy danych, co jest niezbędne do skutecznego nawiązania połączenia. Mysqli jest rozszerzeniem PHP przeznaczonym do pracy z bazami danych MySQL, wprowadzającym nowe funkcjonalności w porównaniu do starszego mysql. Ponadto, mysqli_connect obsługuje zarówno połączenia proceduralne, jak i obiektowe, co daje programistom elastyczność w wyborze stylu programowania. Przykładowo, po poprawnym połączeniu, można wykonywać zapytania do bazy danych w sposób zorganizowany, co sprzyja tworzeniu aplikacji webowych. Należy również pamiętać o dobrych praktykach, takich jak użycie try-catch do obsługi błędów przy nawiązywaniu połączenia, co zapewnia stabilność i niezawodność aplikacji. Stosowanie mysqli jest obecnie zalecane w dokumentacji PHP, a także w praktyce branżowej.

Pytanie 12

W systemie baz danych stworzono tabelę Mieszkancy zawierającą informacje. Aby usunąć tę tabelę wraz z danymi, należy użyć komendy

A. DROP TABLE Mieszkancy;
B. DELETE FROM Mieszkancy;
C. ALTER TABLE Mieszkancy;
D. TRUNCATE TABLE Mieszkancy;
Polecenie 'DROP TABLE Mieszkancy;' jest właściwym sposobem na usunięcie tabeli wraz z jej zawartością w bazie danych. To polecenie nie tylko usuwa tabelę, ale również wszystkie dane, które w niej się znajdują oraz wszelkie powiązania, takie jak klucze obce. W praktyce, gdy programista chce całkowicie wyeliminować strukturę tabeli oraz jej dane, wykorzystuje 'DROP TABLE'. Jest to szczególnie przydatne w sytuacjach, gdy tabela nie jest już potrzebna w systemie, a jej usunięcie pozwala na zwolnienie zasobów oraz uproszczenie struktury bazy danych. Warto również pamiętać, że przed wykonaniem tego polecenia warto stworzyć kopię zapasową danych, jeśli są one istotne, ponieważ operacja ta jest nieodwracalna. Ponadto, zgodnie z zasadami dobrych praktyk, przed usunięciem tabeli należy upewnić się, że nie ma na nią żadnych zależności w innych częściach bazy danych, aby uniknąć potencjalnych problemów z integralnością danych.

Pytanie 13

Jakie są wyniki wykonania zapytania SQL?

SELECT count(*) FROM Uczniowie WHERE srednia=5;
A. średnia wszystkich ocen uczniów
B. łączna liczba uczniów
C. ilość uczniów, których średnia ocen wynosi 5
D. suma ocen uczniów z średnią 5

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zapytanie SQL używa funkcji COUNT aby policzyć liczbę rekordów w tabeli Uczniowie spełniających warunek srednia=5 Klauzula WHERE ogranicza zestaw zliczanych rekordów do tych gdzie średnia ocen ucznia wynosi dokładnie 5 W efekcie wynik zapytania odpowiada liczbie uczniów mających średnią ocen równą 5 Takie podejście jest powszechnie stosowane w analizie danych gdzie wymagane jest określenie liczby jednostek spełniających konkretne kryteria Zastosowanie COUNT w połączeniu z WHERE umożliwia precyzyjną kontrolę nad analizowanym zbiorem danych co jest standardem w wielu systemach bazodanowych Praktyczne zastosowanie tej techniki można spotkać w raportowaniu wyników nauczania generowaniu statystyk czy w analizach biznesowych gdzie kluczowe jest zrozumienie struktury i charakterystyki danych Zapytanie to ilustruje dobrą praktykę pracy z bazami danych polegającą na efektywnym i precyzyjnym formułowaniu zapytań w celu uzyskania wartościowych i precyzyjnych informacji

Pytanie 14

Które twierdzenie o językach programowania jest FAŁSZYWE?

A. SQL jest językiem programowania strukturalnego
B. C++ jest językiem obiektowym
C. PHP służy do tworzenia stron generowanych dynamicznie
D. JavaScript jest językiem skryptowym

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zdanie „SQL jest językiem programowania strukturalnego” jest FAŁSZYWE. SQL (Structured Query Language) to język ZAPYTAŃ do baz danych – służy do pobierania i modyfikowania danych, a nie do pisania programów w paradygmacie strukturalnym (z pętlami, funkcjami, sterowaniem przepływem jak w C czy Pascalu). Dlatego to twierdzenie jest nieprawdziwe.

Pytanie 15

W języku PHP wyniki zapytania z bazy danych zostały pobrane przy użyciu polecenia mysql_query(). Aby uzyskać dane w postaci wierszy z tej zwróconej kwerendy, należy użyć polecenia:

A. mysql_field_len()
B. mysql_fetch_row()
C. mysql_fetch_lengths()
D. mysql_list_fields()
Niepoprawne odpowiedzi pokazują, że wiele osób ma problem z funkcjami, które są dostępne w starym rozszerzeniu MySQL w PHP. Na przykład, funkcja mysql_field_len() to nie to, co potrzebujesz do pobierania danych w wierszach – ona tylko zwraca długość danego pola w zestawie wyników. A mysql_fetch_lengths() z kolei zwraca długość danych w danym wierszu, co też nie rozwiązuje sprawy, bo nie dostajesz samej zawartości. Funkcja mysql_list_fields() służy do zwracania informacji o polach w zestawie wyników, co jednak nie ma związku z przetwarzaniem danych. Często popełnia się błąd w odróżnianiu funkcji dotyczących struktury danych od tych, które naprawdę zwracają dane. W programowaniu w PHP ważne jest, by wybierać odpowiednie funkcje w zależności od tego, co chcesz osiągnąć. Ludzie mogą się mylić myśląc, że funkcje związane ze strukturą i długością są tak samo przydatne jak te, które zwracają dane. Niestety, kończy się to dość kiepskim kodem, który nie działa jak należy. Dlatego warto znać różnice między tymi funkcjami, bo to naprawdę ma znaczenie przy pracy z PHP i przy wynikach zapytań do baz danych.

Pytanie 16

Tabela odlotów zawiera dane przedstawione na ilustracji. Wykonanie zapytania SQL spowoduje zwrócenie informacji:

SELECT id FROM odloty WHERE samoloty_id > 2 AND kierunek LIKE '_a%';
idsamoloty_idnr_rejsukierunekczasdzienstatus_lotu
11FR1646Neapol09:20:002019-07-25wystartowal
21FR1327ALICANTE09:10:002019-07-25Opóźniony 10 min
32W63425Warszawa09:45:002019-07-25odprawa
43LX5647Londyn LT10:03:002019-07-25odprawa
53LX5673Malta10:06:002019-07-25opoznienie 20 min
63LX5622Wieden10:13:002019-07-25
74LH9821Berlin10:16:002019-07-25
84LH9888Hamburg10:19:002019-07-25
A. 5; 8
B. 4; 5; 6; 7; 8
C. 3; 5; 8
D. zbiór pusty

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zapytanie SQL SELECT id FROM odloty WHERE samoloty_id > 2 AND kierunek LIKE '_a%' używa dwóch warunków w klauzuli WHERE. Pierwszy warunek samoloty_id > 2 filtruje rekordy, których pole samoloty_id jest większe niż 2. Drugi warunek kierunek LIKE '_a%' szuka w kolumnie kierunek ciągów znaków, które mają literę 'a' jako drugi znak, co jest osiągane przez użycie znaku podkreślenia '_' jako symbolu jednego dowolnego znaku. Operator LIKE pozwala na dopasowanie wzorca z użyciem symboli wieloznacznych, co jest przydatne w sytuacjach, gdy potrzebujemy znaleźć dane na podstawie częściowego dopasowania tekstu. Zastosowanie wzorca '_a%' oznacza, że szukamy tylko takich wartości, które mają co najmniej dwa znaki, a drugim znakiem musi być 'a'. W tabeli odloty, rekordy spełniające oba te warunki to rekordy 5 i 8, ponieważ ich pole samoloty_id jest odpowiednio 3 i 4 (czyli większe niż 2), a pole kierunek to odpowiednio Malta i Hamburg, które pasują do wzorca '_a%' gdzie 'M' i 'H' to odpowiednio pierwszy znak. Praktyczne zastosowanie takich zapytań SQL pozwala na efektywne przeszukiwanie baz danych pod kątem specyficznych potrzeb użytkownika, co ma kluczowe znaczenie w zarządzaniu informacjami w dużych systemach.

Pytanie 17

Jakie zadania programistyczne należy wykonać na serwerze?

A. Zmiana stylu HTML na stronie spowodowana ruchem kursora
B. Zapisanie danych pozyskanych z aplikacji internetowej w bazie danych
C. Weryfikacja danych wprowadzonych do pola tekstowego na bieżąco
D. Ukrywanie i wyświetlanie elementów strony w zależności od aktualnej pozycji kursora

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Zapisanie danych pobranych z aplikacji internetowej w bazie danych to zadanie, które powinno być wykonywane po stronie serwera ze względów bezpieczeństwa, integralności danych oraz zarządzania zasobami. Serwer jest odpowiedzialny za przechowywanie informacji, które mogą być wykorzystywane przez wielu użytkowników, co wymaga centralizacji ich przetwarzania. W przypadku aplikacji internetowych, dane są często przesyłane z klienta (przeglądarki) do serwera, gdzie są walidowane oraz zapisywane w bazach danych. Na przykład, gdy użytkownik rejestruje się w aplikacji, jego dane osobowe są wysyłane do serwera, który sprawdza poprawność tych informacji i zapisuje je w bazie danych. Właściwe implementacje powinny stosować bezpieczne połączenia (np. HTTPS), a także techniki, takie jak sanitizacja danych, aby unikać ataków typu SQL Injection. Dobrą praktyką jest także stosowanie ORM (Object-Relational Mapping), co umożliwia łatwiejsze zarządzanie danymi i ich relacjami. Przechowywanie danych po stronie serwera pozwala na efektywne zarządzanie zasobami i umożliwia późniejsze przetwarzanie informacji w sposób zorganizowany i bezpieczny.

Pytanie 18

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. sterującym
B. pierwotnym
C. zagnieżdżonym
D. głównym

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
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 19

W tabeli zwierzeta znajdują się pola: nazwa, gatunek, gromada, cechy oraz dlugosc_zycia. Aby uzyskać listę nazw zwierząt, które dożywają przynajmniej 20 lat i są ssakami, należy wykonać zapytanie:

A. SELECT nazwa FROM zwierzeta WHERE dlugosc_zycia >=20;
B. SELECT nazwa FROM zwierzeta WHERE dlugosc_zycia >=20 AND gromada = 'ssak';
C. SELECT nazwa FROM zwierzeta WHERE gromada = 'ssak';
D. SELECT nazwa FROM zwierzeta WHERE dlugosc_zycia >=20 OR gromada = 'ssak';

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Twoja odpowiedź jest jak najbardziej na miejscu, bo spełnia te dwa ważne wymagania z pytania: pokazuje nazwy zwierząt, które żyją przynajmniej 20 lat i są ssakami. Użycie AND w klauzuli WHERE sprawia, że w wynikach są tylko te zwierzęta, które pasują do obu kryteriów. To zapytanie ma swoje zastosowanie, na przykład w analizach zoologicznych, gdzie długość życia niektórych gatunków ssaków może być kluczowa, zwłaszcza w kontekście ochrony i badań nad ich ekologią. Z osobistego doświadczenia mogę powiedzieć, że dobrze jest stosować takie zapytania w bazach danych, bo to zapewnia lepszą efektywność i wydajność w przetwarzaniu danych. Generalnie w tworzeniu zapytań SQL warto zawsze ustalać konkretne warunki w klauzuli WHERE, żeby uniknąć niechcianych wyników i zmniejszyć obciążenie bazy danych.

Pytanie 20

W przedstawionym kodzie PHP, co powinno się wyświetlić zamiast znaków zapytania?

$x = mysql_query('SELECT * FROM mieszkancy');
if(!$x)
echo "???????????????????????";
A. Zapytanie zostało zrealizowane pomyślnie
B. Błąd w trakcie przetwarzania zapytania
C. Nieprawidłowe hasło do bazy danych
D. Niepoprawna nazwa bazy danych

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź 2 czyli Błąd przetwarzania zapytania jest poprawna ponieważ w kodzie PHP używana jest funkcja mysql_query do wykonania zapytania SQL Funkcja ta zwraca false w przypadku niepowodzenia co oznacza że blok if(!x) zostanie wykonany tylko wtedy gdy wystąpi błąd w przetwarzaniu zapytania Komunikat Błąd przetwarzania zapytania jest więc właściwy ponieważ odzwierciedla sytuację w której zapytanie nie mogło zostać wykonane poprawnie co może być wynikiem wielu czynników takich jak błędy składniowe w zapytaniu brak połączenia z serwerem bazy danych lub nieodpowiednie uprawnienia użytkownika Praktyczne podejście do obsługi błędów w PHP często obejmuje logowanie szczegółowych komunikatów błędów lub przekazywanie ich użytkownikowi w sposób przyjazny dla użytkownika co jest zgodne z najlepszymi praktykami w zakresie programowania Dodatkowo warto wspomnieć że funkcja mysql_query jest przestarzała i nie jest zalecana do użycia w nowych projektach Zaleca się używanie bardziej nowoczesnych funkcji takich jak mysqli_query lub PDO co poprawia bezpieczeństwo i wydajność aplikacji

Pytanie 21

W tabeli artykuly wykonano określone instrukcje dotyczące uprawnień użytkownika jan. Po ich realizacji użytkownik jan uzyska możliwość

GRANT ALL PRIVILEGES ON artykuly TO jan
REVOKE SELECT, UPDATE ON artykuly FROM jan
A. tworzenia tabeli oraz edytowania jej zawartości
B. edycji danych i przeglądania zawartości tabeli
C. tworzenia tabeli i wypełniania jej informacjami
D. sprawdzania zawartości tabeli

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Prawidłowa odpowiedź wskazuje na to że użytkownik jan ma prawa do tworzenia tabeli i wypełniania jej danymi co wynika z początkowego nadania pełnych praw za pomocą komendy GRANT ALL PRIVILEGES i późniejszego cofnięcia konkretnych przywilejów SELECT i UPDATE. To oznacza że jan zachował uprawnienia do tworzenia tabelek i wstawiania danych do tabeli bez możliwości przeglądania czy aktualizowania danych w istniejących wierszach. W kontekście zarządzania bazami danych takie precyzyjne przyznawanie i odbieranie uprawnień jest kluczowe do utrzymania integralności i bezpieczeństwa danych. Przykładowo w środowisku produkcyjnym tworzenie i wypełnianie tabel może być ograniczone do administratorów baz danych lub zespołów deweloperskich podczas gdy inne role mogą mieć jedynie prawa do odczytu. Takie zarządzanie uprawnieniami pomaga zminimalizować ryzyko błędów i nieautoryzowanych modyfikacji danych. Standardy takie jak ISO/IEC 27001 zalecają precyzyjne zarządzanie dostępem w celu zabezpieczenia informacji co jest dobrą praktyką w branży IT.

Pytanie 22

W relacyjnych bazach danych encja jest przedstawiana przez

A. rekord.
B. tabelę.
C. relację.
D. kwerendę.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W relacyjnych bazach danych encja jest reprezentowana przez tabelę, co jest zgodne z fundamentalnymi zasadami modelu relacyjnego, zaproponowanego przez Edgara F. Codda. Tabela składa się z wierszy (rekordów) oraz kolumn (atrybutów), gdzie każdy wiersz odpowiada jednej instancji encji, a kolumny definiują jej cechy. Na przykład, tabela "Klienci" może zawierać kolumny takie jak "ID", "Imię", "Nazwisko" i "Email", gdzie każdy wiersz reprezentuje konkretnego klienta. Zastosowanie tabel jako reprezentacji encji pozwala na łatwe tworzenie relacji między danymi, co jest kluczowe w relacyjnych bazach danych. Przykłady takie jak użycie kluczy obcych do łączenia tabel świadczą o praktycznej aplikacji tej zasady w projektowaniu baz danych, co sprzyja spójności i integralności danych. Dobre praktyki baz danych zalecają także normalizację tabel, co pomaga w eliminacji redundancji i poprawie efektywności danych, co czyni tę koncepcję nie tylko teoretyczną, ale również praktyczną w codziennej pracy z bazami danych.

Pytanie 23

W bazie danych produkt znajdują się artykuły wyprodukowane po 2000 roku, zawierające pola nazwa oraz rok_produkcji. Klauzula SQL wyświetli zestawienie artykułów wyprodukowanych

SELECT * FROM `produkt` WHERE
SUBSTR(rok_produkcji, 3, 2) = 17;
A. przed rokiem 2017
B. w latach innych niż 2017
C. po roku 2017
D. w roku 2017

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
W tej klauzuli SQL, co widzimy, filtrujemy dane z tabeli produkt. Użycie funkcji SUBSTR(rok_produkcji, 2) pozwala nam wyciągnąć dwie ostatnie cyfry z roku produkcji. To jest super przydatne, bo dzięki temu możemy uzyskać rok w formacie dwu-cyfrowym. Jak porównujemy to z 17, to znaczy, że szukamy rekordów, których rok produkcji kończy się na 17, co odpowiada pełnemu roku, czyli 2017. Takie podejście ma sens, gdy chcemy szybko przeszukać dane dotyczące konkretnego roku, nie bawiąc się w cały numer. Umiejętność korzystania z funkcji tekstowych w SQL, jak SUBSTR, jest naprawdę istotna w analizie danych, szczególnie gdy struktura tabeli nie pozwala na łatwe użycie wartości liczbowych. Ludzie pracujący z bazami danych powinni znać te sztuczki, bo to pozwala na lepsze dopasowanie filtracji danych do potrzeb. Fajne jest też dokumentowanie takich zapytań, żeby inni mogli zrozumieć, o co chodzi.

Pytanie 24

Jakie działanie wykonuje polecenie DBCC CHECKDB("sklepAGD", Repair_fast) w MS SQL Server?

A. zweryfikuje spójność danej tabeli
B. sprawdzi spójność bazy danych i naprawi uszkodzone indeksy
C. zweryfikuje spójność danej tabeli oraz naprawi uszkodzone rekordy
D. sprawdzi spójność bazy danych i utworzy kopię zapasową

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie DBCC CHECKDB w MS SQL Server to narzędzie używane do weryfikacji integralności bazy danych. W przypadku użycia opcji Repair_fast, polecenie to sprawdza spójność bazy danych oraz naprawia uszkodzone indeksy. Jest to istotne w kontekście zapewnienia, że wszystkie dane w bazie są prawidłowo zorganizowane i dostępne. Uszkodzone indeksy mogą prowadzić do problemów z wydajnością zapytań oraz błędów w dostępie do danych. Przykładowo, gdy baza danych ulega uszkodzeniu z powodu awarii sprzętu lub błędów oprogramowania, DBCC CHECKDB umożliwia przywrócenie funkcjonalności. Dobrą praktyką jest regularne wykonywanie tego polecenia jako część strategii utrzymania bazy danych, co pozwoli na wcześniejsze wykrycie potencjalnych problemów, zanim staną się one krytyczne. Warto również zaznaczyć, że DBCC CHECKDB powinno być uruchamiane w odpowiednich oknach serwisowych, by zminimalizować wpływ na wydajność aplikacji korzystających z bazy danych.

Pytanie 25

W języku SQL podczas używania polecenia CREATE TABLE atrybut, który wskazuje na to, która kolumna jest kluczem podstawowym, to

A. GŁÓWNY KLUCZ
B. PRIMARY KEY
C. UNIQUE
D. IDENTITY FIELD

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź "PRIMARY KEY" jest prawidłowa, ponieważ w języku SQL klucz podstawowy (ang. primary key) to unikalny identyfikator dla każdego rekordu w tabeli. Klucz podstawowy zapewnia, że żadne dwa rekordy nie mają tej samej wartości w kolumnie, co jest kluczowe dla integralności danych. Zwyczajowo klucz podstawowy definiuje się podczas tworzenia tabeli za pomocą polecenia CREATE TABLE, co zwiększa wydajność operacji wyszukiwania oraz modyfikacji danych. Przykład wykorzystania: tworząc tabelę pracowników, można zdefiniować kolumnę "id_pracownika" jako klucz podstawowy, co zapewni, że każdy pracownik będzie miał unikalny identyfikator. W standardach SQL zgodnych z ANSI, klucz podstawowy może składać się z jednej lub więcej kolumn, co pozwala na tworzenie bardziej skomplikowanych struktur danych. Dobrą praktyką jest również oznaczanie klucza podstawowego jako NOT NULL, co uniemożliwia wprowadzenie pustych wartości, co dodatkowo zwiększa integralność bazy danych.

Pytanie 26

Jakie mechanizmy przydzielania zabezpieczeń, umożliwiające przeprowadzanie operacji na bazie danych, są powiązane z zagadnieniami dotyczącymi zarządzania kontami, użytkownikami oraz uprawnieniami?

A. Z przywilejami systemowymi
B. Z atrybutami
C. Z regułami
D. Z przywilejami obiektowymi

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Przywileje systemowe odnoszą się do uprawnień, które są nadawane użytkownikom w kontekście zarządzania kontami i dostępem do zasobów w systemach baz danych. Te mechanizmy są kluczowe dla zapewnienia bezpieczeństwa oraz integralności danych. Przykładem przywilejów systemowych mogą być uprawnienia do tworzenia i usuwania innych kont użytkowników, a także do modyfikacji struktur danych, co jest fundamentalne w operacjach administracyjnych. W praktyce, administratorzy baz danych wykorzystują te przywileje do określenia, które konta mają dostęp do określonych funkcji systemu. W standardach takich jak SQL standard, zarządzanie uprawnieniami jest ściśle zdefiniowane, co pozwala na audyt i kontrolę dostępu. Aby stosować dobre praktyki, warto wdrożyć zasadę najmniejszych uprawnień, co oznacza, że użytkownicy powinni otrzymywać tylko te uprawnienia, które są niezbędne do wykonywania ich zadań. Dzięki temu minimalizujemy ryzyko nieautoryzowanego dostępu oraz potencjalnych naruszeń bezpieczeństwa.

Pytanie 27

W językach programowania strukturalnego do przechowywania danych o 50 uczniach (ich imionach, nazwiskach, średniej ocen) należy zastosować

A. strukturę 50 elementów o składowych tablicowych.
B. tablicę 50 elementów o składowych typu łańcuchowego.
C. tablicę 50 elementów o składowych strukturalnych.
D. klasę 50 elementów typu tablicowego.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź wskazująca na użycie tablicy 50 elementów o składowych strukturalnych jest poprawna z kilku powodów. Po pierwsze, struktury (lub klasy) są idealnym rozwiązaniem do przechowywania złożonych danych, takich jak imiona, nazwiska i średnie oceny uczniów. Struktura pozwala na grupowanie tych składowych w jedną jednostkę, co zwiększa czytelność i organizację kodu. Na przykład, w języku C można zdefiniować strukturę 'Uczeń' z odpowiednimi polami, a następnie stworzyć tablicę, która pomieści 50 takich obiektów. W praktyce, struktury są szeroko stosowane w programowaniu, gdyż umożliwiają łatwe przekazywanie grup danych jako jednego obiektu, co jest zgodne z zasadami programowania obiektowego. Dodatkowo, korzystanie z tablicy struktur zamiast oddzielnych tablic dla każdego atrybutu ucznia minimalizuje ryzyko błędów związanych z synchronizacją danych i ułatwia manipulację danymi. W standardach programowania, szczególnie w kontekście zarządzania danymi, takie podejście jest uznawane za najlepszą praktykę, gdyż pozwala na spójną reprezentację oraz operowanie na danych.

Pytanie 28

Do tabeli pracownicy wpisano rekordy. Co zostanie wyświetlone po uruchomieniu kwerendy SQL SELECT podanej poniżej?

SELECT SUM(pensja) FROM pracownicy WHERE pensja > 4000;
idimienazwiskopensja
1AnnaKowalska3400
2MonikaNowak1300
3EwelinaNowakowska2600
4AnnaPrzybylska4600
5MariaKowal2200
6EwaNowacka5400
A. Wartość 10000, czyli suma pensji pracownika o id=4 oraz o id=6.
B. Wartość 19500, czyli suma wszystkich pensji pracowników.
C. Dwie wartości: 4600 i 5400, jako pensje pracowników wyższe niż 4000.
D. Wartość 5400, czyli najwyższa pensja pracownika.

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Gratulacje, twoja odpowiedź jest poprawna. Kwerenda SQL 'SELECT SUM(pensja) FROM pracownicy WHERE pensja > 4000;' jest zapytaniem, które agreguje (suma) wartości kolumny 'pensja' dla tych wierszy, gdzie pensja przekracza 4000. SQL jest językiem, który pozwala na manipulację i odzyskiwanie danych przechowywanych w relacyjnej bazie danych. Funkcja SUM() jest jednym z podstawowych operatorów agregujących w SQL, który zwraca sumę wartości numerycznych. W tym konkretnym przypadku, zgodnie z pytaniem, suma pensji pracowników, którzy zarabiają więcej niż 4000 wynosi 10000. To pokazuje, jak potężne mogą być kwerendy SQL, umożliwiając szybkie wykonanie złożonych obliczeń na dużych zestawach danych. Podejście to jest często stosowane w analizie danych i raportowaniu, gdzie potrzebna jest agregacja danych na różnych poziomach.

Pytanie 29

 SELECT model FROM samochody WHERE rocznik > 2017 AND marka = "opel"; 

Tabela samochody zawiera rekordy przedstawione na obrazie. Wydając przedstawione zapytanie SQL zostaną zwrócone dane:
idklasa_idmarkamodelrocznik
11fordka2017
22seattoledo2016
33opelzafira2018
42fiat500X2018
53opelinsignia2017
A. opel zafira; opel insignia
B. opel zafira
C. zafira; insignia
D. zafira

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Gratulacje, twoja odpowiedź jest poprawna. Zapytanie SQL 'SELECT model FROM samochody WHERE rocznik > 2017 AND marka = 'opel';' ma na celu wyświetlenie modelu samochodu marki 'opel' z roku produkcji późniejszego niż 2017. Analizując dostępną tabelę, możemy zauważyć, że tylko model 'zafira' spełnia oba kryteria. W tym przypadku wykorzystaliśmy dwa kluczowe elementy języka SQL, tj. instrukcję SELECT i klauzulę WHERE. Instrukcja SELECT służy do zapytań o konkretne dane z bazy, a klauzula WHERE to powszechnie stosowane narzędzie do filtrowania wyników zapytania według określonych kryteriów. Jest to bardzo praktyczny aspekt SQL, który pozwala na wydobywanie tylko tych danych, które są potrzebne, co jest niezwykle przydatne przy dużych bazach danych.

Pytanie 30

Wskaż komendę, która dokonuje aktualizacji danych w tabeli?

A. SELECT
B. UPDATE
C. CREATE
D. ALTER

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź "UPDATE" jest jak najbardziej trafna. To takie podstawowe polecenie SQL, które pozwala na aktualizowanie już istniejących danych w tabeli. Możesz dzięki niemu zmienić jeden albo kilka wierszy w tabeli, w zależności od tego, jakie masz kryteria. Na przykład, jeśli mamy tabelę "pracownicy" i chcemy zwiększyć pensję programistów do 6000 zł, wystarczy użyć polecenia: `UPDATE pracownicy SET pensja = 6000 WHERE stanowisko = 'programista';`. To polecenie działa w taki sposób, że modyfikuje dane, ale przy tym dba o integralność, co jest bardzo ważne w pracy z bazami danych. Warto zawsze dodawać klauzulę WHERE, żeby zmiany dotyczyły tylko wybranych wierszy – to pomoże uniknąć sytuacji, w której przypadkiem zmienisz wszystko. Umiejętność korzystania z UPDATE jest naprawdę istotna, jeżeli chcesz efektywnie zarządzać swoimi danymi.

Pytanie 31

Jakim systemem do zarządzania wersjami oprogramowania jest

A. TotalCommander
B. Eclipse
C. FileZilla
D. GIT

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
GIT to system kontroli wersji, który jest niezwykle popularny wśród programistów i zespołów developerskich, umożliwiający śledzenie zmian w kodzie źródłowym oraz współpracę nad projektami. GIT jest rozproszonym systemem, co oznacza, że każdy programista ma pełną kopię repozytorium na swoim lokalnym komputerze. Dzięki temu, praca w trybie offline jest możliwa, a zmiany można synchronizować później z centralnym repozytorium. GIT wspiera również wiele funkcji, takich jak branching, co pozwala na równoległe rozwijanie funkcjonalności bez wpływu na główną wersję kodu. Przykładowo, zespół może pracować nad nowymi funkcjami w osobnych gałęziach i łączyć je z główną wersją po zakończeniu prac. GIT jest również zgodny z najlepszymi praktykami, takimi jak Continuous Integration (CI) i Continuous Deployment (CD), co pozwala na automatyzację procesów testowania i wdrażania oprogramowania. W branży IT GIT stał się standardem, a jego znajomość jest kluczowa dla efektywnej pracy w zespołach. Warto również wspomnieć o platformach takich jak GitHub czy GitLab, które oferują zintegrowane narzędzia do zarządzania projektami opartymi na GIT.

Pytanie 32

W systemie PHP złożono zapytanie SELECT do bazy przy pomocy funkcji mysqli_query. Jaką funkcję powinien wykorzystać użytkownik, aby ustalić liczbę rekordów, które zwróciło to zapytanie?

A. mysqli_num_rows
B. mysqli_fetch_row
C. mysqli_query
D. mysqli_connect

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja mysqli_num_rows jest kluczowa w kontekście pracy z wynikami zapytań SQL w PHP. Umożliwia ona określenie liczby wierszy zwróconych przez kwerendę SELECT, co jest istotne, gdy chcemy dynamicznie dostosować zachowanie aplikacji na podstawie zrealizowanych zapytań. Przykładowo, po wykonaniu zapytania, można użyć mysqli_query do zrealizowania kwerendy, a następnie mysqli_num_rows do sprawdzenia, ile rekordów zostało zwróconych. Dzięki temu, programista może zdecydować, czy kontynuować przetwarzanie danych, czy też wyświetlić użytkownikowi komunikat o braku wyników. Jest to zgodne z dobrymi praktykami, ponieważ pozwala na wydajniejsze zarządzanie danymi oraz poprawia użytkowanie aplikacji. Użycie tej funkcji jest szczególnie ważne w aplikacjach, gdzie interakcja z użytkownikami jest kluczowa, a ich odpowiednie informowanie o statusie operacji bazodanowych może znacząco poprawić doświadczenie użytkownika.

Pytanie 33

Z bazy danych trzeba uzyskać zapytaniem SQL nazwiska pracowników, którzy sprawują funkcję kierownika, a ich wynagrodzenie mieści się w jednostronnie domkniętym przedziale (3000, 4000>. Która klauzula weryfikuje ten warunek?

A. WHERE kierownik = true OR pensja > 3000 OR pensja <= 4000
B. WHERE kierownik = true AND pensja => 3000 OR pensja < 4000
C. WHERE kierownik = true AND pensja > 3000 AND pensja <= 4000
D. WHERE kierownik = true AND pensja => 3000 AND pensja <= 4000

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawna odpowiedź to 'WHERE kierownik = true AND pensja > 3000 AND pensja <= 4000;'. Ta klauzula w SQL jest zgodna z wymaganiami, ponieważ precyzyjnie określa, że zwracane będą tylko te rekordy, gdzie pracownik jest kierownikiem oraz jego pensja jest większa niż 3000 i jednocześnie mniejsza lub równa 4000. Zastosowanie operatorów logicznych AND w tym kontekście jest kluczowe, ponieważ pozwala na jednoczesne spełnienie obu warunków. W praktyce, aby uzyskać wyniki zgodne z tymi kryteriami, ważne jest, aby zrozumieć różnicę między operatorami porównawczymi, a także ich zastosowanie w kontekście warunków. Przykładowo, jeśli dla dużej bazy danych chcemy filtrować pracowników w oparciu o ich pozycje oraz wynagrodzenie, stosowanie precyzyjnych klauzul WHERE pozwala na optymalizację zapytań i lepsze zarządzanie danymi. Dobre praktyki w SQL podkreślają znaczenie klarowności i dokładności w definiowaniu warunków, co bezpośrednio przekłada się na efektywność operacji na bazach danych.

Pytanie 34

Przy założeniu, że użytkownik nie miał wcześniej żadnych uprawnień, polecenie SQL

GRANT SELECT, INSERT, UPDATE ON klienci TO anna;
nada użytkownikowi anna uprawnienia wyłącznie do
A. wybierania, wstawiania oraz aktualizacji danych w tabeli o nazwie klienci
B. wybierania, dodawania kolumn oraz zmiany struktury tabeli o nazwie klienci
C. wybierania, wstawiania oraz aktualizacji danych we wszystkich tabelach w bazie o nazwie klienci
D. wybierania, dodawania kolumn oraz zmiany struktury wszystkich tabel w bazie o nazwie klienci

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Polecenie SQL 'GRANT SELECT, INSERT, UPDATE ON klienci TO anna;' przyznaje użytkownikowi 'anna' konkretne uprawnienia do tabeli 'klienci'. Oznacza to, że użytkownik ten będzie miał możliwość wybierania (SELECT), wstawiania (INSERT) oraz aktualizacji (UPDATE) danych w tej konkretnej tabeli. To podejście jest zgodne z zasadą minimalnych uprawnień, co oznacza, że użytkownik powinien mieć jedynie te prawa, które są niezbędne do wykonywania jego zadań. Na przykład, jeśli 'anna' jest pracownikiem działu sprzedaży, może być konieczne, aby miała dostęp do aktualizacji informacji o klientach, ale nie potrzebuje uprawnień do usuwania rekordów (DELETE) czy zmiany struktury tabeli (ALTER). Praktyczne zastosowanie takiego przydzielania uprawnień pomaga w zabezpieczeniu danych oraz minimalizuje ryzyko nieautoryzowanych zmian, co jest standardem w zarządzaniu bazami danych. Dodatkowo, stosowanie takich restrykcji w przydzielaniu ról jest zgodne z najlepszymi praktykami bezpieczeństwa w branży IT, aby zapobiegać potencjalnym nadużyciom.

Pytanie 35

Pole insert_id zdefiniowane w bibliotece MySQLi języka PHP może być wykorzystane do

A. uzyskania id ostatnio dodanego wiersza
B. otrzymania kodu błędu, gdy wstawienie wiersza się nie powiodło
C. pobrania najwyższego indeksu bazy, aby po jego zwiększeniu wstawić pod niego dane
D. uzyskania pierwszego dostępnego indeksu bazy, tak, aby można było pod nim wstawić nowe dane

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Pole insert_id w bibliotece MySQLi języka PHP jest niezwykle przydatne w kontekście zarządzania danymi w bazach danych. Głównym celem tego pola jest umożliwienie programistom uzyskania identyfikatora (ID) ostatnio wstawionego wiersza do bazy danych. Ta funkcjonalność jest kluczowa, gdyż wiele aplikacji wymaga odniesienia do nowo dodanych rekordów, szczególnie w sytuacjach, gdy w tabelach stosowane są klucze główne typu AUTO_INCREMENT. Przykładowo, po dodaniu rekordu do tabeli użytkowników, programista może użyć funkcji mysqli_insert_id(), aby pobrać ID tego rekordu i wykorzystać je do dalszych operacji, takich jak dodawanie powiązanych danych w innej tabeli. Tego typu mechanizmy są zgodne z najlepszymi praktykami w zakresie zarządzania danymi, zapewniając spójność i bezpieczeństwo operacji na bazach danych. Warto także pamiętać, że poprawne zarządzanie ID pozwala uniknąć problemów z duplikacją i zapewnia, że aplikacja może dynamicznie dopasowywać swoje czynności do aktualnych danych.

Pytanie 36

Która z funkcji agregujących dostępnych w SQL służy do obliczania średniej z wartości znajdujących się w określonej kolumnie?

A. MIN
B. AVG
C. SUM
D. COUNT

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Funkcja AVG w języku SQL jest wbudowaną funkcją agregującą, która służy do obliczania średniej wartości we wskazanej kolumnie. Oblicza ona średnią arytmetyczną z wartości liczbowych w danej kolumnie, co jest niezwykle przydatne w analizie danych. Na przykład, jeśli mamy tabelę z wynikami sprzedaży, możemy użyć zapytania SQL: SELECT AVG(sprzedaż) FROM tabela_sprzedaży; aby uzyskać średnią sprzedaż. Dobrą praktyką jest stosowanie tej funkcji w połączeniu z klauzulą GROUP BY, co pozwala na obliczenie średnich wartości w różnych grupach danych, na przykład średnia sprzedaż według kategorii produktowej. Przy stosowaniu funkcji AVG warto pamiętać, że ignoruje ona wartości NULL, co wpływa na wynik obliczeń. W kontekście analizy danych w SQL, znajomość takich funkcji jak AVG jest kluczowa dla efektywnego przetwarzania i analizy informacji, co stanowi fundament dobrego zarządzania danymi.

Pytanie 37

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

A.
GROUP BY
B.
WHERE
C.
ORDER BY
D.
HAVING

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Wyniki zapytania sortuje klauzula <code><span class="code-keyword">ORDER</span> <span class="code-keyword">BY</span></code>, po której podaje się kolumnę i kierunek: <code><span class="code-variable">ASC</span></code> (rosnąco, domyślnie) lub <code><span class="code-variable">DESC</span></code> (malejąco), np. <code><span class="code-keyword">SELECT</span> <span class="code-text">*</span> <span class="code-keyword">FROM</span> <span class="code-variable">klienci</span> <span class="code-keyword">ORDER</span> <span class="code-keyword">BY</span> <span class="code-variable">nazwisko</span> <span class="code-variable">ASC</span></code>. Można sortować po wielu kolumnach. Dlatego do uporządkowania wyniku służy <code><span class="code-keyword">ORDER</span> <span class="code-keyword">BY</span></code>.

Pytanie 38

Jakie jest odstępstwo pomiędzy poleceniem DROP TABLE a TRUNCATE TABLE?

A. DROP TABLE usuwa tabelę, natomiast TRUNCATE TABLE modyfikuje dane w niej spełniające określony warunek
B. DROP TABLE usuwa tabelę, a TRUNCATE TABLE eliminuje wszystkie dane, zostawiając pustą tabelę
C. Obydwa polecenia usuwają tylko zawartość tabeli, ale tylko DROP TABLE może być przywrócone
D. Obydwa polecenia usuwają tabelę wraz z jej zawartością, jednak tylko TRUNCATE TABLE można cofnąć

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Odpowiedź jest prawidłowa, ponieważ polecenie DROP TABLE całkowicie usuwa tabelę z bazy danych, łącznie z jej strukturą i danymi. Nie można jej później przywrócić, co oznacza, że wszelkie dane w niej zawarte zostaną na stałe utracone. Z kolei TRUNCATE TABLE jest poleceniem, które usuwa jedynie dane wewnątrz tabeli, ale sama tabela i jej struktura pozostają nienaruszone. Po wykonaniu TRUNCATE TABLE tabela staje się pusta, a jej definicja oraz wszystkie indeksy pozostają w bazie danych. Przykładowo, jeśli mamy tabelę 'Klienci' z danymi klientów, wykonanie TRUNCATE TABLE Klienci spowoduje, że tabela pozostanie, ale wszystkie rekordy zostaną usunięte. Wywołanie tych poleceń ma różne zastosowanie w praktyce; DROP TABLE można wykorzystać, gdy nie potrzebujemy tabeli, natomiast TRUNCATE TABLE jest przydatne, gdy chcemy szybko usunąć wszystkie dane z tabeli, zachowując jej strukturę dla przyszłych operacji.

Pytanie 39

Która technika rozwiązywania konfliktów w firmie bywa niebezpieczna i może ZAOSTRZYĆ konflikt?

A. arbitraż
B. separacja
C. kompromis
D. ignorowanie

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Ignorowanie konfliktu (udawanie, że go nie ma) jest niebezpieczne - nierozwiązany problem narasta „pod powierzchnią” i z czasem może wybuchnąć ze zdwojoną siłą, ZAOSTRZAJĄC sytuację. Dlatego ryzykowną metodą jest ignorowanie.

Pytanie 40

Określ na podstawie diagramu, jaką liczebność należy zdefiniować przy związku pomiędzy encjami Podręcznik i Wydawnictwo zakładając, że dane dotyczące różnych podręczników odpowiadają jednemu wydawnictwu.

Ilustracja do pytania
A. 1-1 (1 przy encji Podręcznik, 1 przy encji Wydawnictwo)
B. 1-N (1 przy encji Podręcznik, N przy encji Wydawnictwo)
C. N-1 (N przy encji Podręcznik, 1 przy encji Wydawnictwo)
D. M-N (M przy encji Podręcznik, N przy encji Wydawnictwo)

Brak odpowiedzi na to pytanie.

Wyjaśnienie poprawnej odpowiedzi:
Poprawnie wskazana krotność N–1 oznacza, że wiele podręczników może być powiązanych z jednym wydawnictwem, natomiast każdy pojedynczy podręcznik ma dokładnie jedno wydawnictwo. Dokładnie to wynika z treści: „dane dotyczące różnych podręczników odpowiadają jednemu wydawnictwu”. W notacji związków encji mówimy więc o relacji wiele‑do‑jednego z punktu widzenia encji Podręcznik. W praktycznym modelu relacyjnej bazy danych przekłada się to na klucz obcy w tabeli PODRĘCZNIK, który wskazuje na klucz główny (np. id_wydawnictwa) w tabeli WYDAWNICTWO. Dzięki temu nie powielamy danych o wydawnictwie przy każdym rekordzie, tylko przechowujemy je w jednym miejscu, zgodnie z zasadą normalizacji (co najmniej 2. i 3. postać normalna). Moim zdaniem to jest jedno z podstawowych i najczęściej wykorzystywanych powiązań: podobny schemat mamy przy relacji Produkt–Producent, Samochód–Marka, Student–Grupa itp. W takich przypadkach w tabeli „wiele” zawsze ląduje kolumna z kluczem obcym do tabeli „jeden”. Dodatkowo warto zauważyć, że gdybyśmy kiedyś chcieli pozwolić na zmianę nazwy wydawnictwa, to dzięki takiemu modelowi robimy to tylko w jednym wierszu tabeli WYDAWNICTWO, a wszystkie powiązane podręczniki automatycznie „widzą” zaktualizowaną wartość. To jest dokładnie ta dobra praktyka projektowania: minimalizacja redundancji i łatwiejsze utrzymanie spójności danych (integralność referencyjna, klucze obce z ON UPDATE/DELETE). W dobrze zaprojektowanych systemach bibliotecznych czy księgarni internetowych ta relacja N–1 między książką/podręcznikiem a wydawnictwem jest standardem branżowym i praktycznie normą w modelach ER.