20 najczęściej zadawanych pytań i odpowiedzi dotyczących wywiadu SQL [2022]

Structured Query Language (SQL) to standardowy język programowania używany przez administratorów baz danych i analityków danych do wykonywania zapytań do baz danych. Jest szeroko stosowany w językach programowania stron internetowych, aplikacji i innych platform.

Służy do uzyskiwania dostępu do danych w bazie danych i manipulowania nimi, w tym tworzenia i modyfikowania tabel i kolumn oraz wykonywania zapytań o dane za pomocą poleceń SQL.

Ten post z pewnością da ci pewne informacje, jeśli szukasz pytań i odpowiedzi, których możesz użyć podczas przygotowywania się do rozmowy kwalifikacyjnej SQL. Na rozmowie kwalifikacyjnej dla inżyniera danych, analityka danych, administratora bazy danych itp. należy się spodziewać następujących pytań.

Jakie są podstawowe polecenia SQL?

Niektóre z najważniejszych poleceń SQL to:

  • SELECT – pobiera dane z bazy danych.
  • CREATE TABLE – tworzy nową tabelę.
  • USUŃ – usuwa dane z bazy danych.
  • INSERT INTO – wstawia nowe dane do bazy danych.
  • ALTER DATABASE – modyfikuje bazę danych.
  • CREATE DATABASE – tworzy nową bazę danych.
  • UPDATE – aktualizuje dane w bazie danych.

Jakie są cztery ważne instrukcje SQL?

Główne instrukcje SQL są podzielone na następujące kategorie:

  • Oświadczenia w języku definicji danych (DDL)
  • Oświadczenia języka manipulacji danymi (DML)
  • Oświadczenia w języku kontroli danych (DCL)
  • Wyciągi w języku kontroli transakcji (TCL)

Jakie jest znaczenie klucza podstawowego w SQL?

Klucz podstawowy to kolumna (lub zestaw kolumn), która umożliwia jednoznaczną identyfikację każdego wiersza w bazie danych. Bazy danych SQL przywiązują dużą wagę do kluczy podstawowych. Dostarczają one każdemu wierszowi w tabeli bazy danych unikalny identyfikator. Klucz podstawowy może składać się z jednego lub więcej pól, a na tabelę może być tylko jeden klucz podstawowy.

Jakie są typy danych SQL?

Typ danych to atrybut opisujący rodzaj danych, które obiekt może przechowywać, takie jak ciągi binarne, dane liczbowe, dane znakowe, dane finansowe, data i godzina itd.

W SQL typy danych są podzielone na następujące grupy:

  • Dokładne dane liczbowe
  • Przybliżone liczby
  • Data i godzina
  • Ciągi znaków
  • Ciągi znaków Unicode
  • Ciągi binarne

Gdzie są przechowywane nazwy użytkowników i hasła w SQL Server?

Nazwy użytkowników i hasła są przechowywane odpowiednio w nazwach głównych sys.server tabeli SQL i loginach sys.sql. Hasła nie są przechowywane w zwykłym tekście.

Co to jest wstrzykiwanie SQL?

Ataki typu SQL injection to obecnie jeden z najczęstszych rodzajów cyberataków. Umożliwiają złośliwym atakującym dostęp do danych poprzez manipulowanie bazą danych aplikacji. Może to skutkować wieloma negatywnymi konsekwencjami, od strat finansowych po utratę wrażliwych danych. Najlepszym sposobem ochrony przed atakami typu SQL injection jest przede wszystkim zapobieganie ich występowaniu.

Co to jest wyzwalacz w SQL i jego typy?

Wyzwalacz to specjalny typ procedury składowanej, która jest uruchamiana automatycznie po wystąpieniu zdarzenia na serwerze bazy danych. Wyzwalacze służą do oceny danych przed lub po modyfikacji danych przy użyciu instrukcji DDL i DML.

Istnieją trzy typy wyzwalaczy — LOGON, DDL i DML.

  • Wyzwalacze LOGON: Te wyzwalacze są wyzwalane, gdy użytkownik inicjuje zdarzenie logowania.
  • Wyzwalacze DDL są wyzwalane za każdym razem, gdy wydawane jest polecenie DDL, takie jak CREATE, ALTER lub DROP.
  • Wyzwalacze DML: są wyzwalane za każdym razem, gdy polecenie DML modyfikuje dane. Porównywalne do INSERT, UPDATE i DELETE

Jak rozróżniłbyś funkcje jednowierszowe i wielowierszowe?

Funkcje jednowierszowe mogą wpływać na pojedynczy wiersz w tabeli jednocześnie. Wykonują wiersz, a następnie zwracają tylko jeden wynik. Powszechnie wiadomo, że konwersje długości i wielkości liter są funkcjami jednowierszowymi.

