Под базой данных можно понимать любой набор информации, которую можно найти в этой базе данных и воспользоваться ей. Если говорить в контексте SQL, то речь будет идти, конечно, о реляционных базах данных.
Реляционная база данных – это упорядоченная информация, связанная между собой определёнными отношениями.
Представлена она в виде таблиц, в которых и лежит вся эта информация.
И если логически такая база данных представлена в виде таблиц, в которых и хранится вся эта информация, то как база данных выглядит физически?
А физически база данных представляет собой, конечно же, обычные файлы созданные в специальном формате.
И здесь возникает главный вопрос, если база данных это файлы, которые созданные в специальном формате, то как создать такие файлы и редактировать их?
Для этого, как Вы понимаете, нужен специальный инструмент, т.е. программа, которая могла бы создавать базы данных и управлять ими, иными словами, работать с файлами базы данных.
Такой программой как раз и выступает СУБД.
СУБД – это система управления базами данных.
На самом деле СУБД это некая разновидность программ, иными словами, существует достаточно много различных СУБД, как платных, так и бесплатных.
Среди всех СУБД по своей функциональности и популярности можно выделить следующие системы.
Microsoft SQL Server – это система управления базами данных от компании Microsoft. Она очень популярна в корпоративном секторе, особенно в крупных компаниях.
Microsoft SQL Server – это очень функциональная СУБД, и она, конечно же, распространяется платно. Однако у SQL Server есть редакция Express, которую можно использовать абсолютно бесплатно, например, для обучения или для разработки приложений, которые будут обрабатывать данные на небольших серверах (размером до 10 ГБ).
Oracle Database – это система управления базами данных от компании Oracle. Это еще одна очень функциональная СУБД, которая также популярна среди крупных компаний. Возможности Oracle Database и Microsoft SQL Server сопоставимы, поэтому они являются серьезными конкурентами друг другу, и стоимость их полнофункциональных версий очень высокая.
MySQL – это система управления базами данных также от компании Oracle, но только она распространяется бесплатно. MySQL получила очень широкую популярность в интернете, так как именно на MySQL работают чуть ли не все web-сайты, иными словами, большинство сайтов в интернете используют эту СУБД как средство хранения данных.
PostgreSQL – эта система управления базами данных также является бесплатной, и она очень популярна и функциональна.
Забегая вперед скажу, что каждая СУБД хранит файлы базы данных по своему, т.е. в своем собственном формате, однако для того нам с Вами было легче управлять данными в базе данных был разработан специальный язык, который является стандартом и он позволяет нам независимо от того в какой СУБД создана база данных, манипулировать данными в этой базе данных. Этот язык назвали SQL.
SQL (Structured Query Language) — язык структурированных запросов, с помощью него пишутся специальные запросы к базе данных с целью получения данных из базы данных и для манипулирования этими данными.
Язык SQL – как было уже отмечено, это стандарт, он реализован во всех реляционных базах данных, таким образом, если Вы знаете язык SQL, то Вы можете работать с данными в любой системе управления базами данных.
Этот курс как раз и направлен на изучение языка SQL как стандарта, для того чтобы его можно было использовать в любой СУБД.
На курсе рассматриваются конструкции SQL, которые будут работать везде и не привязаны к какой-то конкретной СУБД, иными словами, не важно в какой системе Вы будете работать после прохождения курса, так как на курсе Вы научитесь писать универсальные SQL запросы, которые будут выполняться в любой системе управления базами данных, и в MySQL, и в PosrgreSQL, и в Microsoft SQL Server.
Однако у каждой СУБД, конечно же, есть расширение стандарта SQL, для того чтобы, например, полноценно программировать, получать системную информацию, упрощать SQL запросы и инструкции.
Поэтому если Вам нужно будет разрабатывать какую-нибудь бизнес логику в базе данных или писать сложные аналитические запросы на выборку, то Вам обязательно стоит учитывать в какой СУБД Вы будете работать для того чтобы изучить расширение языка SQL конкретно этой СУБД, так как и синтаксис, и возможности этих расширений, конечно же, отличаются.
В Microsoft SQL Server для программирования в базах данных используется расширение языка SQL – Тransact-SQL, сокращенно T-SQL.
Заметка! Если Вы будете работать с Microsoft SQL Server, то для комплексного изучения языка SQL и T-SQL рекомендовано пройти наши специализированные курсы по T-SQL.
В Oracle Database используется язык PL/SQL (Procedural Language / Structured Query Language) — это процедурное расширение языка SQL, разработанное компанией Oracle.
В PostgreSQL используется язык PL/pgSQL – это процедурное расширение языка SQL.
Вам также необходимо знать и учитывать то, что у каждой СУБД существует свой набор инструментов, с помощью которых мы можем писать SQL запросы, разрабатывать базы данных и администрировать сервер баз данных.
При этом существуют как стандартные инструменты, созданные самими разработчиками СУБД, так и инструменты, созданные сторонними разработчиками, и они имеют какой-то дополнительный функционал, однако такие инструменты, в большинстве случаев платные.
Ниже представлены инструменты, которые являются стандартными, и именно их Вы можете использовать для обучения и прохождения данного курса, на сторонние инструменты Вам как начинающим пока можно и не смотреть.
Microsoft SQL Server:
MySQL:
PostgreSQL:
Oracle Database:
В заключении данной темы давайте подведем итог.
Теперь Вы знаете, что такое СУБД, какие существуют СУБД и какие инструменты используются для написания SQL запросов.
И теперь Вам осталось определиться на примере какой СУБД Вы будете изучать язык SQL, т.е. где Вы будете выполнять все SQL инструкции, которые рассматриваются в данном онлайн-самоучителе.
Так как успешное обучение возможно только совместно с практикой, а практика должна быть с использованием реальных инструментов.
Как говорил Наполеон Хилл – «Мастерство приходит только с практикой и не может появиться лишь в ходе чтения инструкций.»
И здесь самым лучшем выбором для обучения будет использование именно тех инструментов, с которыми Вы будете в дальнейшем работать, например, если Вам нужно изучить SQL для работы с MySQL, то установите MySQL и выполняйте все инструкции в этой СУБД, если с PostgreSQL, то устанавливайте PostgreSQL.
Если вдруг Вы не знаете с какой СУБД Вы будете работать, или Вы будете работать со всеми одновременно, что на самом деле не редкость, рекомендую установить PostgreSQL и использовать именно эту СУБД для обучения, так как PostgreSQL очень легко и быстро установить на Windows, уже буквально через 5 минут у Вас будет готовая площадка для обучения.
В следующих темах данного онлайн-самоучителя представлены подробные пошаговые инструкции по установке и настройки нескольких популярных СУБД, чтобы Вы могли установить интересующую Вас систему управления базами данных.