Разница mysql и sql – Топ-65 вопросов по SQL с собеседований, к которым вы должны подготовиться в 2019 году. Часть I / OTUS. Онлайн-образование corporate blog / Habr

Содержание

MS SQL и MySQL — что это и чем они отличаются

Рано или поздно человек, делающий первые шаги в программировании, узнает о таком явлении, как SQL. За этой аббревиатурой скрывается большой раздел, связанный с управлением реляционными базами данных любого масштаба. Работа с массивами информации обросла множеством терминов и технологий, способным поставить новичка в тупик. Например, чем отличается SQL от MySQL? Несмотря на похожие названия, вопрос об их сравнении некорректен, потому что эти понятия относятся к разным категориям.

SQL — язык программирования, на котором пишутся запросы для работы с базами данных. Именно с его помощью осуществляется выборка и изменение информации. На протяжении 30 лет он является самым популярным стандартом в этой сфере. За этот период появилось большое количество систем управления базами данных, построенных на основе SQL, — так называется программное обеспечение, которое использует этот язык. MySQL — одна из таких СУБД.

В настоящее время MySQL является одной из самых популярных СУБД, хотя у нее существует немало конкурентов. Например, немногим уступает продукт, выпущенный компанией Microsoft —

MS SQL Server. И если говорить о каком-то сравнении, то будет уместно оценить возможности этих двух гигантов.

Что представляет собой MS SQL Server

Эта СУБД стала первой разработкой Microsoft, ориентированной на корпоративное, а не домашнее использование. Нарастание популярности клиент-серверной обработки данных пробудило в руководстве интерес к этой нише. Первая версия вышла в 1988 году, была совместным проектом с компанией Sybase и получила достойную оценку прессы. В качестве основного языка запросов используется особое процедурное расширение стандартного SQL, получившее название Transact-SQL.

MS SQL Server

MySQL

Данная СУБД поддерживается компанией Oracle, что делает ее непосредственной наследницей первых систем, основанных на SQL. Первая версия вышла в 1995 году. Это программное обеспечение имеет статус свободного — то есть любой пользователь вправе не только бесплатно скачать и установить ее, но и внести собственные изменения в ее код, который доступен для общественности.

MySQL

Общие черты двух СУБД

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

Различия

  1. Лицензионный статус. Как и многие продукты Microsoft, легальная версия SQL Server — платная. Однако существует вариант для бесплатного распространения. Его отличие от основного продукта заключается в приставке Express и некоторых ограничениях в работе. MySQL же не только бесплатна, но и имеет лицензию свободного ПО. Любой желающий может получить доступ к ее исходному коду.
  2. Операционная система. До недавнего времени MS SQL работала исключительно в «родных» условиях Windows. Поддержка Linux была реализована только в версии 2017. Для MySQL это обстоятельство не имеет принципиального значения, она с одинаковым успехом устанавливается и на Window, и на UNIX. То же можно сказать о средствах разработки, используемых в связке с этими СУБД. MS SQL отлично сочетается с платформой .NET, а MySQL – популярная система у веб-разработчиков, занимающихся PHP-кодингом и поддержкой серверов на Linux.
  3. Синтаксис. Несмотря на общую основу, написание одного и того же запроса в двух разных СУБД может различаться.
  4. Системные требования. MS SQL Server нуждается в больших мощностях. По этой причине она чаще используется для масштабных корпоративных решений, а MySQL — для компактных веб-приложений.
  5. Расширение функциональности. MS SQL Server (разумеется, в платной версии) обладает более широкими возможностями уже в базовой комплектации. В систему входят инструменты анализа данных, сервер отчетов и многое другое, для чего в MySQL требуется искать сторонние решения. Однако это же обстоятельство придает СУБД большую гибкость по сравнению с целостностью продукта Microsoft.
  6. Простота использования. Наличие всего необходимого в одной сборке, привычная незамысловатость установки и идеальное взаимодействие с другими продуктами Microsoft делают SQL Server системой, понятной даже неопытному программисту. Для настройки MySQL и поиска наиболее подходящих расширений придется потратить время.

MS SQL и MySQL

И MS SQL Server, и MySQL не зря завоевали свою популярность. Обе СУБД обладают несомненными преимуществами, а их особенности позволяют учитывать возможности отдельно взятого сервера и профессионала, который занимается поддержкой базы данных.

Разница между SQL и MySQL | Разница Между


