Перевод статьи подготовлен для студентов курса «MS SQL Server разработчик»
Реляционные базы данных являются одними из наиболее часто используемых баз данных по сей день, и поэтому навыки работы с SQL для большинства должностей являются обязательными. В этой статье с вопросами по SQL с собеседований я познакомлю вас с наиболее часто задаваемыми вопросами по SQL (Structured Query Language — язык структурированных запросов). Эта статья является идеальным руководством для изучения всех концепций, связанных с SQL, Oracle, MS SQL Server и базой данных MySQL.
Наша статья с вопросами по SQL — универсальный ресурс, с помощью которого вы можете ускорить подготовку к собеседованию. Она состоит из набора из 65 самых распространенных вопросов, которые интервьюер может задать во время собеседования. Оно обычно начинается с базовых вопросов по SQL, а затем переходит к более сложным на основе обсуждения и ваших ответов. Эти вопросы по SQL с собеседований помогут вам извлечь максимальную выгоду на различных уровнях понимания.
- Вопрос 1. В чем разница между операторами DELETE и TRUNCATE?
- № Вопрос 2. Из каких подмножеств состоит SQL?
- Вопрос 3. Что подразумевается под СУБД? Какие существуют типы СУБД?
- Вопрос 4. Что подразумевается под таблицей и полем в SQL?
- Вопрос 5. Что такое соединения в SQL?
- Вопрос 6. В чем разница между типом данных CHAR и VARCHAR в SQL?
- Вопрос 7. Что такое первичный ключ (Primary key)?
- Вопрос 8. Что такое ограничения (Constraints)?
- Вопрос 9. В чем разница между SQL и MySQL?
- Вопрос 10. Что такое уникальный ключ (Unique key)?
- Вопрос 11. Что такое внешний ключ (Foreign key)?
- Вопрос 12. Что подразумевается под целостностью данных?
- Вопрос 13. В чем разница между кластеризованным и некластеризованным индексами в SQL?
- Вопрос 14. Напишите SQL-запрос для отображения текущей даты.
- Вопрос 15. Перечислите типы соединений
- Вопрос 16. Что вы подразумеваете под денормализацией?
- Вопрос 17. Что такое сущности и отношения?
- Вопрос 18. Что такое индекс?
- Вопрос 19. Опишите различные типы индексов.
- Вопрос 20. Что такое нормализация и каковы ее преимущества?
- Вопрос 21. В чем разница между командами DROP и TRUNCATE?
- Вопрос 22. Объясните различные типы нормализации.
- Вопрос 23. Что такое свойство ACID в базе данных?
- Вопрос 24. Что вы подразумеваете под «триггером» в SQL?
- Вопрос 25. Какие операторы доступны в SQL?
- Вопрос 26. Совпадают ли значения NULL со значениями нуля или пробела?
- Вопрос 27. В чем разница между перекрестным (cross join) и естественным (natural join) соединением?
- Вопрос 28. Что такое подзапрос в SQL?
- Вопрос 29. Какие бывают типы подзапросов?
- Вопрос 30. Перечислите способы получить количество записей в таблице?
- Список полезных ресурсов по Microsoft SQL Server / Хабр
- MS SQL Server и T-SQL
- Создание и удаление базы данных
- Модели развертывания
- Масштабируемая производительность и бассейны
- Широкие возможности мониторинга и оповещения
- Доступность возможностей
- Встроенный интеллект
- Расширенная безопасность и соответствие
- Создание и управление ресурсами SQL Azure с помощью портала Azure
- База данных SQL часто задаваемые вопросы
- Взаимодействие с командой разработчиков SQL Server
- Следующие шаги
- Sql.Database — PowerQuery M | Microsoft Docs
Вопрос 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?
- Различия между кластеризованным и некластеризованным индексами в SQL:
Кластерный индекс используется для простого и быстрого извлечения данных из базы данных, тогда как чтение из некластеризованного индекса происходит относительно медленнее. - Кластеризованный индекс изменяет способ хранения записей в базе данных — он сортирует строки по столбцу, который установлен как кластеризованный индекс, тогда как в некластеризованном индексе он не меняет способ хранения, но создает отдельный объект внутри таблицы, который указывает на исходные строки таблицы при поиске.
- Одна таблица может иметь только один кластеризованный индекс, тогда как некластеризованных у нее может быть много.
Вопрос 14. Напишите SQL-запрос для отображения текущей даты.
В SQL есть встроенная функция GetDate (), которая помогает возвращать текущий timestamp/дату.
Вопрос 15. Перечислите типы соединений
Существуют различные типы соединений, которые используются для извлечения данных между таблицами. Принципиально они делятся на четыре типа, а именно:
Inner join (Внутреннее соединение): в MySQL является наиболее распространенным типом. Оно используется для возврата всех строк из нескольких таблиц, для которых выполняется условие соединения.
Left Join (Левое соединение): в MySQL используется для возврата всех строк из левой (первой) таблицы и только совпадающих строк из правой (второй) таблицы, для которых выполняется условие соединения.
Right Join (Правое соединение): в MySQL используется для возврата всех строк из правой (второй) таблицы и только совпадающих строк из левой (первой) таблицы, для которых выполняется условие соединения.
Full Join (Полное соединение): возвращает все записи, для которых есть совпадение в любой из таблиц. Следовательно, он возвращает все строки из левой таблицы и все строки из правой таблицы.
Вопрос 16. Что вы подразумеваете под денормализацией?
Денормализация — техника, которая используется для преобразования из высших к низшим нормальным формам. Она помогает разработчикам баз данных повысить производительность всей инфраструктуры, поскольку вносит избыточность в таблицу. Она добавляет избыточные данные в таблицу, учитывая частые запросы к базе данных, которые объединяют данные из разных таблиц в одну таблицу.
Вопрос 17. Что такое сущности и отношения?
Сущности: человек, место или объект в реальном мире, данные о которых могут храниться в базе данных. В таблицах хранятся данные, которые представляют один тип сущности. Например — база данных банка имеет таблицу клиентов для хранения информации о клиентах. Таблица клиентов хранит эту информацию в виде набора атрибутов (столбцы в таблице) для каждого клиента.
Отношения: отношения или связи между сущностями, которые имеют какое-то отношение друг к другу. Например — имя клиента связано с номером учетной записи клиента и контактной информацией, которая может быть в той же таблице. Также могут быть отношения между отдельными таблицами (например, клиент к счетам).
Вопрос 18. Что такое индекс?
Вопрос 19. Опишите различные типы индексов.
Есть три типа индексов, а именно:
- Уникальный индекс (Unique Index): этот индекс не позволяет полю иметь повторяющиеся значения, если столбец индексируется уникально. Если первичный ключ определен, уникальный индекс может быть применен автоматически.
- Кластеризованный индекс (Clustered Index): этот индекс меняет физический порядок таблицы и выполняет поиск на основе значений ключа. Каждая таблица может иметь только один кластеризованный индекс.
- Некластеризованный индекс (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 доступно три типа оператора, а именно:
- Арифметические Операторы
- Логические Операторы
- Операторы сравнения
Вопрос 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 вопросов с ответами опубликуем в следующей части… Следите за новостями!
Список полезных ресурсов по Microsoft SQL Server / Хабр
Список из 147 бесплатных и платных интернет ресурсов для изучения и работы с Microsoft SQL Server.
Статья в формате markdown на английском языке доступна на Github
Просьба в комментариях поделиться ссылками на другие веб ресурсы по SQL Server. Обязательно их добавлю.
Также, вас возможно заинтересуют другие статьи о Microsoft SQL Server:
Ресурсы SQL Server
- Блоги
- Безопасность (огромное спасибо Troy Hunt)
- SQL injection
- Exploit databases and breach coverage
- seclists.org – Подборка уязвимостей с разных ресурсов
- Exploit Database – Солидная подборка уязвимостей баз данных
- PunkSPIDER – Большой список уязвимостей всех типов для веб ресурсов
- Data Loss DB – Хороший список уязвимостей для баз данных
- Information is Beautiful: World’s Biggest Data Breaches – Интересная географическая визуализация произошедших уязвимостей
- SQL injection
- Бесплатные видео
- Бесплатные подкасты (на английском)
- Курсы
- Бесплатные
- Платные
- Бесплатные
- Обратная Совместимость
- Другое
SQL Server Ссылки для загрузки учебных баз данных
PowerShell и SQL Server
Форматирование TSQL
Генерация тестовых данных для SQL Server
Бесплатные SQL Server и R книги
SQL Server:
R:
Update 2016-07-21: Добавлены SQLFiddle и sql-ex.ru
Update 2016-07-19: Добавлен russianVC, спасибо @AlanDenton
Update 2016-07-19: Исправлены ссылки Backwards Compatibility (и добавлена для SQL Server 2016), спасибо @Tsyoma
Приветствую Вас на сайте Info-Comp.ru! Сегодня я продолжаю рассказ о языке SQL, и в этом материале я немного расскажу о том, как создаются и выполняются SQL запросы к базе данных, а точнее какие инструменты (программы) для этого используются.
Как создать SQL запрос? Где писать SQL код?
В одной из прошлых статей я рассказал Вам, что такое SQL и какие СУБД бывают, но у начинающих, кто только начинает работать с базами данных, могут возникнуть определённые вопросы, например, как работать с этими базами данных, как подключиться к базе и как выполнить SQL запрос?
Обычный случай, когда человек только что установил себе какую-нибудь СУБД (например, для изучения SQL) и не знает, что делать дальше, где писать SQL код? какую программу запустить?
Или другой, еще более распространённый вариант, когда уже есть установленный SQL сервер, а начинающему программисту (IT-ку), которому сказали, что он будет еще сопровождать SQL сервер, нужно подключиться к этому серверу и выполнить какой-нибудь SQL запрос или инструкцию, а он, так как никогда не работал с серверами баз данных, конечно же, не знает, как это сделать. И все это на самом деле логично, ведь наличие установленного сервера баз данных не говорит о том, что на сервере также есть средства управления этим сервером и средства разработки SQL инструкций, так как это отдельные программы, которые устанавливаются на клиентском компьютере (но можно установить и на самом сервере).
Поэтому сегодня, специально для начинающих SQL программистов, я расскажу о том, какие инструменты нужны для того, чтобы создавать и выполнять SQL запросы к базе данных, иными словами, где писать SQL запросы. При этом я расскажу про инструменты для всех популярных СУБД: Microsoft SQL Server, Oracle Database, MySQL и PostgreSQL. Так как для каждой СУБД используются отдельные инструменты, но есть, конечно же, и универсальные инструменты, которые умеют работать одновременно практически со всеми из вышеперечисленных баз данных.
Если у Вас возникает вопрос, как послать SQL запрос к базе данных из приложения при его разработке (например, Вы начинающий программист Java, C# или других языков), то это делается непосредственно из самой IDE (среды программирования), используя специальные драйверы для подключения к БД. Устанавливать перечисленные в данной статье инструменты необязательно, они нужны для прямой работы с базой данных: разработка и отладка SQL инструкций, выполнение административных задач и так далее.
Инструменты для создания SQL запросов
Сейчас я перечислю и коротко расскажу про инструменты, которые можно использовать для написания SQL запросов и их выполнения на различных SQL серверах, при этом функционал этих инструментов не ограничивается редактором SQL запросов, на самом деле большинство современных программ для работы с базами данных являются многофункциональными, их могут использовать как разработчики, так и администраторы баз данных.
В этом материале я перечислю только некоторые инструменты, так как на самом деле их очень много. Кстати, если Вы знаете или уже пользуетесь каким-нибудь инструментом, но его в перечисленном ниже списке не обнаружили, то пишите об этом в комментариях, я думаю, всем читателям будет интересно узнать, какие еще существуют средства создания SQL запросов.
Также обязательно отмечу, что, так как здесь перечислены качественные и многофункциональные инструменты, большинство из них, конечно же, платные, но у них есть бесплатные версии или пробный период. Если Вы будете заниматься SQL разработкой на более-менее нормальном уровне, то возможно стоит и отдать деньги за понравившееся Вам решение.
Однако с другой стороны, для начинающих в целях обучения или для небольших проектов покупать отдельный, пусть и очень функциональный и удобный инструмент, я думаю, не стоит, так как достаточно будет использовать стандартные средства, которые обычно разработчики конкретной СУБД предоставляют бесплатно. Основные стандартные средства я буду отмечать, чтобы Вы понимали, от чего Вам нужно отталкиваться, если Вы начинающий.
Microsoft SQL Server
Начну я, конечно же, с Microsoft SQL Server, так как я уже достаточно долго работаю с данной СУБД. Microsoft SQL Server – это система управления базами данных от компании Microsoft. Она очень популярна в корпоративном секторе, особенно в крупных компаниях.
Инструментов для работы с Microsoft SQL Server много, однако самый распространённый и популярный вариант – это, конечно же, SQL Server Management Studio.
SQL Server Management Studio
SQL Server Management Studio (SSMS) — это бесплатная графическая среда для управления инфраструктурой SQL Server, разработанная компанией Microsoft. С помощью Management Studio Вы можете разрабатывать и выполнять инструкции T-SQL, а также администрировать Microsoft SQL Server.
Среда SQL Server Management Studio – это основной, стандартный инструмент для работы с Microsoft SQL Server.
Если стандартного функционала SSMS Вам недостаточно, то для этой среды разработано очень много различных плагинов и надстроек, которые расширяют функционал Management Studio.
Более подробно про SQL Server Management Studio, включая то, как установить данную среду, я рассказывал в статье – Обзор и установка SQL Server Management Studio.
Дополнительные материалы:
SQL Server Data Tools
SQL Server Data Tools – это еще один инструмент для работы с Microsoft SQL Server, разработанный компанией Microsoft. Данный инструмент входит в состав Visual Studio, и устанавливается он как отдельная рабочая нагрузка. Предназначен SQL Server Data Tools в первую очередь для разработчиков приложений.
Если Вы разрабатываете программы с помощью Visual Studio, при этом у Вас возникла необходимость работы с Microsoft SQL Server, то SQL Server Data Tools будет для Вас очень удобным и привычным инструментом.
Страница продукта – https://docs.microsoft.com/ru-ru/sql/ssdt/download-sql-server-data-tools-ssdt
dbForge Studio for SQL Server
dbForge Studio for SQL Server – это мощная среда для разработки и администрирования баз данных в Microsoft SQL Server. Разработчиком данной среды является компания Devart, у которой, кстати, есть много инструментов для работы с Microsoft SQL Server, про один инструмент я уже рассказывал в статье – Как сравнить и синхронизировать две базы данных в Microsoft SQL Server? Кроме того, у Devart есть и инструменты для работы с другими СУБД, про некоторые я сегодня еще расскажу.
Страница продукта – https://www.devart.com/ru/dbforge/sql/studio/
Red Gate SQL Prompt
Red Gate SQL Prompt – еще один мощнейший инструмент для работы с Microsoft SQL Server. С помощью него также можно разрабатывать SQL инструкции и администрировать SQL сервер. Данную среду разрабатывает компания Redgate Software, которая специализируется на работе с данными, у нее есть инструменты и для работы с другими СУБД, но основным направлением является Microsoft SQL Server.
Страница продукта – https://www.red-gate.com/products/sql-development/sql-prompt/
Navicat for SQL Server
Navicat for SQL Server – это графический инструмент для разработки и администрирования баз данных в Microsoft SQL Server. С помощью него можно создавать, редактировать и удалять любые объекты базы данных, разрабатывать и выполнять SQL запросы и инструкции, а также просматривать данные в таблицах, включая двоичные и шестнадцатеричные данные.
Страница продукта – https://www.navicat.com/en/products/navicat-for-sqlserver
EMS SQL Management Studio for SQL Server
EMS SQL Management Studio for SQL Server – это комплексное решение для разработки и администрирования баз данных в Microsoft SQL Server. Разработкой занимается компания EMS, которая специализируется на разработке инструментов администрирования баз данных и приложений для управления данными. У нее много инструментов для работы с разными СУБД.
Страница продукта – https://www.sqlmanager.net/products/studio/mssql/
DataGrip
DataGrip – это универсальный инструмент для работы с базами данных, он умеет работать с Microsoft SQL Server, PostgreSQL, MySQL, Oracle, Sybase, DB2 и другими. Разработчиком DataGrip выступает JetBrains.
Страница продукта – https://www.jetbrains.com/datagrip/
SQL Enlight
SQL Enlight – еще одно приложение для разработки T-SQL кода. Разработкой занимается компания Ubitsoft.
Страница продукта – https://ubitsoft.com/
SQLCMD
SQLCMD – это стандартный консольный инструмент для работы с Microsoft SQL Server от компании Microsoft. Его использовать как основное средство разработки и администрирования SQL Server не получится, он в основном предназначен для каких-то служебных задач, выполнения скриптов и так далее. Его я сюда включил, так как начинающим программистам и администраторам SQL сервера об этом инструменте знать нужно.
Oracle Database
Oracle Database – это система управления базами данных от компании Oracle. Это также очень популярная СУБД, и также среди крупных компаний.
Инструментов для работы с Oracle Database также много, вот некоторые из них.
Oracle SQL Developer
Oracle SQL Developer – это стандартный, бесплатный и основной инструмент для разработчика баз данных Oracle.
Разработкой занимается компания Oracle. С помощью Oracle SQL Developer можно разрабатывать инструкции на PL/SQL и выполнять SQL запросы.
Страница продукта – https://www.oracle.com/database/technologies/appdev/sql-developer.html
SQL Navigator for Oracle
SQL Navigator for Oracle – это удобный и не менее популярный инструмент для работы с Oracle Database.
Страница продукта – https://www.quest.com/products/sql-navigator/
Navicat for Oracle
Navicat for Oracle – это инструмент для разработки и администрирования баз данных Oracle Database. Этот инструмент имеет широкий набор функций для облегчения управления данными, таких как инструмент моделирования данных, синхронизация данных, импорт и экспорт данных.
Страница продукта – https://www.navicat.com/en/products/navicat-for-oracle
EMS SQL Management Studio for Oracle
EMS SQL Management Studio for Oracle – это комплексное решение для разработки и администрирования баз данных Oracle Database. Разработкой занимается компания EMS, продукты которой я уже упоминал сегодня.
Страница продукта – https://www.sqlmanager.net/ru/products/studio/oracle
dbForge Studio for Oracle
dbForge Studio for Oracle – еще один продукт компании Devart, который предназначен для разработки и обслуживания баз данных Oracle Database, он также имеет очень мощный функционал.
Страница продукта – https://www.devart.com/ru/dbforge/oracle/
MySQL
MySQL – это система управления базами данных также от компании Oracle, но только она распространяется бесплатно. MySQL получила широкое применение в интернете как средство хранения данных сайтов.
Для работы с MySQL существует очень много инструментов, вот самые популярные и функциональные.
MySQLWorkbench
MySQL Workbench – это основной и стандартный инструмент для работы с MySQL.
Он позволяет осуществлять разработку на SQL и администрировать MySQL сервер.
Страница продукта – https://www.mysql.com/products/workbench/
PHPMyAdmin
PHPMyAdmin – это бесплатный веб-инструмент для работы с MySQL. Очень широкую популярность он приобрел в интернете, так как именно PHPMyAdmin используют для разработки баз данных на многих web-сайтах, а также на большинстве хостинг-провайдерах для управления базой MySQL используется именно PHPMyAdmin.
Дополнительные материалы:
Navicat for MySQL
Navicat for MySQL – это инструмент для администрирования и разработки баз данных MySQL и MariaDB. Navicat for MySQL позволяет подключаться и работать с базами данных в MySQL и MariaDB одновременно.
Страница продукта – https://www.navicat.com/en/products/navicat-for-mysql
dbForge Studio for MySQL
dbForge Studio for MySQL – это мощное решение для разработки и управления базами данных MySQL и MariaDB. Данный инструмент позволяет создавать и выполнять SQL запросы, разрабатывать и отлаживать процедуры и функции, а также управлять объектами баз данных MySQL с помощью удобного графического пользовательского интерфейса.
Страница продукта – https://www.devart.com/ru/dbforge/mysql/
EMS SQL Management Studio for MySQL
EMS SQL Management Studio for MySQL – это еще одно комплексное и мощное решение от компании EMS, на этот раз для разработки и администрирования баз данных MySQL. Данный инструмент содержит все необходимые компоненты для работы с MySQL: редактор SQL запросов, средство импорта, экспорта и сравнения данных и много других, предназначенных не только для разработчиков, но и для администраторов и аналитиков данных.
Страница продукта – https://www.sqlmanager.net/ru/products/studio/mysql
SQL Maestro for MySQL
SQL Maestro for MySQL – это еще один инструмент разработки и администрирования баз данных MySQL и MariaDB.
Страница продукта – https://www.sqlmaestro.com/products/mysql/maestro/
PostgreSQL
PostgreSQL – эта бесплатная система управления базами данных, и она очень популярна и функциональна.
Для работы с PostgreSQL можно использовать следующие инструменты.
pgAdmin
pgAdmin – это основное, стандартное средство для разработки баз данных PostgreSQL, которое распространяется бесплатно.
pgAdmin достаточно удобный инструмент для разработчика, с помощью него можно разрабатывать SQL инструкции, выполнять SQL запросы, создавать объекты базы данных и многое другое.
Дополнительные материалы:
EMS SQL Management Studio for PostgreSQL
EMS SQL Management Studio for PostgreSQL – это комплексное решение для разработки и администрирования баз данных PostgreSQL. Данный инструмент так же, как все остальные продукты компании EMS, имеет очень широкий функционал от простого редактора SQL запросов до инструмента сравнения данных.
Страница продукта – https://www.sqlmanager.net/ru/products/studio/postgresql
Navicat for PostgreSQL
Navicat for PostgreSQL – это простой графический инструмент для разработки баз данных PostgreSQL. Он позволяет писать и выполнять SQL запросы любой сложности.
Страница продукта – https://www.navicat.com/en/products/navicat-for-postgresql
dbForge Studio for PostgreSQL
dbForge Studio for PostgreSQL – это еще один мощный инструмент от компании Devart, на этот раз для работы с PostgreSQL. Он позволяет разрабатывать и выполнять запросы, редактировать код в удобном интерфейсе, формировать отчеты, модифицировать данные, а также осуществлять импорт и экспорт данных.
Страница продукта – https://www.devart.com/dbforge/postgresql/studio/
psql
psql – это стандартная консольная утилита для работы с PostgreSQL. Используется в основном для автоматизации различных служебных задач, хотя вести SQL разработку в ней также можно.
DataGrip
Также осуществлять разработку баз данных PostgreSQL можно и с помощью уже упомянутого в этой статье универсального инструмента DataGrip от компании JetBrains.
Выводы
Как видите, существует очень много инструментов для работы с базами данных, при этом многие компании специализируется на выпуске программ для баз данных, и у них есть версии для каждой популярной СУБД. Такие инструменты очень функциональны, и они, конечно же, платные. Но, как я уже отмечал, функционала стандартных средств, которые предоставляются бесплатно, для создания и выполнения SQL запросов будет вполне достаточно.
На сегодня это все, удачи Вам, пока!
Нравится3Не нравится1MS SQL Server и T-SQL
Создание и удаление базы данных
Последнее обновление: 09.07.2017
Создание базы данных
Для создания базы данных используется команда CREATE DATABASE.
Чтобы создать новую базу данных откроем SQL Server Management Studio. Нажмем на назначение сервера в окне Object Explorer и в появившемся меню выберем пункт New Query.
В центральное поле для ввода выражений sql введем следующий код:
CREATE DATABASE usersdb
Тем самым мы создаем базу данных, которая будет называться «usersdb»:
Для выполнения команды нажмем на панели инструментов на кнопку Execute или на клавишу F5. И на сервере появится новая база данных.
После создания базы даных, мы можем установить ее в качестве текущей с помощью команды USE:
USE usersdb;
Прикрепление базы данных
Возможна ситуация, что у нас уже есть файл базы данных, который, к примеру, создан на другом компьютере. Файл базы данных представляет файл с расширением mdf, и этот файл в принципе мы можем переносить. Однако даже если мы скопируем его компьютер с установленным MS SQL Server, просто так скопированная база данных на сервере не появится. Для этого необходимо выполнить прикрепление базы данных к серверу. В этом случае применяется выражение:
CREATE DATABASE название_базы_данных ON PRIMARY(FILENAME='путь_к_файлу_mdf_на_локальном_компьютере') FOR ATTACH;
В качестве каталога для базы данных лучше использовать каталог, где хранятся остальные базы данных сервера. На Windows 10 по умолчанию это каталог C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA. Например, пусть в моем случае файл с данными называется userstoredb.mdf. И я хочу этот файл добавить на сервер как базу данных. Вначале его надо скопировать в выше указанный каталог. Затем для прикрепления базы к серверу надо использовать следующую команду:
CREATE DATABASE contactsdb ON PRIMARY(FILENAME='C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\userstoredb.mdf') FOR ATTACH;
После выполнения команды на сервере появится база данных contactsdb.
Удаление базы данных
Для удаления базы данных применяется команда DROP DATABASE, которая имеет следующий синтаксис:
DROP DATABASE database_name1 [, database_name2]...
После команды через запятую мы можем перечислить все удаляемые базы данных. Например, удаление базы данных contactsdb:
DROP DATABASE contactsdb
Стоит учитывать, что даже если удаляемая база данных была прикреплена, то все равно будут удалены все файлы базы данных.
- 18 минут на чтение
В этой статье
ПРИМЕНИМО к: База данных SQL Azure
Azure SQL Database — это полностью управляемое ядро базы данных платформа как услуга (PaaS), которое выполняет большинство функций управления базами данных, таких как обновление, исправление, резервное копирование и мониторинг без участия пользователя.База данных Azure SQL всегда работает в последней стабильной версии ядра базы данных SQL Server и исправлена ОС с доступностью 99,99%. Возможности PaaS, встроенные в базу данных SQL Azure, позволяют сосредоточиться на действиях по администрированию и оптимизации базы данных, которые важны для вашего бизнеса.
С помощью базы данных SQL Azure вы можете создать высокодоступный и высокопроизводительный слой хранения данных для приложений и решений в Azure. База данных SQL может быть правильным выбором для множества современных облачных приложений, поскольку она позволяет обрабатывать как реляционные данные, так и нереляционные структуры, такие как графики, JSON, пространственные и XML.
База данныхAzure SQL основана на последней стабильной версии ядра базы данных Microsoft SQL Server. Вы можете использовать расширенные функции обработки запросов, такие как высокопроизводительные технологии в памяти и интеллектуальная обработка запросов. Фактически, новейшие возможности SQL Server передаются сначала в базу данных SQL, а затем в сам SQL Server. Вы получаете новейшие возможности SQL Server без дополнительных затрат на исправление или обновление, протестированные на миллионах баз данных.
База данных SQLпозволяет легко определять и масштабировать производительность в рамках двух разных моделей закупок: модель закупок на основе vCore и модель закупок на основе DTU.База данных SQL — это полностью управляемый сервис со встроенной высокой доступностью, резервным копированием и другими общими операциями обслуживания. Microsoft обрабатывает все исправления и обновления кода SQL и операционной системы. Вам не нужно управлять базовой инфраструктурой.
Модели развертывания
База данных SQL Azure предоставляет следующие параметры развертывания для базы данных:
- Единая база данных представляет собой полностью управляемую изолированную базу данных. Вы можете использовать эту опцию, если у вас есть современные облачные приложения и микросервисы, которым требуется единый надежный источник данных.Одна база данных похожа на отдельную базу данных в ядре базы данных SQL Server.
- Elastic pool — это набор отдельных баз данных с общим набором ресурсов, таких как процессор или память. Отдельные базы данных могут быть перемещены в и из эластичного пула.
Важные
Чтобы понять различия между функциями базы данных SQL и SQL Server, а также различия между различными параметрами базы данных SQL Azure, см. Раздел Функции базы данных SQL.
База данных SQLобеспечивает предсказуемую производительность с несколькими типами ресурсов, уровнями обслуживания и размерами вычислений.Он обеспечивает динамическую масштабируемость без простоев, встроенную интеллектуальную оптимизацию, глобальную масштабируемость и доступность, а также расширенные параметры безопасности. Эти возможности позволяют сосредоточиться на быстрой разработке приложений и сокращении времени выхода на рынок, а не на управление виртуальными машинами и инфраструктурой. База данных SQL в настоящее время находится в 38 центрах обработки данных по всему миру, поэтому вы можете запустить свою базу данных в ближайшем центре обработки данных.
Масштабируемая производительность и бассейны
Вы можете определить количество назначенных ресурсов.
- При использовании отдельных баз данных каждая база данных изолирована от других и является переносимой. Каждый имеет свой собственный гарантированный объем вычислительных ресурсов, памяти и ресурсов хранения. Количество ресурсов, назначенных базе данных, выделено для этой базы данных и не используется совместно с другими базами данных в Azure. Вы можете динамически масштабировать отдельные ресурсы базы данных вверх и вниз. Один вариант базы данных предоставляет разные вычислительные ресурсы, память и ресурсы хранения для разных нужд. Например, вы можете получить от 1 до 80 vCores или от 32 ГБ до 4 ТБ.Уровень обслуживания Hyper-Scale для отдельных баз данных позволяет масштабировать до 100 ТБ с возможностью быстрого резервного копирования и восстановления.
- С помощью эластичных пулов вы можете назначать ресурсы, которые являются общими для всех баз данных в пуле. Вы можете создать новую базу данных или переместить существующие отдельные базы данных в пул ресурсов, чтобы максимально использовать ресурсы и сэкономить деньги. Эта опция также дает вам возможность динамически масштабировать ресурсы эластичного пула вверх и вниз.
Вы можете создать свое первое приложение на небольшой базе данных по низкой цене в месяц на уровне обслуживания общего назначения.Затем вы можете в любое время вручную или программно изменить его уровень обслуживания на критически важный для бизнеса уровень обслуживания, чтобы удовлетворить потребности вашего решения. Вы можете настроить производительность без простоев для своего приложения или своих клиентов. Динамическая масштабируемость позволяет вашей базе данных прозрачно реагировать на быстро меняющиеся требования к ресурсам. Вы платите только за те ресурсы, которые вам нужны, когда они вам нужны.
Динамическая масштабируемость отличается от автомасштабирования . Автоматическое масштабирование — это когда сервис автоматически масштабируется на основе критериев, тогда как динамическое масштабирование позволяет выполнять масштабирование вручную без простоев.Опция единой базы данных поддерживает динамическое масштабирование вручную, но не автомасштабирование. Для более автоматической работы рассмотрите возможность использования эластичных пулов, которые позволяют базам данных совместно использовать ресурсы в пуле на основе индивидуальных потребностей баз данных. Другой вариант — использовать сценарии, которые могут помочь автоматизировать масштабируемость для одной базы данных. Пример см. В разделе Использование PowerShell для мониторинга и масштабирования одной базы данных.
Приобретение моделей
База данных SQLпредлагает следующие модели покупки:
- Модель закупок на основе vCore позволяет выбрать количество vCores, объем памяти, а также объем и скорость хранения.Модель закупок на основе vCore также позволяет использовать гибридное преимущество Azure для SQL Server для экономии средств. Дополнительные сведения о гибридном преимуществе Azure см. В разделе «Часто задаваемые вопросы» далее в этой статье.
- Модель закупок на основе DTU предлагает сочетание вычислительных ресурсов, памяти и ресурсов ввода-вывода в трех уровнях обслуживания для поддержки легких и тяжелых рабочих нагрузок базы данных. Размеры вычислений на каждом уровне предоставляют различное сочетание этих ресурсов, к которому можно добавить дополнительные ресурсы хранения.
- Бессерверная модель автоматически масштабирует вычисления на основе потребностей рабочей нагрузки и счетов за количество вычислений, используемых в секунду. Уровень вычислений без сервера также автоматически приостанавливает базы данных в течение неактивных периодов, когда выставляется счет только на хранение, и автоматически возобновляет базы данных, когда активность возвращается.
Уровни обслуживания
База данных SQL Azure предлагает три уровня обслуживания, предназначенные для различных типов приложений:
- Общий уровень / Стандартный уровень обслуживания, предназначенный для общих рабочих нагрузок.Он предлагает бюджетно-ориентированные сбалансированные вычисления и варианты хранения. Уровень обслуживания
- Business Critical / Premium, разработанный для приложений OLTP с высокой скоростью транзакций и минимальным временем ожидания ввода-вывода. Он обеспечивает максимальную устойчивость к сбоям благодаря использованию нескольких изолированных реплик. Уровень обслуживания
- Hyperscale, разработанный для очень большой базы данных OLTP и возможности автоматического масштабирования хранилища и плавного масштабирования вычислений.
Эластичные бассейны для максимального использования ресурсов
Для многих предприятий и приложений достаточно иметь возможность создавать отдельные базы данных и повышать или понижать производительность по требованию, особенно если модели использования относительно предсказуемы.Непредсказуемые модели использования могут затруднить управление затратами и вашей бизнес-моделью. Эластичные бассейны предназначены для решения этой проблемы. Вы выделяете ресурсы производительности для пула, а не отдельной базы данных. Вы платите за ресурсы коллективной производительности пула, а не за производительность одной базы данных.
С эластичными пулами вам не нужно сосредотачиваться на повышении и снижении производительности базы данных, поскольку спрос на ресурсы колеблется. Объединенные базы данных потребляют ресурсы производительности эластичного пула по мере необходимости.Объединенные базы данных потребляют, но не выходят за пределы пула, поэтому ваши затраты остаются предсказуемыми, даже если использование отдельных баз данных не делает.
Вы можете добавлять и удалять базы данных в пуле, масштабируя ваше приложение от нескольких баз данных до тысяч, и все это в рамках бюджета, который вы контролируете. Вы также можете контролировать минимальные и максимальные ресурсы, доступные для баз данных в пуле, чтобы гарантировать, что ни одна база данных в пуле не использует все ресурсы пула и что каждая база данных в составе пула имеет гарантированный минимальный объем ресурсов.Чтобы узнать больше о шаблонах проектирования для приложений «программное обеспечение как услуга» (SaaS), использующих эластичные пулы, см. Шаблоны проектирования для мультитенантных приложений SaaS с базой данных SQL.
Сценариимогут помочь с мониторингом и масштабированием эластичных пулов. Пример см. В разделе Использование PowerShell для мониторинга и масштабирования эластичного пула в базе данных SQL Azure.
Смешивание отдельных баз данных с объединенными базами данных
Вы можете смешивать отдельные базы данных с эластичными пулами и изменять уровни обслуживания отдельных баз данных и эластичных пулов для адаптации к вашей ситуации.Вы также можете смешивать и сопоставлять другие службы Azure с базой данных SQL, чтобы удовлетворить ваши уникальные потребности в разработке приложений, повысить стоимость и эффективность использования ресурсов, а также открыть новые возможности для бизнеса.
Широкие возможности мониторинга и оповещения
База данных SQL Azureпредоставляет расширенные функции мониторинга и устранения неполадок, которые помогут вам глубже понять характеристики рабочей нагрузки. Эти функции и инструменты включают в себя:
- Встроенные возможности мониторинга, предоставляемые последней версией ядра базы данных SQL Server.Они позволяют вам находить информацию о производительности в режиме реального времени.
- Возможности мониторинга PaaS, предоставляемые Azure, которые позволяют отслеживать и устранять неисправности большого количества экземпляров базы данных.
Query Store, встроенная функция мониторинга SQL Server, записывает производительность ваших запросов в режиме реального времени и позволяет выявлять потенциальные проблемы с производительностью и основных потребителей ресурсов. Автоматическая настройка и рекомендации дают рекомендации относительно запросов с пониженной производительностью и отсутствующими или дублирующимися индексами.Автоматическая настройка в базе данных SQL позволяет либо вручную применить сценарии, которые могут исправить проблемы, либо позволить базе данных SQL применить исправление. База данных SQL также может тестировать и проверять, что исправление дает определенные преимущества, и сохранять или отменять изменения в зависимости от результата. В дополнение к Query Store и функциям автоматической настройки вы можете использовать стандартные DMV и XEvent для мониторинга производительности рабочей нагрузки.
Azure предоставляет встроенные средства мониторинга производительности и оповещения в сочетании с оценками производительности, которые позволяют отслеживать состояние тысяч баз данных.Используя эти инструменты, вы можете быстро оценить влияние увеличения или уменьшения в зависимости от текущих или прогнозируемых потребностей в производительности. Кроме того, база данных SQL может генерировать метрики и журналы ресурсов для облегчения мониторинга. Вы можете настроить базу данных SQL для хранения данных об использовании ресурсов, рабочих и сеансов и подключения к одному из этих ресурсов Azure:
- Azure Storage : для архивирования огромных объемов телеметрии за небольшую цену.
- Концентраторы событий Azure : для интеграции телеметрии базы данных SQL с вашим настраиваемым решением мониторинга или горячими конвейерами.
- Журналы Azure Monitor : для встроенного решения для мониторинга с возможностями отчетности, оповещения и смягчения.
Доступность возможностей
База данных SQL Azureпозволяет вашему бизнесу продолжать работу даже после сбоев. В традиционной среде SQL Server у вас обычно есть как минимум две машины, настроенные локально. Эти машины имеют точные, синхронно поддерживаемые копии данных для защиты от отказа одного компьютера или компонента.Эта среда обеспечивает высокую доступность, но она не защищает от стихийного бедствия, разрушающего ваш центр обработки данных.
Аварийное восстановление предполагает, что катастрофическое событие достаточно географически локализовано, чтобы иметь другую машину или набор машин с копией ваших данных на большом расстоянии. В SQL Server вы можете использовать группы Always On Availability, работающие в асинхронном режиме, чтобы получить эту возможность. Люди часто не хотят ждать, пока произойдет репликация, прежде чем совершать транзакцию, поэтому существует вероятность потери данных при выполнении незапланированных отказов.
Базы данных на уровнях обслуживания Premium и Business Critical уже выполняют нечто похожее на синхронизацию группы доступности. Базы данных на более низких уровнях обслуживания обеспечивают избыточность за счет хранения с использованием другого, но эквивалентного механизма. Встроенная логика помогает защитить от отказа одной машины. Активная функция гео-репликации дает вам возможность защитить от катастрофы, когда целый регион разрушен.
Azure Availability Zones пытается защитить от сбоя одного здания центра обработки данных в пределах одного региона.Это поможет вам защитить от потери питания или сети здания. В базе данных SQL вы размещаете разные реплики в разных зонах доступности (эффективно в разных зданиях).
Фактически, соглашение об уровне обслуживания (SLA) Azure, основанное на глобальной сети центров обработки данных, управляемых Microsoft, помогает поддерживать работу вашего приложения 24/7. Платформа Azure полностью управляет каждой базой данных и гарантирует отсутствие потери данных и высокий процент доступности данных. Azure автоматически обрабатывает исправления, резервные копии, репликацию, обнаружение сбоев, возможные сбои оборудования, программного обеспечения или сети, развертывание исправлений ошибок, отработки отказа, обновление базы данных и другие задачи обслуживания.Стандартная доступность достигается за счет разделения уровней вычислений и хранения. Премиум доступность достигается за счет интеграции вычислений и хранилищ на одном узле для повышения производительности, а затем внедрения технологии, аналогичной Always On Availability Groups. Полное обсуждение возможностей высокой доступности базы данных SQL Azure см. В разделе Доступность базы данных SQL.
Кроме того, база данных SQL обеспечивает встроенные функции обеспечения непрерывности бизнеса и глобальной масштабируемости. К ним относятся:
Автоматическое резервное копирование:
База данных SQL автоматически выполняет полное, разностное резервное копирование и резервное копирование базы данных журнала транзакций, чтобы вы могли выполнить восстановление в любой момент времени.Для отдельных баз данных и объединенных баз данных можно настроить базу данных SQL для хранения полных резервных копий базы данных в хранилище Azure для долгосрочного хранения резервных копий. Для управляемых экземпляров вы также можете выполнять резервное копирование только для копирования для долгосрочного хранения резервных копий.
Восстановление на момент времени:
Все параметры развертывания базы данных SQL поддерживают восстановление в любой момент времени в течение периода автоматического резервного копирования для любой базы данных.
Активная гео-репликация:
Параметры единой базы данных и объединенных баз данных позволяют настроить до четырех читаемых вторичных баз данных в одном и том же или глобально распределенных центрах данных Azure.Например, если у вас есть приложение SaaS с базой данных каталога, которая имеет большой объем одновременных транзакций только для чтения, используйте активную гео-репликацию, чтобы включить глобальный масштаб чтения. Это устраняет узкие места на первичном сервере, которые возникают из-за рабочих нагрузок чтения. Для управляемых экземпляров используйте группы автоматического перехода на другой ресурс.
Группы автоматического переключения при отказе:
Все параметры развертывания базы данных SQL позволяют использовать отказоустойчивые группы для обеспечения высокой доступности и балансировки нагрузки в глобальном масштабе.Это включает прозрачную гео-репликацию и отработку отказа для больших наборов баз данных, эластичных пулов и управляемых экземпляров. Отказоустойчивые группы позволяют создавать глобально распределенные приложения SaaS с минимальными накладными расходами на администрирование. Это оставляет всю сложную систему мониторинга, маршрутизации и отработки отказа для базы данных SQL.
Зонально-избыточные базы данных:
База данных SQL позволяет вам предоставлять базы данных Premium или Business Critical или эластичные пулы в нескольких зонах доступности.Поскольку эти базы данных и эластичные пулы имеют несколько избыточных реплик для обеспечения высокой доступности, размещение этих реплик в нескольких зонах доступности обеспечивает более высокую устойчивость. Это включает возможность автоматического восстановления после сбоев масштаба центра обработки данных без потери данных.
Встроенный интеллект
С базой данных SQL вы получаете встроенный интеллект, который помогает вам значительно сократить расходы на эксплуатацию и управление базами данных, а также максимизирует как производительность, так и безопасность вашего приложения.Запуская миллионы рабочих нагрузок клиентов круглосуточно, база данных SQL собирает и обрабатывает огромное количество данных телеметрии, а также полностью соблюдает конфиденциальность клиентов. Различные алгоритмы непрерывно оценивают данные телеметрии, чтобы служба могла учиться и адаптироваться к вашему приложению.
Автоматический мониторинг производительности и настройка
База данных SQLпредоставляет подробные сведения о запросах, которые необходимо отслеживать. База данных SQL узнает о ваших шаблонах базы данных и позволяет вам адаптировать схему базы данных к вашей рабочей нагрузке.База данных SQL предоставляет рекомендации по настройке производительности, где вы можете просмотреть действия по настройке и применить их.
Тем не менее, постоянный мониторинг базы данных является сложной и утомительной задачей, особенно когда вы имеете дело со многими базами данных. Intelligent Insights выполняет эту работу за вас, автоматически отслеживая производительность базы данных SQL в масштабе. Он информирует вас о проблемах снижения производительности, определяет основную причину каждой проблемы и по возможности дает рекомендации по улучшению производительности.
Управление огромным количеством баз данных может оказаться невозможным для эффективной работы даже со всеми доступными инструментами и отчетами, которые предоставляют базы данных SQL и Azure. Вместо того, чтобы отслеживать и настраивать базу данных вручную, вы можете рассмотреть возможность делегирования некоторых действий по мониторингу и настройке в базу данных SQL с помощью автоматической настройки. База данных SQL автоматически применяет рекомендации, тестирует и проверяет каждое из своих действий по настройке, чтобы обеспечить постоянное улучшение производительности. Таким образом, база данных SQL автоматически адаптируется к вашей рабочей нагрузке контролируемым и безопасным способом.Автоматическая настройка означает, что производительность вашей базы данных тщательно контролируется и сравнивается до и после каждого действия по настройке. Если производительность не улучшается, действие настройки отменяется.
Многие из наших партнеров, которые запускают мультитенантные приложения SaaS поверх базы данных SQL, полагаются на автоматическую настройку производительности, чтобы их приложения всегда имели стабильную и предсказуемую производительность. Для них эта функция значительно снижает риск падения производительности в середине ночи.Кроме того, поскольку часть их клиентской базы также использует SQL Server, они используют те же рекомендации по индексированию, которые предоставляет база данных SQL, чтобы помочь своим клиентам SQL Server.
В базе данных SQL доступны два аспекта автоматической настройки:
- Автоматическое управление индексами : Определяет индексы, которые должны быть добавлены в вашу базу данных, и индексы, которые должны быть удалены.
- Автоматическое исправление плана : Определяет проблемные планы и исправляет проблемы производительности плана SQL.
Адаптивная обработка запросов
Можно использовать адаптивную обработку запросов, в том числе выполнение с чередованием для многозначных табличных функций, обратную связь с предоставлением памяти в пакетном режиме и адаптивные объединения в пакетном режиме. Каждая из этих функций адаптивной обработки запросов применяет аналогичные методы «обучения и адаптации», помогая дополнительно решать проблемы производительности, связанные с исторически сложными проблемами оптимизации запросов.
Расширенная безопасность и соответствие
База данных SQLпредоставляет ряд встроенных функций безопасности и соответствия, чтобы помочь вашему приложению соответствовать различным требованиям безопасности и соответствия.
Важные
Microsoft сертифицировала базу данных SQL Azure (все варианты развертывания) в соответствии с рядом стандартов соответствия. Дополнительные сведения см. В центре доверия Microsoft Azure, где вы можете найти самый последний список сертификатов соответствия баз данных SQL.
Предварительная защита от угроз
Расширенная безопасность данных — это унифицированный пакет для расширенных возможностей безопасности SQL. Он включает в себя функциональность для обнаружения и классификации конфиденциальных данных, управления уязвимостями базы данных и обнаружения аномальных действий, которые могут указывать на угрозу для вашей базы данных.Он предоставляет единое местоположение для включения и управления этими возможностями.
Обнаружение и классификация данных:
Эта функция предоставляет возможности, встроенные в базу данных SQL Azure, для обнаружения, классификации, маркировки и защиты конфиденциальных данных в ваших базах данных. Он обеспечивает видимость состояния вашей базы данных и отслеживает доступ к конфиденциальным данным в базе данных и за ее пределами.
Оценка уязвимости:
Эта служба может обнаруживать, отслеживать и помогать устранять потенциальные уязвимости базы данных.Он обеспечивает видимость вашего состояния безопасности и включает в себя действия, необходимые для решения проблем безопасности и улучшения укреплений базы данных.
Обнаружение угрозы:
Эта функция обнаруживает аномальные действия, которые указывают на необычные и потенциально опасные попытки доступа к вашей базе данных или ее использования. Он постоянно отслеживает вашу базу данных на предмет подозрительных действий и обеспечивает немедленные оповещения безопасности о потенциальных уязвимостях, атаках SQL-инъекций и аномальных моделях доступа к базе данных.Оповещения об обнаружении угроз содержат подробные сведения о подозрительной активности и рекомендуют действия по расследованию и снижению угрозы.
Аудит на соответствие и безопасность
Audit отслеживает события базы данных и записывает их в журнал аудита в вашей учетной записи хранения Azure. Аудит может помочь вам поддерживать соответствие нормативным требованиям, понимать работу базы данных и получать сведения о расхождениях и аномалиях, которые могут указывать на проблемы бизнеса или подозрения в нарушениях безопасности.
Шифрование данных
База данных SQLпомогает защитить ваши данные, обеспечивая шифрование. Для данных в движении он использует безопасность транспортного уровня. Для данных в состоянии покоя используется прозрачное шифрование данных. Для используемых данных он использует Always Encrypted.
Интеграция Azure Active Directory и многофакторная проверка подлинности
База данных SQL позволяет централизованно управлять удостоверениями пользователя базы данных и другими службами Microsoft с помощью интеграции Azure Active Directory. Эта возможность упрощает управление разрешениями и повышает безопасность.Azure Active Directory поддерживает многофакторную проверку подлинности для повышения безопасности данных и приложений, а также поддерживает процесс единого входа.
База данных SQL делает создание и обслуживание приложений более простым и продуктивным. База данных SQL позволяет вам сосредоточиться на том, что вы делаете лучше всего: на создании отличных приложений. Вы можете управлять базой данных SQL и разрабатывать ее, используя инструменты и навыки, которые у вас уже есть.
Инструмент | Описание |
---|---|
Лазурный портал | Веб-приложение для управления всеми службами Azure. |
Azure Data Studio | Кроссплатформенный инструмент для работы с базами данных, работающий в Windows, MacOS и Linux. |
SQL Server Management Studio | Бесплатное загружаемое клиентское приложение для управления любой инфраструктурой SQL, от SQL Server до базы данных SQL. |
Инструменты данных SQL Server в Visual Studio | Бесплатное загружаемое клиентское приложение для разработки реляционных баз данных SQL Server, баз данных в базе данных SQL Azure, пакетов служб Integration Services, моделей данных служб Analysis Services и отчетов служб Reporting Services. |
Visual Studio Код | Бесплатный загружаемый редактор с открытым исходным кодом для Windows, macOS и Linux. Он поддерживает расширения, включая расширение mssql для запросов к Microsoft SQL Server, базе данных SQL Azure и хранилищу данных SQL Azure. |
База данных SQL поддерживает создание приложений с Python, Java, Node.js, PHP, Ruby и .NET на macOS, Linux и Windows. База данных SQL поддерживает те же библиотеки подключений, что и SQL Server.
Создание и управление ресурсами SQL Azure с помощью портала Azure
Портал Azure предоставляет одну страницу, на которой вы можете управлять всеми своими ресурсами SQL Azure, включая виртуальные машины SQL.
Чтобы открыть страницу Azure SQL , в меню портала Azure выберите Azure SQL или найдите и выберите Azure SQL на любой странице.
Примечание
Azure SQL предоставляет быстрый и простой способ доступа ко всем вашим ресурсам SQL на портале Azure, в том числе к базе данных с одним пулом в базе данных SQL Azure, а также к логическому серверу SQL, на котором они находятся, управляемым экземплярам SQL и виртуальным машинам SQL. ,Azure SQL — это не служба или ресурс, а семейство служб, связанных с SQL.
Для управления существующими ресурсами выберите нужный элемент в списке. Чтобы создать новые ресурсы SQL Azure, выберите + Добавить .
После выбора + Добавить просмотрите дополнительную информацию о различных параметрах, выбрав Показать подробности на любой плитке.
Подробнее см .:
База данных SQL часто задаваемые вопросы
Можно ли контролировать время простоя патча?
№Влияние исправления обычно не заметно, если вы используете логику повторных попыток в своем приложении. Дополнительные сведения см. В разделе Планирование событий обслуживания Azure в базе данных SQL Azure.
Взаимодействие с командой разработчиков SQL Server
Следующие шаги
См. Страницу с ценами для сравнения затрат и калькуляторов для отдельных баз данных и эластичных пулов.
Для начала ознакомьтесь с этими краткими инструкциями:
Набор образцов Azure CLI и PowerShell см .:
Дополнительные сведения о новых возможностях в том виде, в котором они объявлены, см. В документе «Дорожная карта Azure для базы данных SQL».
См. Блог базы данных Azure SQL, где члены группы разработчиков продукта SQL Server рассказывают о новостях и функциях базы данных SQL.
Sql.Database — PowerQuery M | Microsoft Docs
- 2 минуты, чтобы прочитать
В этой статье
Синтаксис
База данных Sql (сервер в виде текста, база данных в текстовом формате, необязательные параметры в виде записей, допускающих обнуляемость) в виде таблицы
О
Возвращает таблицу таблиц SQL, представлений и хранимых функций из базы данных SQL Server , базы данных
на сервере , сервера
.При желании порт можно указать на сервере, разделив его двоеточием или запятой. Необязательный параметр записи, опций
, может быть указан для управления следующими опциями:
-
Запрос
: собственный запрос SQL, используемый для получения данных. Если запрос дает несколько наборов результатов, будет возвращен только первый. -
CreateNavigationProperties
: логический (true / false), который задает, следует ли создавать свойства навигации для возвращаемых значений (по умолчанию — true). -
NavigationPropertyNameGenerator
: функция, которая используется для создания имен для свойств навигации. -
MaxDegreeOfParallelism
: число, которое устанавливает значение предложения запроса «maxdop» в сгенерированном запросе SQL. -
CommandTimeout
: продолжительность, которая определяет, как долго разрешается выполнение запроса на стороне сервера, прежде чем он будет отменен. Значение по умолчанию составляет десять минут. -
ConnectionTimeout
: продолжительность, которая определяет, как долго ждать, прежде чем отказаться от попытки установить соединение с сервером.Значение по умолчанию зависит от драйвера. -
HierarchicalNavigation
: логический (true / false), который задает, следует ли просматривать таблицы, сгруппированные по именам их схем (по умолчанию false). -
MultiSubnetFailover
: Логический (true / false), который устанавливает значение свойства «MultiSubnetFailover» в строке подключения (по умолчанию false). -
UnsafeTypeConversions
-
ContextInfo
: двоичное значение, которое используется для установки CONTEXT_INFO перед выполнением каждой команды. -
OmitSRID
Параметр записи указывается, например, как [option1 = value1, option2 = value2 …] или [Query = «select …»].
,Всегда зашифрованный | Да — см. Магазин Cert и хранилище ключей | Да — см. Магазин Cert и хранилище ключей |
Всегда в наличии Группы доступности | 99,99-99,995% доступности гарантируется для каждой базы данных. Аварийное восстановление обсуждается в разделе Обзор непрерывности бизнеса с базой данных SQL Azure | .99.99. Доступность% гарантируется для каждой базы данных и не может управляться пользователем. Аварийное восстановление обсуждается в разделе Обзор непрерывности бизнеса с базой данных SQL Azure. Используйте группы автоматического переключения при сбое для настройки вторичного управляемого экземпляра SQL в другом регионе. Экземпляры SQL Server и база данных SQL не могут использоваться в качестве вторичных для управляемого экземпляра SQL. |
Присоединить базу данных | № | № |
Аудит | Да | Да, с некоторыми отличиями |
Проверка подлинности Azure Active Directory (Azure AD) | Да.Только для пользователей Azure AD. | Да. Включение учетных записей Azure AD на уровне сервера. |
РЕЗЕРВНАЯ команда | Нет, только автоматические резервные копии, инициируемые системой — см. Автоматические резервные копии | Да, пользователь инициировал резервное копирование только для копирования в хранилище BLOB-объектов Azure (автоматическое резервное копирование системы не может быть инициировано пользователем) — см. Различия в резервных копиях |
Встроенные функции | Большинство — см. Отдельные функции | Да — см. Хранимые процедуры, функции, различия триггеров |
ЗАПИСЬ НА ВСТАВКУ | Да, но только из хранилища BLOB-объектов Azure в качестве источника. | Да, но только из хранилища BLOB-объектов Azure в качестве источника — посмотрите на различия. |
Сертификаты и асимметричные ключи | Да, без доступа к файловой системе для операций BACKUP и CREATE . | Да, без доступа к файловой системе для операций BACKUP и CREATE — см. Различия в сертификатах. |
Изменение сбора данных — CDC | № | Да |
Сортировка — сервер / экземпляр | Нет, сортировка сервера по умолчанию SQL_Latin1_General_CP1_CI_AS всегда используется. | Да, может быть установлено при создании экземпляра и не может быть обновлено позже. |
Columnstore indexes | Да — уровень Premium, стандартный уровень — S3 и выше, уровень общего назначения, бизнес-критический уровень и уровни HyperScale | Да |
общеязыковая среда выполнения — CLR | № | Да, но без доступа к файловой системе в операторе CREATE ASSEMBLY — см. Различия CLR |
Полномочия | Да, но только учетные данные в базе данных. | Да, но поддерживается только Azure Key Vault и ПОДДЕРЖКА ПОДДЕРЖКИ ПОДДЕРЖКА см. Подробнее |
Кросс-базы данных / запросы из трех частей | Нет — см. Эластичные запросы | Да, плюс эластичные запросы |
Транзакции между базами данных | № | Да, внутри экземпляра. См. Различия между связанными серверами для запросов между экземплярами. |
База данных почты — DbMail | № | Да |
Зеркальное отображение базы данных | № | № |
Снимки базы данных | № | № |
Отчеты DBCC | Большинство — см. Отдельные заявления | Да — см. Различия DBCC |
DDL заявления | Большинство — см. Отдельные заявления | Да — см. Различия T-SQL |
DDL запускает | База данных только | Да |
Распределенные представления разделов | № | Да |
Распределенные транзакции — MS DTC | Нет — см. Эластичные транзакции | Нет — см. Различия между связанными серверами.Попробуйте объединить базы данных из нескольких распределенных экземпляров SQL Server в один управляемый экземпляр SQL во время миграции. |
триггеров DML | Большинство — см. Отдельные заявления | Да |
DMV | Большинство — см. Отдельные DMVs | Да — см. Различия T-SQL |
Уведомления о событиях | Нет — см. Оповещения | № |
выражения | Да | Да |
Расширенные события (XEvent) | Некоторые — см. Расширенные события в базе данных SQL | Да — см. Различия в расширенных событиях |
Расширенные хранимые процедуры | № | № |
Файлы и файловые группы | Только основная группа файлов | Да.Пути к файлам назначаются автоматически, и местоположение файла не может быть указано в операторе ALTER DATABASE ADD FILE . |
Файловый поток | № | № |
Полнотекстовый поиск (FTS) | Да, но сторонние средства разбиения по словам не поддерживаются | Да, но сторонние средства разбиения по словам не поддерживаются |
Функции | Большинство — см. Отдельные функции | Да — см. Хранимые процедуры, функции, различия триггеров |
Оптимизация в памяти | Да — только для уровней Premium и Business Critical Ограниченная поддержка непостоянных объектов In-Memory, таких как типы таблиц | Да — только критический бизнес-уровень |
Языковые элементы | Большинство — см. Отдельные элементы | Да — см. Различия T-SQL |
связанных серверов | Нет — см. Эластичный запрос | Да.Только для SQL Server и базы данных SQL без распределенных транзакций. |
Связанные серверы, которые читают из файлов (CSV, Excel) | Нет. Используйте BULK INSERT или OPENROWSET в качестве альтернативы для формата CSV. | Нет. Используйте BULK INSERT или OPENROWSET в качестве альтернативы для формата CSV. Отслеживайте эти запросы в элементе обратной связи управляемого экземпляра SQL |
Журнал доставка | Высокая доступность включена в каждую базу данных. Аварийное восстановление обсуждается в Обзоре непрерывности бизнеса. | Встроенный как часть процесса миграции службы миграции данных Azure. Недоступно в качестве решения высокой доступности, поскольку в каждую базу данных включены другие методы высокой доступности, и не рекомендуется использовать доставку журналов в качестве альтернативы высокой доступности. Аварийное восстановление обсуждается в Обзоре непрерывности бизнеса. Недоступно в качестве механизма репликации между базами данных — используйте в качестве альтернативы вторичные реплики на уровне Business Critical, группы автоматического переключения при отказе или репликацию транзакций. |
Логины и пользователи | Да, но операторы входа CREATE и ALTER не предлагают все параметры (без входа в систему Windows Azure Active Directory на уровне сервера и сервера). EXECUTE AS LOGIN не поддерживается — используйте вместо него EXECUTE AS USER . | Да, с некоторыми отличиями. Имена входа Windows не поддерживаются, и их следует заменить на имена входа Azure Active Directory. |
Минимальное ведение журнала при массовом импорте | Нет, поддерживается только модель полного восстановления. | Нет, поддерживается только модель полного восстановления. |
Модификация системных данных | № | Да |
OLE Automation | № | № |
OPENDATASOURCE | № | Да, только для базы данных SQL, управляемого экземпляра SQL и SQL Server. См. Различия T-SQL |
ОТКРЫТИЕ | № | Да, только для базы данных SQL, управляемого экземпляра SQL и SQL Server.См. Различия T-SQL |
OPENROWSET | Да, только для импорта из хранилища BLOB-объектов Azure. | Да, только для базы данных SQL, управляемого экземпляра SQL и SQL Server и для импорта из хранилища BLOB-объектов Azure. См. Различия T-SQL |
Операторы | Большинство — см. Отдельных операторов | Да — см. Различия T-SQL |
Polybase | Нет. Вы можете запрашивать данные в файлах, помещенных в хранилище BLOB-объектов Azure, используя функцию OPENROWSET . | Нет. Вы можете запрашивать данные в файлах, помещенных в хранилище BLOB-объектов Azure, используя функцию OPENROWSET . |
Уведомления о запросах | № | Да |
Службы машинного обучения ( Ранее службы R ) | Да, в публичном превью | № |
Модели восстановления | Поддерживается только полное восстановление, что гарантирует высокую доступность. Модели простого и массового восстановления недоступны. | Поддерживается только полное восстановление, что гарантирует высокую доступность. Модели простого и массового восстановления недоступны. |
Ресурс губернатора | № | Да |
RESTORE заявления | № | Да, с обязательными параметрами ОТ URL для файлов резервных копий, размещенных в хранилище BLOB-объектов Azure. См. Восстановление различий |
Восстановление базы данных из резервной копии | Только из автоматических резервных копий — см. Восстановление базы данных SQL | Из автоматических резервных копий — см. Восстановление базы данных SQL и из полных резервных копий, размещенных в хранилище BLOB-объектов Azure — см. Различия в резервных копиях |
Восстановление базы данных на SQL Server | №Используйте BACPAC или BCP вместо собственного восстановления. | Нет, поскольку ядро базы данных SQL Server, используемое в управляемом экземпляре SQL, имеет более высокую версию, чем любая RTM-версия SQL Server, используемая локально. Вместо этого используйте BACPAC, BCP или репликацию транзакций. |
Семантический поиск | № | № |
Сервисный брокер | № | Да, но только внутри экземпляра. Если вы используете удаленные маршруты компонента Service Broker, попробуйте объединить базы данных из нескольких распределенных экземпляров SQL Server в один управляемый экземпляр SQL во время миграции и использовать только локальные маршруты.См. Различия сервисного брокера |
Настройки конфигурации сервера | № | Да — см. Различия T-SQL |
Набор заявлений | Большинство — см. Отдельные заявления | Да — см. Различия T-SQL |
Агент SQL Server | Нет — см. Упругие рабочие места | Да — см. Различия агента SQL Server |
SQL Server Auditing | Нет — см. Аудит базы данных SQL | Да — см. Аудиторские различия |
Системные хранимые функции | Большинство — см. Отдельные функции | Да — см. Хранимые процедуры, функции, различия триггеров |
Системные хранимые процедуры | Некоторые — см. Отдельные хранимые процедуры | Да — см. Хранимые процедуры, функции, различия триггеров |
Системные таблицы | Некоторые — см. Отдельные таблицы | Да — см. Различия T-SQL |
просмотров системного каталога | Некоторые — видят отдельные взгляды | Да — см. Различия T-SQL |
TempDB | Да.Размер 32 ГБ на ядро для каждой базы данных. | Да. Размер 24 ГБ на vCore для всего уровня GP и ограничен размером экземпляра на уровне BC |
Временные столы | Локальные и глобальные временные таблицы в области баз данных | Локальные и глобальные временные таблицы на уровне экземпляра |
Выбор часового пояса | № | Да, и его необходимо настроить при создании управляемого экземпляра SQL. |
Трассировка флагов | № | Да, но только ограниченный набор глобальных флагов трассировки.См. Различия DBCC |
Транзакционная репликация | Да, подписчик с транзакционной репликацией и репликацией моментальных снимков только | Да, в публичном превью. Смотрите ограничения здесь. |
Прозрачное шифрование данных (TDE) | Да — общего назначения и бизнес Критические уровни обслуживания только | Да |
Windows аутентификация | № | № |
отказоустойчивой кластеризации Windows Server | №Другие методы, которые обеспечивают высокую доступность, включены в каждую базу данных. Аварийное восстановление обсуждается в разделе Обзор непрерывности бизнеса с базой данных SQL Azure. | Нет. Другие методы, которые обеспечивают высокую доступность, включены в каждую базу данных. Аварийное восстановление обсуждается в разделе Обзор непрерывности бизнеса с базой данных SQL Azure. |
- 8 минут, чтобы прочитать
В этой статье
ПРИМЕНИМО к: База данных SQL Azure
База данных SQL Azure — это реляционная база данных как услуга (DBaaS) в облаке Microsoft (Azure).Из этого руководства вы узнаете, как использовать портал Azure и SQL Server Management Studio (SSMS) для:
- Создание базы данных с помощью портала Azure *
- Настройка правила IP-брандмауэра на уровне сервера с помощью портала Azure
- Подключиться к базе данных с помощью SSMS
- Создание таблиц с помощью SSMS
- Массовая загрузка данных с BCP
- Запрос данных с помощью SSMS
* Если у вас нет подписки Azure, создайте бесплатную учетную запись, прежде чем начать.
Предпосылки
Чтобы завершить этот урок, убедитесь, что вы установили:
Войдите на портал Azure
Войдите на портал Azure.
Создание пустой базы данных в базе данных SQL Azure
База данных в базе данных SQL Azure создается с определенным набором вычислительных ресурсов и ресурсов хранения. База данных создается в группе ресурсов Azure и управляется с помощью логического сервера SQL.
Выполните следующие действия, чтобы создать пустую базу данных.
В меню портала Azure или на странице Домашняя страница выберите Создать ресурс .
На странице Новый выберите Базы данных в разделе Рынок Azure, а затем нажмите База данных SQL в разделе Избранные .
Заполните форму SQL Database следующей информацией, как показано на предыдущем изображении:
Настройка Рекомендованная стоимость Описание Имя базы данных yourDatabase Для правильных имен базы данных, см. Идентификаторы базы данных. Подписка Ваша подписка Подробнее о ваших подписках см. В разделе Подписки. Ресурсная группа yourResourceGroup Действительные имена групп ресурсов см. В разделе Правила именования и ограничения. Выберите источник Бланк базы данных Указывает, что должна быть создана пустая база данных. Нажмите Сервер , чтобы использовать существующий сервер или создать и настроить новый сервер. Выберите существующий сервер или нажмите . Создайте новый сервер и заполните форму Новый сервер со следующей информацией:
.Настройка Рекомендованная стоимость Описание Имя сервера Любое глобально уникальное имя Действительные имена серверов см. В разделе Правила именования и ограничения. Вход для администратора сервера Любое действительное имя Для правильных имен входа см. Идентификаторы базы данных. Пароль Любой действительный пароль Ваш пароль должен содержать не менее восьми символов и должен содержать символы из трех следующих категорий: символы верхнего регистра, символы нижнего регистра, цифры и не алфавитно-цифровые символы. Расположение Любое действительное место Для получения информации о регионах см. Регионы Azure. Нажмите Выберите .
Нажмите Уровень цен , чтобы указать уровень обслуживания, количество DTU или vCores и объем хранилища. Вы можете изучить варианты количества DTU / vCores и хранилища, доступных вам для каждого уровня обслуживания.
После выбора уровня обслуживания, количества DTU или vCores и объема хранилища нажмите Применить .
Введите Collation для пустой базы данных (для этого учебного пособия используйте значение по умолчанию).Для получения дополнительной информации о сопоставлениях, см. Collations
.Заполнив форму База данных SQL , нажмите Создать , чтобы подготовить базу данных. Этот шаг может занять несколько минут.
На панели инструментов щелкните Уведомления , чтобы отслеживать процесс развертывания.
Создание правила брандмауэра IP уровня сервера
База данных SQL Azure создает брандмауэр IP на уровне сервера.Этот брандмауэр не позволяет внешним приложениям и инструментам подключаться к серверу и любым базам данных на сервере, если только правило брандмауэра не разрешает их IP-адреса через брандмауэр. Чтобы включить внешнее подключение к базе данных, сначала необходимо добавить правило брандмауэра IP для вашего IP-адреса (или диапазона IP-адресов). Выполните следующие действия, чтобы создать правило IP-брандмауэра на уровне сервера.
Важные
База данных SQL Azure взаимодействует через порт 1433. Если вы пытаетесь подключиться к этой службе из корпоративной сети, исходящий трафик через порт 1433 может быть запрещен брандмауэром вашей сети.Если это так, вы не можете подключиться к вашей базе данных, если ваш администратор не открывает порт 1433.
После завершения развертывания выберите Базы данных SQL в меню портала Azure или найдите и выберите Базы данных SQL на любой странице.
Выберите yourDatabase на странице Базы данных SQL . Откроется страница обзора вашей базы данных с полным именем Имя сервера (например,
contosodatabaseserver01).database.windows.net
) и предоставляет опции для дальнейшей настройки.Скопируйте это полное имя сервера для использования для подключения к вашему серверу и базам данных из SQL Server Management Studio.
Нажмите Установите брандмауэр сервера на панели инструментов. Откроется страница Настройки брандмауэра для сервера.
Нажмите . Добавьте IP-адрес клиента на панели инструментов, чтобы добавить свой текущий IP-адрес в новое правило брандмауэра IP.Правило брандмауэра IP может открыть порт 1433 для одного IP-адреса или диапазона IP-адресов.
Нажмите Сохранить . Для вашего текущего IP-адреса, открывающего порт 1433 на сервере, создается правило IP-брандмауэра на уровне сервера.
Нажмите OK , а затем закройте страницу Параметры брандмауэра .
Ваш IP-адрес теперь может проходить через брандмауэр IP. Теперь вы можете подключиться к своей базе данных, используя SQL Server Management Studio или другой инструмент по вашему выбору.Обязательно используйте учетную запись администратора сервера, которую вы создали ранее.
Важные
По умолчанию доступ через брандмауэр IP базы данных SQL включен для всех служб Azure. Нажмите OFF на этой странице, чтобы отключить все службы Azure.
Подключиться к базе данных
Используйте SQL Server Management Studio для установления соединения с вашей базой данных.
Откройте SQL Server Management Studio.
В диалоговом окне Connect to Server введите следующую информацию:
Настройка Рекомендованная стоимость Описание Тип сервера база данных двигателя Это значение обязательно. Имя сервера Полное имя сервера Например, yourserver.database.windows.net . Аутентификация Аутентификация SQL Server Аутентификация SQL— это единственный тип аутентификации, который мы настроили в этом руководстве. Войти Учетная запись администратора сервера Учетная запись, указанная вами при создании сервера. Пароль Пароль для учетной записи администратора вашего сервера Пароль, который вы указали при создании сервера. Нажмите Параметры в диалоговом окне Подключение к серверу . В разделе Подключение к базе данных введите yourDatabase , чтобы подключиться к этой базе данных.
Нажмите Connect . Object Explorer окно открывается в SSMS.
В Обозреватель объектов разверните Базы данных , а затем разверните yourDatabase , чтобы просмотреть объекты в образце базы данных.
Создание таблиц в вашей базе данных
Создайте схему базы данных с четырьмя таблицами, которые моделируют систему управления студентами для университетов с использованием Transact-SQL:
- человек
- Курс
- студент
- Кредит
Следующая диаграмма показывает, как эти таблицы связаны друг с другом.Некоторые из этих таблиц ссылаются на столбцы в других таблицах. Например, таблица Student ссылается на столбец PersonId таблицы Person . Изучите диаграмму, чтобы понять, как таблицы в этом руководстве связаны друг с другом. Подробное описание создания эффективных таблиц базы данных см. В разделе «Создание эффективных таблиц базы данных». Для получения информации о выборе типов данных см. Типы данных.
В Обозреватель объектов щелкните правой кнопкой мыши yourDatabase и выберите Новый запрос .Откроется пустое окно запроса, которое связано с вашей базой данных.
В окне запроса выполните следующий запрос, чтобы создать четыре таблицы в вашей базе данных:
- Создать личную таблицу CREATE TABLE Person ( PersonId INT IDENTITY ПЕРВИЧНЫЙ КЛЮЧ, FirstName NVARCHAR (128) НЕ NULL, MiddelInitial NVARCHAR (10), Фамилия NVARCHAR (128) НЕ NULL, DateOfBirth DATE NOT NULL ) - Создать студенческий стол CREATE TABLE Студент ( StudentId INT IDENTITY ПЕРВИЧНЫЙ КЛЮЧ, PersonId INT REFERENCES Person (PersonId), Электронная почта NVARCHAR (256) ) - Создать таблицу курсов Курс CREATE TABLE ( CourseId INT IDENTITY ПЕРВИЧНЫЙ КЛЮЧ, Имя NVARCHAR (50) НЕ NULL, Учитель НВАРЧАР (256) НЕ ПУСТО ) - Создать таблицу кредитов CREATE TABLE Кредит ( StudentId INT ССЫЛКИ Student (StudentId), CourseId INT REFERENCES Course (CourseId), Оценка DECIMAL (5,2) ПРОВЕРКА (оценка <= 100.00), Попытка TINYINT, CONSTRAINT [UQ_studentgrades] УНИКАЛЬНЫЙ КЛАСТЕР ( StudentId, CourseId, Оценка, Попытка ) )
Разверните узел Таблицы в yourDatabase в Обозревателе объектов , чтобы увидеть созданные вами таблицы.
Загрузить данные в таблицы
Создайте папку с именем sampleData в папке «Downloads» для хранения примеров данных для вашей базы данных.
Щелкните правой кнопкой мыши следующие ссылки и сохраните их в папке sampleData .
Откройте окно командной строки и перейдите к папке sampleData .
Выполните следующие команды, чтобы вставить образцы данных в таблицы, заменив значения для сервера , базы данных , пользователя и пароля на значения для вашей среды.
bcp Курс в SampleCourseData -S <сервер>.database.windows.net -d <база данных> -U <пользователь> -P <пароль> -q -c -t "," bcp Person в SamplePersonData -S <сервер> .database.windows.net -d <база данных> -U <пользователь> -P <пароль> -q -c -t "," bcp Студент в SampleStudentData -S <сервер> .database.windows.net -d <база данных> -U <пользователь> -P <пароль> -q -c -t "," bcp Credit в SampleCreditData -S <сервер> .database.windows.net -d <база данных> -U <пользователь> -P <пароль> -q -c -t ","
Вы загрузили образцы данных в таблицы, которые вы создали ранее.
Запрос данных
Выполните следующие запросы, чтобы получить информацию из таблиц базы данных. См. Запись SQL-запросов, чтобы узнать больше о написании SQL-запросов. Первый запрос объединяет все четыре таблицы, чтобы найти учеников, которых обучает «Доминик Папа», которые имеют оценку выше 75%. Второй запрос объединяет все четыре таблицы и находит курсы, в которые когда-либо записывался Noe Coleman.
В окне запроса SQL Server Management Studio выполните следующий запрос:
- Найдите учеников, которых учил Доминик Поуп, у которых оценка выше 75% ВЫБЕРИТЕ человека.FirstName, person.LastName, course.Name, credit.Grade ОТ ЛИЦА КАК ЛИЧНОСТЬ ВНУТРЕННЕЕ СОЕДИНЕНИЕ Студент КАК ученик НА человеке.PersonId = student.PersonId ВНУТРЕННИЙ РЕЙТИНГ Кредит как кредит на студента. StudentId = credit.StudentId ВНУТРЕННЕЕ СОЕДИНЕНИЕ Курс КАК курс на кредит.CourseId = course.courseId ГДЕ конечно. Учитель = 'Доминик Папа' И класс> 75
В окне запроса выполните следующий запрос:
- Найти все курсы, в которых когда-либо учился Но Коулман ВЫБЕРИТЕ конечно.Имя, курс. Учитель, кредит. Класс ОТ курса КАК курс ВНУТРЕННИЙ РЕЙТИНГ КРЕДИТ КАК КРЕДИТ НА КРЕДИТЕ. ВНУТРЕННЕЕ СОЕДИНЕНИЕ Студент КАК ученик НА ученик. Студент = кредит.Студент ВНУТРЕННЕЕ СОЕДИНЕНИЕ Персона КАК человек НА ЛИЦЕ.PersonId = student.PersonId ГДЕ person.FirstName = 'Noe' AND person.LastName = 'Coleman'
Следующие шаги
В этом уроке вы изучили много основных задач базы данных. Вы узнали, как:
- Создание базы данных с помощью портала Azure *
- Настройка правила IP-брандмауэра на уровне сервера с помощью портала Azure
- Подключиться к базе данных с помощью SSMS
- Создание таблиц с помощью SSMS
- Массовая загрузка данных с BCP
- Запрос данных с помощью SSMS
Перейдите к следующему руководству, чтобы узнать о разработке базы данных с использованием Visual Studio и C #.
,