Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
инф-госы теория и практика.doc
Скачиваний:
28
Добавлен:
29.08.2019
Размер:
3.77 Mб
Скачать

11. Язык sql. Назначение и основные команды.

Отличие MySQL и SQL: Системой управления базами данных является MySQL, а SQL - это язык структурированных запросов, который «понимает» СУБД MySQL.

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

  • Создавать базы данных и таблицы с полным описанием их структуры:

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

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

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

Язык SQL имеет два основных компонента:

  • Язык DDL, предназначенный для определения структур баз данных;

  • Язык DML, предназначенный для выборки и обновления данных.

Язык SQL включает только команды определения и манипулирования данными — в нем отсутствуют какие-либо команды управления ходом вычислений. Другими словами, в этом языке нет команд IF ... THEN ... ELSE, GO TO, DO ... WHILE и любых других предназначенных для управления ходом вычислительного процесса. В плане организации вычислительного процесса язык SQL может использоваться двумя способами. Первый предусматривает интерактивную работу, заключающуюся в вводе пользователем с терминала отдельных SQL операторов. Второй состоит во внедрении SQL-операторов в программы на процедурных языках.

Язык SQL относительно прост в изучении.

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

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

  • Структура команд задается набором ключевых слов, представляющих собой обычные слова английского языка — такие, как CREATE TABLE (Создать таблицу), DROP TABLE (удаление таблицы), INSERT (Вставить), SELECT (Выбрать).

Например:

CREATE TABLE staff (sno VARCHAR(5), lname VARCHAR(15),

salary DECIMAL(7,2));

INSERT INTO staff

VALUES ('SG16', 'Brown', 8300);

SELECT sno, lname, salary

FROM staff

WHERE salary > 10000;

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

Запись SQL-операторов

Большинство компонентов SQL-операторов не чувствительно к регистру. Это озна­чает, что могут использоваться любые буквы — как строчные, так и прописные. Од­ним важным исключением из этого правила являются символьные литералы-данные, которые должны вводиться точно так же, как были введены соответствующие им значения, хранящиеся в базе данных. Например, если в базе данных хранится зна­чение фамилии 'POPOV', а в условии поиска указан символьный литерал 'Popov', то эта запись не будет найдена.

Поскольку язык SQL имеет свободный формат, отдельные SQL-операторы и их по­следовательности будут иметь более читабельный вид при использовании отступов и выравнивания. Рекомендуется придерживаться следующих правил.

  • Каждая фраза в операторе должна начинаться с новой строки.

  • Начало каждой фразы должно быть выровнено с началом остальных фраз оператора.

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

  • Фигурные скобки определяют обязательный элемент •— например, {а}.

  • Квадратные скобки определяют необязательный элемент — например, [а]

На практике для определения структуры базы данных (т.е. ее таблиц) используются DDL-операторы, а для заполнения этих таблиц данными и выборки из них информации с помощью запросов — DML-операторы.