Ключевое отличие: Заметное различие между SQL и MySQL заключается в том, что первый - это язык, используемый для создания, компиляции и поддержки систем управления базами данных, таких как MySQL.

SQL - это сокращение от языка структурированных запросов. Это компьютерный язык, который помогает пользователю получать доступ, манипулировать и получать информацию из базы данных. SQL в основном выступает в качестве подсказки для СУБД, то есть программного обеспечения для управления базами данных.

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

MySQL - самая популярная на сегодняшний день система управления реляционными базами данных с открытым исходным кодом. Это позволяет легко обрабатывать огромные объемы данных, без суеты или с минимальными усилиями. MySQL позволяет поддерживать несколько баз данных одновременно. Именно по этой причине оно известно как программное обеспечение для реляционных баз данных, поскольку оно позволяет сопоставлять две или более баз данных одновременно.

Кроме того, MySQL также облегчает многопользовательский доступ к большому количеству баз данных, что является редкостью в этой сфере виртуального мира. MySQL также является неотъемлемой частью многих других программных приложений, особенно тех, которые работают в фоновом режиме уже запущенного приложения. Другими словами, MySQL - это механизм, на котором запускаются такие фоновые приложения, чтобы продвигать вперед запущенное приложение.

Таким образом, можно сказать, что SQL и MySQL в некоторой степени взаимосвязаны, но ни в коем случае не похожи друг на друга. Этот вывод можно понять на простом примере: английский - это язык, а Библия - это книга. Английский используется при составлении копий Библии; Однако это не означает, что английский и Библия эквивалентны. Таким образом, SQL и MySQL одинаково отличаются друг от друга.

Сравнение между SQL и MySQL:

SQL

MySQL

Природа

SQL - это компьютерный язык.

MySQL - это программное обеспечение или приложение.

Цель

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

Чтобы включить обработку данных, хранение, изменение, удаление и т. Д.

Визави

Коды и команды SQL используются в различных системах СУБД и СУБД, таких как MySQL.

MySQL имеет в своей основе SQL и зависит от него и для будущих обновлений.

В чем разница между SQL и MySQL

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

База данных - это набор данных. Существуют различные типы баз данных. Одним из распространенных типов баз данных являются реляционные базы данных. SQL, обозначающий язык структурированных запросов, - это язык для выполнения операций с данными, присутствующими в реляционных базах данных. Напротив, MySQL - это система управления реляционными базами данных. Это программа, которая помогает управлять реляционными базами данных. Пользователь может выполнять команды SQL на MySQL и управлять данными в базах данных. Другими словами, SQL предоставляет инструкции или команды для MySQL. Эти команды позволяют пользователю хранить и получать доступ к данным в реляционных базах данных.

Ключевые области покрыты

1. Что такое SQL
- определение, типы
2. Что такое MySQL
- определение, использование
3. Связь между SQL и MySQL
- Схема ассоциации
4. Разница между SQL и MySQL
- Сравнение основных различий

Основные условия

SQL, MySQL, база данных, реляционные базы данных


Что такое SQL

Организации хранят данные, используя базы данных. Реляционные базы данных хранят данные в таблицах, и эти таблицы связаны друг с другом. Эти базы данных называются реляционными базами данных. Язык структурированных запросов (SQL) - это язык, который помогает хранить, управлять и получать данные в реляционной базе данных. Основой языка SQL является реляционная алгебра.

В SQL существует три типа: язык определения данных (DDL), язык манипулирования данными (DML) и язык управления данными (DCL). create, alter, drop являются командами DDL. «Создать» помогает создавать новые базы данных и таблицы. «Alter» помогает изменять таблицы. Команда «drop» помогает удалить базы данных и таблицы.

Такие команды, как выбор, вставка, обновление и удаление, являются командами DML. Команда ‘select’ помогает получить набор записей. «Вставить» помогает вводить новые записи. Кроме того, команда «update» изменяет запись, а команда «delete» удаляет запись.

Кроме того, предоставление и отзыв являются командами DCL. Команда «grant» позволяет предоставить привилегию пользователю, а команда «revoke» позволяет вернуть привилегию, предоставленную пользователю.

Что такое MySQL

Как упоминалось ранее, база данных представляет собой набор данных. Существуют различные типы данных, и реляционные базы данных являются одним из них. Эти базы данных состоят из таблиц, в которых хранятся все данные. В таблице есть строки и столбцы. Строки представляют каждую запись, в то время как столбцы представляют атрибуты. Например, база данных Student может иметь такие атрибуты, как ID, имя, возраст, класс, mark1, mark2 и т. Д. Каждая строка представляет набор сведений о конкретном ученике. Таблицы в базах данных связаны между собой. Поэтому эти базы данных называются реляционными базами данных.

Рисунок 1: Строки и столбцы таблицы в реляционной базе данных

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

MySQL предоставляет несколько преимуществ. Это помогает сделать данные безопасными и поддерживать целостность данных. Кроме того, он позволяет пользователям создавать резервные копии базы данных. MySQL также предоставляет свойства ACID, которые включают атомарность, согласованность, изоляцию и долговечность для выполнения эффективных бизнес-транзакций. Вкратце, MySQL - это популярная СУБД для серверной разработки, и она часто используется с PHP для веб-разработки.

Отношения между SQL и MySQL

  • SQL является стандартным языком базы данных для MySQL.

В чем разница между SQL и MySQL

Определение

SQL (язык структурированных запросов) - это язык базы данных для хранения, обработки и извлечения данных в реляционной базе данных. MySQL - это

В чем основная разница между MySQL и Microsoft SQL?

Гость

В чем основная разница между MySQL и Microsoft SQL?

Алексей

Скула это язык, а Мускул это база!

Slon

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

Денис Зозуля

MySQL - свободная система управления базами данных (СУБД). MySQL является собственностью компании Oracle Corporation, получившей её вместе с поглощённой Sun Microsystems, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License или под собственной коммерческой лицензией. Помимо этого разработчики создают функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.

Microsoft SQL Server - система управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Основной используемый язык запросов - Transact-SQL, создан совместно Microsoft и Sybase. Transact-SQL является реализацией стандарта ANSI/ISO по структурированному языку запросов (SQL) с расширениями. Используется для работы с базами данных размером от персональных до крупных баз данных масштаба предприятия; конкурирует с другими СУБД в этом сегменте рынка.

inga zajonc

Первый используют все, второй только некоторые.

Сергей

MsSQL - Является платным и рвботает под Windows
MySQL - Распростроняется свободно. Работает под *nix и Windows. Часто используется на web-хостингах


Разница между MySQL и MS SQL Server

SQL является аббревиатурой от языка структурированных запросов. Он используется для доступа, манипулирования и извлечения информации из базы данных.

MySQL — это система управления реляционными базами данных с открытым исходным кодом (RDBMS), основанная на языке структурированных запросов (SQL). Он работает на таких платформах, как Linux, UNIX и Windows.

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

MS SQL ServerMySQL
Developed by Microsoft.Developed by Oracle.
It supports programming languages like C++, JAVA, Ruby, Visual Basic, Delphi, R etc.MySQL offers extended running support for languages like Perl, Tcl, Haskey etc.
Expects a large amount of operational storage space.Expects less amount of operational storage space.
It enables for stopping query execution.It doesn’t allow query cancellation mid-way in the process.
Doesn’t block the database while backing up the data.Blocks the database while backing up the data.
It is not free.It is open source. It is freely available.
It is a highly secured and doesn’t allow any kind of database file manipulation while running.It allows database file manipulation while running.
It is available in multiple editions, such as Enterprise, Standard, Web, Workgroup, or Express.It is available in MySQL Standard Edition, MySQL Enterprise Edition, and MySQL Cluster Grade Edition.

Рекомендуемые посты:

Разница между MySQL и MS SQL Server

0.00 (0%) 0 votes

MS SQL и MySQL 2020

MS SQL vs MySQL

Двумя из наиболее широко используемых систем баз данных в мире являются MySQL и MS SQL. Было доказано, что эти две системы баз данных являются системами поддержки XML. Основные различия между этими двумя системами баз данных - вот что является предметом обсуждения в этой части. Ниже приведено сравнение двух стеблей, чтобы понять, насколько хорошо каждая из них выполняет свои функции.

Первое, что вы заметите об этих двух системах баз данных, - это то, как они доступны пользователям. MySQL - это программное обеспечение с открытым исходным кодом. Это означает, что использование MySQL происходит из объединенного знания разных людей из разных уголков мира. Вероятно, это может быть самым большим плюсом для MySQL, поскольку пользователи через платформу с открытым исходным кодом могут постоянно улучшать общую программу. MS SQL, с другой стороны, использует подход с закрытым исходным кодом. Таким образом, разработка программы осуществляется внутри компании, и все, что получают потребители, - это программа, которую они должны использовать.

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

