Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИО.ЛР.3.SQL.Манипулирование данными.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
350.21 Кб
Скачать

Буханов С.А. (bukhanov@yandex.ru) Информационное обеспечение КИП(РТК)

Методические указания по выполнению лабораторной работы №3

СУБД MySQL

Построение запросов

Оглавление

Введение 2

1. Общие сведения о SQL 3

2. Сведения об операторах SQL 5

3. Сведения о типах данных 6

4. Методические указания по выполнению практической части лабораторной работы на тему «Разработка базы данных в СУБД MySQL» 9

4.1 На что следует обратить внимание перед началом работы 9

4.2 Начало работы с MySQL 10

4.3 Построение простых запросов 11

4.3.1 FROM 12

4.3.2 WHERE 12

4.3.3 GROUP BY 12

4.3.4 HAVING 14

4.4 Выполнение операций с несколькими таблицами 15

4.4.1 SELECT 15

4.4.2 UNION 16

4.4.3 NATURAL JOIN 17

4.4.4 OUTER JOIN 18

4.4.5 INNER JOIN 18

4.5 Упорядочение результата ORDER BY 19

5. Варианты заданий 19

Список литературы 22

Введение

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

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

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

  • определение конкретных структур хранения данных и методов доступа к ним, обеспечивающих оптимальную производительность СУБД;

  • разработка средств защиты создаваемой системы.

Именно этому этапу и посвящена разрабатываемая ЛР.

  1. Общие сведения о sql

Фактически стандартным языком доступа к базам данных в настоящее время стал язык SQL (Structured Query Language).

Данная лабораторная работа посвящена использованию языка SQL(Structured Query Language) для работы с базами данных в СУБД MySQL.

Текущая версия стандарта языка SQL принята в 1992 г. (Официальное название стандарта - Международный стандарт языка баз данных SQL (1992) (International Standart Database Language SQL), неофициальное название - SQL/92, или SQL-92, или SQL2). Документ, описывающий стандарт, содержит более 600 страниц. Здесь описывается только основная часть операторов языка.

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

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

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

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

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

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

Основу языка SQL составляют операторы, условно разбитые не несколько групп по выполняемым функциям:

  • Операторы DDL (Data Definition Language) - операторы определения объектов базы данных.

  • Операторы DML (Data Manipulation Language) - операторы манипулирования данными.

  • Операторы защиты и управления данными, и др.

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

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

  • запросы на получение данных;

  • запросы на добавление новых данных (записей)

  • запросы на удаление данных;

  • обращения к СУБД.

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

  • запросы, оперирующие самими таблицами (создание и изменение таблиц);

  • запросы, оперирующие с отдельными записями (или строками таблиц) или наборами записей.