Na wiersze tabeli może wpływać wiele funkcji wierszy jednocześnie. Są one również znane jako funkcje grupowe, wykonujące wiele wierszy przed zwróceniem pojedynczego wyjścia.

Co to jest normalizacja bazy danych i jakie są jej cztery główne typy w SQL?

Normalizacja bazy danych to proces, w ramach którego dane są organizowane w celu szybszego dostępu i zmniejszenia nadmiarowości danych. Kolumny i tabele bazy danych są organizowane podczas normalizacji, aby upewnić się, że wszelkie zależności są poprawnie przestrzegane przez ograniczenia integralności bazy danych.

Cztery typy procesów normalizacji baz danych są następujące:

  • Pierwsza forma normalna (1 NF)
  • Druga forma normalna (2 NF)
  • Trzecia forma normalna (3 NF)
  • Postać normalna Boyce’a Codda lub czwarta postać normalna (BCNF lub 4 NF)

Czym są indeksy i ograniczenia w SQL?

Indeksy to jedno z najważniejszych pojęć w SQL. Pozwalają nam szybko znaleźć określone wiersze danych w dużych bazach danych. Pomagają nam również wymusić ograniczenia, które są regułami, które mówią bazie danych, jak ma się zachowywać, gdy spełnione są określone warunki.

Indeksy służą do poprawy wydajności zapytań poprzez przyspieszenie wyszukiwania danych w tabelach. Służą również do poprawy czytelności danych w tabelach.

Ograniczenia służą do ograniczania typu danych, które można umieścić w tabeli. Zapewnia to dokładność i wiarygodność danych w tabeli. Jeśli wystąpi jakiekolwiek naruszenie między ograniczeniem a akcją dotyczącą danych, akcja zostanie przerwana.

Jakie są najczęściej używane ograniczenia SQL?

Powszechnie używane ograniczenia SQL to:

  • CREATE INDEX: To polecenie zapewnia tworzenie indeksów dla tabel, dzięki czemu pobieranie danych jest prostsze.
  • KLUCZ OBCY: Klucz obcy tabeli musi łączyć tabele o podobnych atrybutach.
  • DOMYŚLNE: Jeśli nie podano wartości dla pól kolumny, dostarcza wartość domyślną dla tych pól.
  • UNIQUE: Określa, że ​​każda wartość w kolumnie musi być inna.
  • KLUCZ PODSTAWOWY: Klucz podstawowy tabeli musi identyfikować każdy wiersz.
  • NOT NULL: Ten warunek gwarantuje, że wartości NULL nie są akceptowane przez kolumny.
  • SPRAWDŹ: Zapewnia, że ​​każde pole kolumny spełnia określone wymagania.

Czy NULL jest równe 0 w SQL?

Wartość NULL w SQL oznacza wartość, która jest niedostępna lub przypisana. Spacja (’ ’) lub zero (0) nie są równoważne wartości NULL. Nie można porównać wartości NULL z żadną inną wartością za pomocą operatorów porównania, takich jak „=” lub „>”, ponieważ nie może być równa ani nierówna żadnej innej wartości.

Jak zapobiegać atakom typu SQL injection?

Wraz z ciągłym skanowaniem i testami penetracyjnymi, metody bezpieczeństwa, takie jak walidacja danych wejściowych, sanityzacja, przygotowane instrukcje i sparametryzowane zapytania SQL, mają kluczowe znaczenie dla zapobiegania atakom typu SQL injection. Ponadto szybkie mechanizmy obronne, takie jak zapora ogniowa, pomogłyby w ochronie bazy danych SQL.

Co to jest dynamiczny SQL i kiedy można go używać?

Dynamiczny SQL to funkcja, której możesz użyć do modyfikowania zapytań w czasie wykonywania w oparciu o jedno lub więcej kryteriów, w tym bieżącą datę, bieżącą godzinę lub dowolne inne wybrane kryteria.

Możesz użyć dynamicznego SQL, aby zmienić swoje zapytania w znaczący sposób i pomóc Ci osiągnąć swoje cele lub po prostu poprawić swoje umiejętności programistyczne. Niezależnie od tego, czy tworzysz nową aplikację, ulepszasz bazę danych, czy dodajesz funkcję hurtowni danych do systemu produkcyjnego, możesz to wszystko zrobić za pomocą Dynamic SQL.

Jakie są rodzaje kluczy w SQL?

Klucz podstawowy: Każdy wiersz lub rekord w tabeli bazy danych jest jednoznacznie identyfikowany przez pole o nazwie Klucz podstawowy. Unikalna wartość musi znajdować się w kluczu podstawowym. Pola klucza podstawowego nie mogą zawierać wartości NULL. W tabeli może być tylko jeden klucz podstawowy, składający się z jednego lub więcej pól.

Klucz obcy: pole lub grupa pól w tabeli, która odnosi się do klucza podstawowego innej tabeli, nazywana jest kluczem obcym. Tabele z kluczami podstawowymi nazywane są tabelami nadrzędnymi, podczas gdy tabele z kluczami obcymi są nazywane tabelami podrzędnymi.

Superklucz: Superklucz to klucz lub zestaw kluczy, które pomagają identyfikować wpisy w tabeli. Chociaż nie wszystkie atrybuty są wymagane do zidentyfikowania rekordu, superklucz może mieć jeden lub więcej z nich.

Klucz kandydata: klucz kandydata to podzbiór super kluczy, których można używać do identyfikowania rekordów w bazie danych na podstawie co najmniej jednego atrybutu. W przeciwieństwie do Superkey, wszystkie funkcje klucza kandydującego muszą być przydatne do identyfikowania rekordów.

Klucz złożony: klucz złożony to kombinacja co najmniej dwóch kolumn w tabeli, która służy do identyfikowania wierszy w tabeli. Klucz złożony to klucz podstawowy z innym atrybutem lub kolumną.

Jakie są typy indeksów w SQL?

Oto typy indeksów w SQL

  • Indeks skrótu
  • zoptymalizowany pod kątem pamięci Nieklastrowany
  • Indeks klastrowy
  • Indeks nieklastrowy
  • Unikalny indeks
  • Indeks magazynu kolumn
  • Indeks z dołączonymi kolumnami
  • Indeks na wyliczonych kolumnach
  • Filtrowany indeks
  • Indeks przestrzenny
  • Indeks XML
  • Indeks pełnotekstowy

Co rozumiesz przez pulę buforów i wymieniasz jej zalety?

W SQL pula buforów jest również określana jako bufor bufora. Pula buforów może być używana przez wszystkie zasoby do przechowywania ich stron danych w pamięci podręcznej. Podczas konfigurowania wystąpienia programu SQL Server można określić rozmiar puli buforów. Rozmiar puli buforów określa, ile stron może pomieścić.

Oto zalety puli buforów:

  • Ulepszenia wydajności we/wy
  • Wzrost przepustowości transakcji
  • Redukcja opóźnień we/wy
  • Poprawa wydajności czytania

Co rozumiesz przez zależność i wymieniasz różne zależności?

Gdy do jednego obiektu odwołuje się nazwa w instrukcji SQL przechowywanej w innym obiekcie, ustalana jest zależność między tymi dwoma obiektami. Termin „odnośna jednostka” odnosi się do obiektu, który pojawia się w wyrażeniu SQL, natomiast „odnośna jednostka” odnosi się do obiektu, który zawiera wyrażenie SQL.

Poniżej przedstawiono różne typy zależności w SQL.

  • Zależność funkcjonalna
  • W pełni funkcjonalna zależność
  • Zależność wielowartościowa
  • Zależność przechodnia
  • Częściowa zależność

Połączenia są podstawową częścią zarządzania danymi w SQL. Umożliwiają połączenie dwóch lub więcej tabel w jedną tabelę, której można użyć do analizy danych. Zapewniają również sposób filtrowania wyników na podstawie kryteriów w jednej tabeli, co może być przydatne podczas próby znalezienia określonych wierszy lub kolumn w dużej tabeli.

W SQL istnieją cztery główne typy sprzężeń: INNER JOIN, OUTER JOIN, CROSS JOIN i SELF JOIN.

Jakie są operatory mnogościowe w SQL?

Dane z jednej lub kilku tabel tego samego typu można łączyć za pomocą operatora mnogościowego. Operatory zestawu SQL i sprzężenia SQL są podobne, ale istnieją pewne kluczowe różnice. Operatory zestawów SQL zbierają rekordy z różnych zapytań, podczas gdy sprzężenia SQL łączą kolumny z różnych tabel. Złożone zapytania SQL to takie, które zawierają operacje na zestawach.

Wniosek

Mam nadzieję, że te pytania do rozmowy kwalifikacyjnej SQL dają dobry obraz tego, czego można oczekiwać z perspektywy rozmowy kwalifikacyjnej. Większa ekspozycja na środowisko SQL jest konieczna do złamania wywiadu SQL; można to osiągnąć poprzez dogłębne studiowanie SQL. Aby ocenić kluczowe zasady SQL, musisz także ćwiczyć pytania do wywiadu SQL i czytać dalej.

Jeśli szukasz wyjaśnienia zapytań SQL, odwiedź ściągawkę SQL, aby uzyskać więcej informacji na temat instrukcji SQL.

Aby zdobyć praktyczne doświadczenie w wykonywaniu zapytań SQL, zapoznaj się z tymi platformami do ćwiczeń SQL.