Лучшие вопросы и ответы на собеседовании по SQL Server [для первокурсников 2022]

Опубликовано: 2021-01-04

Давайте рассмотрим некоторые часто задаваемые вопросы в ходе интервью по SQL Server. Мы также будем включать примеры SQL-запросов вместе с вопросами и ответами на собеседование по SQL, где это необходимо.

Интервью с SQL Server Вопросы и ответы

Вопрос 1: Что такое SQL?

SQL или язык структурированных запросов — это стандартный язык компьютерного программирования, используемый для управления и организации систем управления реляционными базами данных (RDBMS). Он используется для хранения, обработки и получения доступа к сохраненным данным, другими словами, для связи с реляционными базами данных. Большинство популярных СУБД используют SQL, включая SQL Server, MySQL и Oracle.

Любая единица выполнения или инструкция в SQL называется запросом. SQL-запрос можно использовать для создания, выбора или изменения данных.

В системах управления реляционными базами данных организованный файл данных хранится в виде таблиц. Каждая таблица состоит из столбцов и строк.

Вопрос 2: Что такое SQL-запрос для создания базы данных в SQL Server?

База данных в SQL — это организованный набор данных, который может состоять из таблиц, функций кода, схем и т. д. Программист может создать эту базу данных или манипулировать ею, используя различные языки запросов.

Для создания новой базы данных на сервере SQL используется следующая команда SQL:

СОЗДАТЬ БАЗУ ДАННЫХ Имя базы данных

Читайте: Вопросы для интервью с полным стеком

Вопрос 3: Как создается таблица в SQL?

Таблица — это объект в SQL, который позволяет пользователям хранить и извлекать данные. Эти данные хранятся в виде таблицы, и каждая таблица состоит из столбцов и строк.

Для создания новой таблицы на сервере SQL используется следующая команда SQL:

Создайте таблицу TableName (тип данных columnName1, тип данных columnName2)

Вопрос 4: Что такое SQL Profiler?

SQL Profiler — это средство, с помощью которого системный администратор может отслеживать события на сервере SQL. Он в основном используется для анализа захваченных и сохраненных файлов данных события.

Вопрос 5: Объясните на примере, что такое рекурсивная хранимая процедура.

Рекурсивные хранимые процедуры в SQL Server вызывать не нужно. Он вызывает сам по себе, пока не будет достигнуто граничное условие. Для хранимых процедур возможен максимальный уровень вложенности 32. Это известно как рекурсия.

Используя рекурсивную хранимую процедуру, программист может использовать один и тот же пакет кода n раз.

Чтобы привести пример, если вам нужно расширить отношение дерева или вычислить алгоритм факториала, вы можете использовать реверсию в хранимых процедурах. Вот пример того, как вычислить факториал числа.

СОЗДАТЬ ПРОЦЕДУРУ [dbo].[Factorial_ap]

(

@Число Целое,

@RetVal Целочисленный ВЫВОД

)

ТАК КАК

DECLARE @In Integer

DECLARE @Out Integer

ЕСЛИ @Число != 1

НАЧИНАТЬ

ВЫБЕРИТЕ @In = @Число – 1

EXEC Factorial_ap @In, @Out ВЫХОД

ВЫБЕРИТЕ @RetVal = @Number * @Out

КОНЕЦ

ЕЩЕ

НАЧИНАТЬ

ВЫБЕРИТЕ @RetVal = 1

КОНЕЦ

ВЕРНУТЬ

ИДТИ

Вопрос 6: Что? Перечислите различия между локальными и глобальными временными таблицами.

Видимость локальных временных таблиц сохраняется до тех пор, пока существует соединение. После закрытия соединения сервер автоматически удаляет эти таблицы.

Локальные временные таблицы обозначаются символом # перед именем таблицы.

Синтаксис для создания локальной временной таблицы:

СОЗДАТЬ ТАБЛИЦУ #<имя_таблицы>

(

тип данных столбца 1 [ NULL | НЕ НОЛЬ ],

тип данных столбца2 [ NULL | НЕ НОЛЬ ],

);

Глобальные временные таблицы доступны и видны всем пользователям. SQL Server удаляет их после завершения сеанса SQL Server. Это происходит, когда каждый пользователь, ссылающийся на таблицу, отключился от сеанса.

Локальные временные таблицы обозначаются символом ## перед именем таблицы.

Синтаксис для создания глобальной временной таблицы:

СОЗДАТЬ ТАБЛИЦУ ##<имя_таблицы>

(

тип данных столбца 1 [ NULL | НЕ НОЛЬ ],

тип данных столбца2 [ NULL | НЕ НОЛЬ ],

);

Вопрос 7: Объясните сопоставление с образцом в SQL?

Сопоставление с образцом в SQL позволяет программистам использовать знак подчеркивания (_) для сопоставления одного символа. Это также позволяет вам использовать знак процента (%) для сопоставления произвольного количества символов. Это также включает любые нулевые символы. Следует отметить, что шаблоны SQL в MySQL нечувствительны к регистру.

Вопрос 8: Что такое триггер? Сколько типов триггеров существует?

Триггеры — это особый вид хранимых процедур, которые используются для проверки пакета кода SQL. Они выполняются или «запускаются» автоматически при изменении данных таблицы.

Существует два типа триггеров. Они есть:

  1. Язык манипулирования данными (DML) и
  2. Язык определения данных (DDL)

Когда любой из этих запросов используется для изменения данных, запускается набор команд. С событиями команд DML запускаются Вставка, Удалить, Обновить и Вместо. При использовании DDL срабатывают триггеры Create, Alter и Drop.

Читайте также: Вопросы и ответы на собеседовании по PHP

Вопрос 9: Дайте определение ОБЪЕДИНЕНИЮ?

Первое ненулевое выражение в аргументах функции возвращается с помощью COALESCE. Он может прочитать один или несколько столбцов в своих аргументах, чтобы проверить наличие ненулевого выражения.

Синтаксис -

Выберите COALESCE (emp_num, emp_name, зарплата) от сотрудника;

Вопрос 10. Что такое CDC?

Функция SQL Server 2008, CDC или Change Data Capture, может использоваться для сбора данных, которые были недавно изменены.

Вопрос 11. Какие запросы используются для подсчета количества записей в таблице SQL?

Мы можем получить количество записей в таблице, используя следующие запросы:

Выберите * из <имя_таблицы>

Выберите количество (*) из <tablename>

Выберите строки из sysindexes, где id = OB

JECT_ID(имя таблицы) и indid<2

Вопрос 12: Укажите разницу между функциями SUBSTR и CHARINDEX в SQL Server?

Функция SUBSTR возвращает указанную часть строки в соответствии с указаниями программиста. С другой стороны, функция CHARINDEX используется для возврата позиции указанного символа в заданной строке.

Например:

ПОДСТРОКА('Яблоко',1,4)

– Выход будет Appl

CHARINDEX('l', 'Яблоко',1)

– Вывод будет 4, так как символ l находится на 4-й позиции в указанной строке.

Вопрос 13: Что такое SQL-инъекция?

SQL-инъекция — это одна из уязвимостей базы данных, когда SQL-сервер подвергается атаке пользователей с использованием вредоносного кода, который вставляется в строки кода. Цель состоит в том, чтобы отправить вредоносный код на анализ и выполнение. Даже параметры подвергаются риску атаки, поэтому все утверждения должны быть проверены на наличие уязвимостей.

Вопрос 14. Какие методы можно использовать, чтобы избежать атаки путем внедрения кода SQL?

Для защиты SQL-сервера от атаки путем внедрения SQL-кода можно использовать следующие четыре метода:

– Поскольку Параметры менее подвержены риску атаки путем внедрения кода SQL, рекомендуется использовать их для хранимых процедур.

– Это хорошая мера для фильтрации входных параметров.

– Можно использовать сбор параметров с динамическим SQL.

– Используйте escape-символы в предложениях Like.

Вопрос 15: Назовите два режима аутентификации в SQL Server. Как их можно изменить?

Два режима аутентификации на сервере SQL:

- Режим Windows

– Смешанный режим

В настройках конфигурации SQL Server на странице безопасности есть меню инструментов для изменения режимов.

Вопрос 16: Какие существуют типы команд в базе данных SQL?

Ответ: В SQL Server существует четыре типа команд. Они классифицируются как:

  1. Язык определения данных (DDL)
  2. Язык управления данными Язык управления транзакциями (TCL)Язык управления транзакциями (TCL)
  3. Язык манипулирования данными (DML)
  4. Язык управления транзакциями (TCL)

Получите курс по разработке программного обеспечения в лучших университетах мира. Участвуйте в программах Executive PG, Advanced Certificate Programs или Master Programs, чтобы ускорить свою карьеру.

Заключение

Мы надеемся, что наше руководство «Вопросы и ответы по SQL Server» окажется полезным. Мы будем регулярно обновлять руководство, чтобы держать вас в курсе.

Если вам интересно узнать больше о SQL и разработке полного стека, ознакомьтесь с программой Executive PG upGrad и IIIT-B по разработке программного обеспечения с полным стеком, которая предназначена для работающих профессионалов и предлагает более 500 часов тщательного обучения, более 9 проектов, и задания, статус выпускника IIIT-B, практические практические проекты и помощь в трудоустройстве в ведущих фирмах.

Станьте разработчиком полного стека

Подать заявку на получение степени магистра в области разработки программного обеспечения