Sql реферат список литературы

Обновлено: 05.07.2024

Содержимое работы - 1 файл

Язык запросов SQL.docx

Язык запросов SQL.

SQL является непроцедурным языком и не содержит операторов управления, организации подпрограмм, ввода-вывода и т.п. В связи с этим SQL автономно не используется, обычно он погружен в среду встроенного языка программирования СУБД (например, FoxPro СУБД Visual FoxPro, ObjectPAL СУБД Paradox, Visual Basic for Applications СУБД Access).

В современных СУБД с интерактивным интерфейсом можно создавать запросы, используя другие средства, например QBE. Однако применение SQL зачастую позволяет повысить эффективность обработки данных в базе. Например, при подготовке запроса в среде Access можно перейти из окна Конструктора запросов (формулировки запроса по образцу на языке QBE) в окно с эквивалентным оператором SQL. Подготовку нового запроса путем редактирования уже имеющегося в ряде случае проще выполнить путем изменения оператора SQL. В различных СУБД состав операторов SQL может несколько отличаться.

Язык SQL не обладает функциями полноценного языка разработки, а ориентирован на доступ к данным, поэтому его включают в состав средств разработки программ. В этом случае его называют встроенным SQL. Стандарт языка SQL поддерживают современные реализации следующих языков программирования: PL/1, Ada, С, COBOL, Fortran, MUMPS и Pascal.

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

Различают два основных метода использования встроенного SQL: статический и динамический.

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

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

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

История. Первые разработки.

Целью разработки было создание простого непроцедурного языка, которым мог воспользоваться любой пользователь, даже не имеющий навыков программирования. Собственно разработкой языка запросов занимались Дональд Чэмбэрлин (Donald D Chamberlin) и Рэй Бойс (Ray Boyce). Пэт Селинджер (Pat Selinger) занималась разработкой стоимостного оптимизатора (cost - based optimizer), Рэймонд Лори (Raymond Lorie) занимался компилятором запросов.

Стоит отметить, что SEQUEL был не единственным языком подобного назначения. В Калифорнийском Университете Беркли была разработана некоммерческая СУБД Ingres (являвшаяся, между прочим, дальним прародителем популярной сейчас некоммерческой СУБД PostgreSQL ), которая являлась реляционной СУБД, но использовала свой собственный язык QUEL , который, однако, не выдержал конкуренции по количеству поддерживающих его СУБД с языком SQL.

Первыми СУБД, поддерживающими новый язык, стали в 1979 году Oracle V2 для машин VAX от компании Relational Software Inc. (впоследствии ставшей компанией Oracle ) и System/38 от IBM, основанная на System/R.

Стандартизация.

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

Стандарт SQL1 разделялся на два уровня. Первый уровень представлял собой подмножество второго уровня, описывавшего весь документ в целом. То есть, такая структура предусматривала, что не все спецификации стандарта SQL1 будут относиться к Уровню 1. Тем самым, поставщик, заявлявший о поддержке данного стандарта, должен был заявлять об уровне, которому соответствует его реализация языка SQL. Это значительно облегчило принятие и поддержку стандарта, поскольку производители могли реализовывать его поддержку в два этапа.

Сразу после завершения работы над стандартом SQL1 в 1987 году была начата работа над новой версией стандарта, который должен был заменить стандарт SQL89, получив название SQL2, поскольку дата принятия документа на тот момент была неизвестна. Таким образом, фактически SQL89 и SQL2 разрабатывались параллельно. Новая версия стандарта была принята в 1992 году, заменив стандарт SQL89. Новый стандарт, озаглавленный как SQL92, представлял собой по сути расширение стандарта SQL1, включив себя множество дополнений имевшихся в предыдущих версиях инструкций.

SQL1 Уровень 1 -> SQL1 Уровень 2 -> SQL92 "Начальный" -> SQL92 "Средний" -> SQL92 "Полный".

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

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

  • создание в базе данных новой таблицы;
  • добавление в таблицу новых записей;
  • изменение записей;
  • удаление записей;
  • выборка записей из одной или нескольких таблиц (в соответствии с заданным условием);

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

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

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

  • запросы на создание или изменение в базе данных новых или существующих объектов (при этом в запросе описывается тип и структура создаваемого или изменяемого объекта);
  • запросы на получение данных;
  • запросы на добавление новых данных (записей)
  • запросы на удаление данных;
  • обращения к СУБД.

Основным объектом хранения реляционной базы данных является таблица, поэтому все SQL-запросы - это операции над таблицами. В соответствии с этим, запросы делятся на:

Отобрали лучшие книги по SQL для начинающих. Актуальная литература на русском языке с лучшими оценками.

Изучаем SQL. Алан Бьюли

Книга Изучаем SQL