MySQL как система баз данных предлагает различные варианты пользователям, особенно в отношении полученных движков. Он основан на Sybase, Berkeley DB, InnoDB и других механизмах. MS SQL ограничивается использованием только одного производного движка, и это Sybase.

Отличная функция, которая также продвигала MySQL, заключается в том, что она поставляется с множеством функций, но потребности в дисках очень низки. MS SQL, с другой стороны, требует интенсивного использования дискового пространства, и в разработке должно быть достаточное пространство, чтобы проблема работала должным образом. Если вы узнаете, как использовать системы баз данных, MySQL позволяет учиться у новичков. С другой стороны, MS SQL не так-то просто начать, и в основном предпочитают использовать профессионалы, поскольку они более сложны.

Общая производительность двух систем баз данных благоприятствует MySQL. С MySQL очень легко работать, и его производительность отличная, что объясняется использов

Топ-65 вопросов по SQL с собеседований, к которым вы должны подготовиться в 2019 году. Часть I / OTUS. Онлайн-образование corporate blog / Habr

Перевод статьи подготовлен для студентов курса «MS SQL Server разработчик»



Реляционные базы данных являются одними из наиболее часто используемых баз данных по сей день, и поэтому навыки работы с SQL для большинства должностей являются обязательными. В этой статье с вопросами по SQL с собеседований я познакомлю вас с наиболее часто задаваемыми вопросами по SQL (Structured Query Language — язык структурированных запросов). Эта статья является идеальным руководством для изучения всех концепций, связанных с SQL, Oracle, MS SQL Server и базой данных MySQL.

Наша статья с вопросами по SQL — универсальный ресурс, с помощью которого вы можете ускорить подготовку к собеседованию. Она состоит из набора из 65 самых распространенных вопросов, которые интервьюер может задать во время собеседования. Оно обычно начинается с базовых вопросов по SQL, а затем переходит к более сложным на основе обсуждения и ваших ответов. Эти вопросы по SQL с собеседований помогут вам извлечь максимальную выгоду на различных уровнях понимания.
Давайте начнем!



Вопрос 1. В чем разница между операторами DELETE и TRUNCATE?


№ Вопрос 2. Из каких подмножеств состоит SQL?

  • DDL (Data Definition Language, язык описания данных) — позволяет выполнять различные операции с базой данных, такие как CREATE (создание), ALTER (изменение) и DROP (удаление объектов).
  • DML (Data Manipulation Language, язык управления данными) — позволяет получать доступ к данным и манипулировать ими, например, вставлять, обновлять, удалять и извлекать данные из базы данных.
  • DCL (Data Control Language, язык контролирования данных) — позволяет контролировать доступ к базе данных. Пример — GRANT (предоставить права), REVOKE (отозвать права).

Вопрос 3. Что подразумевается под СУБД? Какие существуют типы СУБД?

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

Существует два типа СУБД:


  • Реляционная система управления базами данных: данные хранятся в отношениях (таблицах). Пример — MySQL.
  • Нереляционная система управления базами данных: не существует понятия отношений, кортежей и атрибутов. Пример — Mongo.

Вопрос 4. Что подразумевается под таблицей и полем в SQL?

Таблица — организованный набор данных в виде строк и столбцов. Поле — это столбцы в таблице. Например:
Таблица: Student_Information
Поле: Stu_Id, Stu_Name, Stu_Marks


Вопрос 5. Что такое соединения в SQL?

Для соединения строк из двух или более таблиц на основе связанного между ними столбца используется оператор JOIN. Он используется для объединения двух таблиц или получения данных оттуда. В SQL есть 4 типа соединения, а именно:


  • Inner Join (Внутреннее соединение)
  • Right Join (Правое соединение)
  • Left Join (Левое соединение)
  • Full Join (Полное соединение)

Вопрос 6. В чем разница между типом данных CHAR и VARCHAR в SQL?

И Char, и Varchar служат символьными типами данных, но varchar используется для строк символов переменной длины, тогда как Char используется для строк фиксированной длины. Например, char(10) может хранить только 10 символов и не сможет хранить строку любой другой длины, тогда как varchar(10) может хранить строку любой длины до 10, т.е. например 6, 8 или 2.


Вопрос 7. Что такое первичный ключ (Primary key)?


  • Первичный ключ — столбец или набор столбцов, которые однозначно идентифицируют каждую строку в таблице.
  • Однозначно идентифицирует одну строку в таблице
  • Нулевые (Null) значения не допускаются

_Пример: в таблице Student StuID является первичным ключом.


Вопрос 8. Что такое ограничения (Constraints)?

Ограничения (constraints) используются для указания ограничения на тип данных таблицы. Они могут быть указаны при создании или изменении таблицы. Пример ограничений:


  • NOT NULL
  • CHECK
  • DEFAULT
  • UNIQUE
  • PRIMARY KEY
  • FOREIGN KEY

Вопрос 9. В чем разница между SQL и MySQL?

SQL — стандартный язык структурированных запросов (Structured Query Language) на основе английского языка, тогда как MySQL — система управления базами данных. SQL — язык реляционной базы данных, который используется для доступа и управления данными, MySQL — реляционная СУБД (система управления базами данных), также как и SQL Server, Informix и т. д.


Вопрос 10. Что такое уникальный ключ (Unique key)?

  • Однозначно идентифицирует одну строку в таблице.
  • Допустимо множество уникальных ключей в одной таблице.
  • Допустимы NULL-значения (прим. перевод.: зависит от СУБД, в SQL Server значение NULL может быть добавлено только один раз в поле с UNIQUE KEY).

Вопрос 11. Что такое внешний ключ (Foreign key)?

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

Вопрос 12. Что подразумевается под целостностью данных?

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


Вопрос 13. В чем разница между кластеризованным и некластеризованным индексами в SQL?

  1. Различия между кластеризованным и некластеризованным индексами в SQL:
    Кластерный индекс используется для простого и быстрого извлечения данных из базы данных, тогда как чтение из некластеризованного индекса происходит относительно медленнее.
  2. Кластеризованный индекс изменяет способ хранения записей в базе данных — он сортирует строки по столбцу, который установлен как кластеризованный индекс, тогда как в некластеризованном индексе он не меняет способ хранения, но создает отдельный объект внутри таблицы, который указывает на исходные строки таблицы при поиске.
  3. Одна таблица может иметь только один кластеризованный индекс, тогда как некластеризованных у нее может быть много.

Вопрос 14. Напишите SQL-запрос для отображения текущей даты.

В SQL есть встроенная функция GetDate (), которая помогает возвращать текущий timestamp/дату.


Вопрос 15. Перечислите типы соединений

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

Inner join (Внутреннее соединение): в MySQL является наиболее распространенным типом. Оно используется для возврата всех строк из нескольких таблиц, для которых выполняется условие соединения.

Left Join (Левое соединение): в MySQL используется для возврата всех строк из левой (первой) таблицы и только совпадающих строк из правой (второй) таблицы, для которых выполняется условие соединения.

Right Join (Правое соединение): в MySQL используется для возврата всех строк из правой (второй) таблицы и только совпадающих строк из левой (первой) таблицы, для которых выполняется условие соединения.

Full Join (Полное соединение): возвращает все записи, для которых есть совпадение в любой из таблиц. Следовательно, он возвращает все строки из левой таблицы и все строки из правой таблицы.


Вопрос 16. Что вы подразумеваете под денормализацией?

Денормализация — техника, которая используется для преобразования из высших к низшим нормальным формам. Она помогает разработчикам баз данных повысить производительность всей инфраструктуры, поскольку вносит избыточность в таблицу. Она добавляет избыточные данные в таблицу, учитывая частые запросы к базе данных, которые объединяют данные из разных таблиц в одну таблицу.


Вопрос 17. Что такое сущности и отношения?

Сущности: человек, место или объект в реальном мире, данные о которых могут храниться в базе данных. В таблицах хранятся данные, которые представляют один тип сущности. Например — база данных банка имеет таблицу клиентов для хранения информации о клиентах. Таблица клиентов хранит эту информацию в виде набора атрибутов (столбцы в таблице) для каждого клиента.

Отношения: отношения или связи между сущностями, которые имеют какое-то отношение друг к другу. Например — имя клиента связано с номером учетной записи клиента и контактной информацией, которая может быть в той же таблице. Также могут быть отношения между отдельными таблицами (например, клиент к счетам).


Вопрос 18. Что такое индекс?

Индексы относятся к методу настройки производительности, позволяющему быстрее извлекать записи из таблицы. Индекс создает отдельную структуру для индексируемого поля и, следовательно, позволяет быстрее получать данные.


Вопрос 19. Опишите различные типы индексов.

Есть три типа индексов, а именно:


  1. Уникальный индекс (Unique Index): этот индекс не позволяет полю иметь повторяющиеся значения, если столбец индексируется уникально. Если первичный ключ определен, уникальный индекс может быть применен автоматически.
  2. Кластеризованный индекс (Clustered Index): этот индекс меняет физический порядок таблицы и выполняет поиск на основе значений ключа. Каждая таблица может иметь только один кластеризованный индекс.
  3. Некластеризованный индекс (Non-Clustered Index): не изменяет физический порядок таблицы и поддерживает логический порядок данных. Каждая таблица может иметь много некластеризованных индексов.

Вопрос 20. Что такое нормализация и каковы ее преимущества?

Нормализация — процесс организации данных, цель которого избежать дублирования и избыточности. Некоторые из преимуществ:


  • Лучшая организация базы данных
  • Больше таблиц с небольшими строками
  • Эффективный доступ к данным
  • Большая гибкость для запросов
  • Быстрый поиск информации
  • Проще реализовать безопасность данных
  • Позволяет легко модифицировать
  • Сокращение избыточных и дублирующихся данных
  • Более компактная база данных
  • Обеспечивает согласованность данных после внесения изменений

Вопрос 21. В чем разница между командами DROP и TRUNCATE?

Команда DROP удаляет саму таблицу, и нельзя сделать Rollback команды, тогда как команда TRUNCATE удаляет все строки из таблицы (прим. перевод.: в SQL Server Rollback нормально отработает и откатит DROP).


Вопрос 22. Объясните различные типы нормализации.

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


  • Первая нормальная форма (1NF) — нет повторяющихся групп в строках
  • Вторая нормальная форма (2NF) — каждое неключевое (поддерживающее) значение столбца зависит от всего первичного ключа
  • Третья нормальная форма (3NF) — каждое неключевое значение зависит только от первичного ключа и не имеет зависимости от другого неключевого значения столбца

Вопрос 23. Что такое свойство ACID в базе данных?

ACID означает атомарность (Atomicity), согласованность (Consistency), изолированность (Isolation), долговечность (Durability). Он используется для обеспечения надежной обработки транзакций данных в системе базы данных.

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

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

Изолированность. Основной целью изолированности является контроль механизма параллельного изменения данных.

Долговечность. Долговечность подразумевает, что если транзакция была подтверждена (COMMIT), произошедшие в рамках транзакции изменения сохранятся независимо от того, что может встать у них на пути (например, потеря питания, сбой или ошибки любого рода).


Вопрос 24. Что вы подразумеваете под «триггером» в SQL?

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


Вопрос 25. Какие операторы доступны в SQL?

В SQL доступно три типа оператора, а именно:


  1. Арифметические Операторы
  2. Логические Операторы
  3. Операторы сравнения

Вопрос 26. Совпадают ли значения NULL со значениями нуля или пробела?

Значение NULL вовсе не равно нулю или пробелу. Значение NULL представляет значение, которое недоступно, неизвестно, присвоено или неприменимо, тогда как ноль — это число, а пробел — символ.


Вопрос 27. В чем разница между перекрестным (cross join) и естественным (natural join) соединением?

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


Вопрос 28. Что такое подзапрос в SQL?

Подзапрос — это запрос внутри другого запроса, в котором определен запрос для извлечения данных или информации из базы данных. В подзапросе внешний запрос называется основным запросом, тогда как внутренний запрос называется подзапросом. Подзапросы всегда выполняются первыми, а результат подзапроса передается в основной запрос. Он может быть вложен в SELECT, UPDATE или любой другой запрос. Подзапрос также может использовать любые операторы сравнения, такие как >, < или =.


Вопрос 29. Какие бывают типы подзапросов?

Существует два типа подзапросов, а именно: коррелированные и некоррелированные.


  • Коррелированный подзапрос: это запрос, который выбирает данные из таблицы со ссылкой на внешний запрос. Он не считается независимым запросом, поскольку ссылается на другую таблицу или столбец в таблице.
  • Некоррелированный подзапрос: этот запрос является независимым запросом, в котором выходные данные подзапроса подставляются в основной запрос.

Вопрос 30. Перечислите способы получить количество записей в таблице?

Для подсчета количества записей в таблице вы можете использовать следующие команды:
SELECT * FROM table1
SELECT COUNT(*) FROM table1
SELECT rows FROM sysindexes WHERE id = OBJECT_ID(table1) AND indid < 2



Ещё 35 вопросов с ответами опубликуем в следующей части… Следите за новостями!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *