Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаба № 1 «основы Языка Sql» По Базам Данных (Сигачёв А. С.).doc
Скачиваний:
29
Добавлен:
07.10.2014
Размер:
70.66 Кб
Скачать
  1. Лабораторная работа. Основы языка sql.

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

Для подготовки запросов в различных СУБД чаще всего используется язык SQL (Structured Query Language) – структурированный язык запросов.

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

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

Общепринятый термин «язык запросов» не совсем точно отражает рассматриваемое понятие, поскольку слово «запрос» подразумевает лишь выборку, в то время как с помощью этого языка выполняются также операции обновления, вставки и удаления и многое другое.

      1. Основные операторы языка.

Вид

Название

Название

 

DDL

Create table

Создание таблиц

Drop Table

Удаление таблицы

Alter Table

Изменение структуры таблицы

Create Index

Создание индекса

Drop Index

Создание представления

Create View

Создание представления

 

DML

Select

Выборка записей

Update

Изменение записей

Insert

Вставка новых записей

Delete

Удаление записей

Оператор выборки SELECT содержит несколько инструкций: FROM, WHERE, GROUP BY, HAVING, ORDER BY. Последние четыре необязательны.

Синтаксис оператора SELECT имеет следующий вид:

SELECT [ALL|DISTINCT](<Список полей>|*) FROM        <Список таблиц> [WHERE      <Предикат-условие выборки или соединения>] [GROUP BY   <Список полей результата>] [HAVING     <Предикат-условие для группы>] [ORDER BY   <Список полей, по которым упорядочить вывод>]

Здесь ключевое слово ALL означает, что в результирующий набор строк включаются все строки, удовлетворяющие условиям запроса. Т.е. в результирующий набор могут попасть одинаковые строки. И это - нарушение принципов теории отношений (в отличие от реляционной алгебры, где по умолчанию предполагается отсутствие дубликатов в каждом результирующем отношении). DISTINCT означает, что в результирующий набор включаются только различные строки, т. е. дубликаты строк результата исключаются. Символ * (звездочка) означает, что в результирующий набор включаются все столбцы из исходных таблиц запроса. В разделе FROM задается перечень исходных отношений (таблиц) запроса. В разделе WHERE задаются условия отбора строк результата или условия соединения кортежей исходных таблиц, подобно операции условного соединения в реляционной алгебре. В разделе GROUP BY задается список полей группировки. В разделе HAVING задаются предикаты-условия, накладываемые на каждую группу. В части ORDER BY задается список полей упорядочения результата, то есть список полей, который определяет порядок сортировки в результирующем отношении. Например, если первым полем списка будет указана Фамилия, а вторым Номер группы, то в результирующем отношении сначала будут собраны в алфавитном порядке фамилии, и если найдутся однофамильцы, то они будут расположены в порядке возрастания номеров групп.