Главы в книге рассказывают о том, как самостоятельно изучить ключевую концепцию и технику SQL. На страницах представлены многочисленные иллюстрации и аннотированные примеры. Упражнения в конце каждой главы позволяют применять изученную теорию на практике. С этой книгой вы:

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

SQL. Сборник рецептов. Энтони Молинаро

Книга SQL. Сборник рецептов

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

Основываясь на реальных примерах, новое издание книги позволяет строить решения в нескольких вариантах SQL, включая Oracle, DB2, SQL Server и PostgreSQL. Книга включает в себя:

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

Сегодня знание SQL необходимое требование для разработчиков, дата саентистов и аналитиков данных.

SQL. Полное руководство. Джеймс Р. Грофф, Пол Н. Вайнберг, Эндрю Дж. Оппель

Книга SQL. Полное руководство

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

Поймёте, как применять инструкции DDL и API, интегрировать сценарии XML и Java, использовать объекты SQL, формировать веб-серверы, обрабатывать удалённый доступ и реализовать распределённые транзакции.

SQL для чайников. Аллен Тейлор

Книга SQL для чайников

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

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

Рефакторинг SQL-приложений. Стефан Фаро, Паскаль Лерми

Книга Рефакторинг SQL-приложений

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

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

SQL и реляционная теория. К. Дж. Дейт

Книга SQL и реляционная теория

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

  • Почему важно правильно наименовать столбцы?
  • Почему значение NULL в базе данных приводит к неправильным ответам? Что мы можем с этим сделать?
  • Как отношения изображений могут помочь сформулировать сложный запрос?
  • Почему лучше избегать количественных сравнений, если язык их поддерживает?

SQL: Руководство по изучению языка. Крис Фиайли

Книга SQL: Руководство по изучению языка

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

Конструкции иллюстративно представлены и подробно описаны в качестве примеров. Дополнительно Крис Фиайли изучает нарушение систем работы для каждого типа запроса известных СУБД: MS Access, Oracle, MS SQL Server. Руководство поможет тем, кто планирует самостоятельно освоить язык или модернизировать имеющиеся знания.

SQL. Справочник. Дэниэл Кляйн, Брэнд Хант, Кевин Кляйн

Книга SQL. Справочник

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

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

Секреты Oracle SQL. Санжей Мишра, Алан Бьюли

Книга Секреты Oracle SQL

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

Transact-SQL. Михаил Фленов

Книга Transact-SQL в подлиннике

Книга рассказывает о применении языка Transcat-SQL предназначенный для администрирования и манипуляции СУБД. Здесь содержится большое количество примеров из жизни Михаила Фленова. Дополнительно делается акцент на применении языка при использовании 1С и Microsoft SQL Server.

Вдарим по базам: актуальные и полезные книги по SQL

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

Вдарим по базам: актуальные и полезные книги по SQL

Авторы данного издания используют Oracle8 и Oracle9 для объяснения материала и наглядного представления, как применять инструменты SQL для создания эффективных и удобных запросов в среде Oracle. Материал поможет вам начать работать с подзапросами, слияниями и объединениями, использовать инструкции DECODE и CASE для реализации условной логики, etc.

Вдарим по базам: актуальные и полезные книги по SQL

Следующая книга в списке литературы по SQL рассчитана на студентов среднего профессионального образования, но подойдет и для новичков. Автор подробно разбирает базовые синтаксические конструкции, применяемые в программировании хранимых процедур и в построении запросов на SQL. Материал подкрепляется графическими примерами запросов и скриптов. В комплекте с книгой идет возможность проверки полученных знаний по всем разделам в ходе выполнения практических заданий онлайн.

Вдарим по базам: актуальные и полезные книги по SQL

В данном учебном пособии проведены аналогии между SQL и NoSQL БД. В качестве подопытного для работы с SQL в phpMyAdmin, MySQL Workbench используется MariaDB. СУБД NoSQL-типа разбираются на примере MongoDB с использованием оболочки Robomongo. Показана возможность использования универсального менеджера баз данных DBeaver для одновременной работы с MariaDB и MongoDB. Как и заведено в обучающих материалах, знания закрепляются на лабораторных занятиях.

Вдарим по базам: актуальные и полезные книги по SQL

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

Вдарим по базам: актуальные и полезные книги по SQL

Развитие хакерского ремесла не стоит на месте и взлом личных данных юзеров больше не редкость. Самыми актуальными видами атак являются SQL-инъекции и XSS. Это издание рассчитано на опытных разработчиков и призвано помочь им разобраться с основами защиты и борьбы с инъекциями на любом уровне. Затрагиваются такие темы: тестирование, SQL-инъекции в запросах Insert/Update и многое другое.

Вдарим по базам: актуальные и полезные книги по SQL

Хотя SQL прост и доступен, в процессе работы бывают странные запросы, плохо спроектированные БД и масса других факторов, мешающих разработчику получить нужные данные. Настоящее руководство рассчитано на начинающих разработчиков и демонстрирует не только основы SQL, но и лучшие практики работы с ним. Затрагиваются такие темы: основы реляционных баз данных, функции, JOIN, сортировка и т. д.

Вдарим по базам: актуальные и полезные книги по SQL

Еще одна книга в списке литературы по SQL для начинающих специалистов. На начальном этапе обучения требуется большое количество примеров, практических задач и желательно рабочих ситуаций, которые сложно найти. В данном руководстве вы найдёте 50+ задач разной степени сложности, предоставленных автором из своего опыта. Затрагиваются выборка/удаление/редактирование данных, JOIN, GROUP BY, сортировка, группировка по критерию и многое другое.

Вдарим по базам: актуальные и полезные книги по SQL

Если ты разработчик, то обязан знать хотя бы одну СУБД, — пишет proglib.io. Держи эти книги по SQL и изучай: пришло время познать силу работы с данными.

PostgreSQL. Основы языка SQL – Моргунов Е. П.

PostgreSQL. Основы языка SQL

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

Секреты Oracle SQL – Алан Бьюли, Санжей Мишра

Секреты Oracle SQL

Авторы данного издания используют Oracle8 и Oracle9 для объяснения материала и наглядного представления, как применять инструменты SQL для создания эффективных и удобных запросов в среде Oracle. Материал поможет вам начать работать с подзапросами, слияниями и объединениями, использовать инструкции DECODE и CASE для реализации условной логики, etc.

Программирование на SQL. Учебное пособие для СПО – Маркин А. В.

Программирование на SQL. Учебное пособие для СПО

Следующая книга в списке литературы по SQL рассчитана на студентов среднего профессионального образования, но подойдет и для новичков. Автор подробно разбирает базовые синтаксические конструкции, применяемые в программировании хранимых процедур и в построении запросов на SQL. Материал подкрепляется графическими примерами запросов и скриптов. В комплекте с книгой идет возможность проверки полученных знаний по всем разделам в ходе выполнения практических заданий онлайн.

Базы данных. Практическое применение СУБД SQL- и NoSOL-типа для применения проектирования информационных систем – Мартишин С. А., Храпченко М. В.

Базы данных. Практическое применение СУБД SQL- и NoSOL-типа для применения проектирования информационных систем

В данном учебном пособии проведены аналогии между SQL и NoSQL БД. В качестве подопытного для работы с SQL в phpMyAdmin, MySQL Workbench используется MariaDB. СУБД NoSQL-типа разбираются на примере MongoDB с использованием оболочки Robomongo. Показана возможность использования универсального менеджера баз данных DBeaver для одновременной работы с MariaDB и MongoDB. Как и заведено в обучающих материалах, знания закрепляются на лабораторных занятиях.

Язык SQL в примерах и задачах – Толстобров А. П., Фертиков В. В.

Язык SQL в примерах и задачах

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

SQL-инъекции: защита и нападение – Джастин Кларк

SQL-инъекции: защита и нападение

Развитие хакерского ремесла не стоит на месте и взлом личных данных юзеров больше не редкость. Самыми актуальными видами атак являются SQL-инъекции и XSS. Это издание рассчитано на опытных разработчиков и призвано помочь им разобраться с основами защиты и борьбы с инъекциями на любом уровне. Затрагиваются такие темы: тестирование, SQL-инъекции в запросах Insert/Update и многое другое.

Язык SQL – Лари Рокоф

Язык SQL

Хотя SQL прост и доступен, в процессе работы бывают странные запросы, плохо спроектированные БД и масса других факторов, мешающих разработчику получить нужные данные. Настоящее руководство рассчитано на начинающих разработчиков и демонстрирует не только основы SQL, но и лучшие практики работы с ним. Затрагиваются такие темы: основы реляционных баз данных, функции, JOIN, сортировка и т. д.

SQL. Тренировка на ошибках – Сильвия Василик

SQL. Тренировка на ошибках

Еще одна книга в списке литературы по SQL для начинающих специалистов. На начальном этапе обучения требуется большое количество примеров, практических задач и желательно рабочих ситуаций, которые сложно найти. В данном руководстве вы найдёте 50+ задач разной степени сложности, предоставленных автором из своего опыта. Затрагиваются выборка/удаление/редактирование данных, JOIN, GROUP BY, сортировка, группировка по критерию и многое другое.

Руководство хакера по созданию и автоматизации средств безопасности – Брэндон Перри

Руководство хакера по созданию и автоматизации средств безопасности

Читайте также: