Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лб3_SQL_2010_печать.doc
Скачиваний:
4
Добавлен:
14.08.2019
Размер:
294.4 Кб
Скачать

Лабораторная работа № 3 создание запросов на языке microsoft jet sql

Цель работы - приобретение навыков написания SQL-кода в СУБД MS ACCESS

3.1 Краткая теория вопроса

Язык SQL – язык баз данных. Microsoft Access использует язык Microsoft Jet SQL. Ядро базы данных Microsoft Jet SQL в основном совместимо с ANSI-89 и ANSI-92. Однако некоторые возможности языка запросов ANSI SQL в нем не реализованы.

Когда пользователь создает запрос в режиме (QBE), Microsoft Access автоматически создает эквивалентную инструкцию SQL. При необходимости, можно просматривать и редактировать инструкции SQL в режиме SQL. После внесения изменений в запрос в режиме SQL его вид в режиме конструктора может измениться.

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

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

WHERE fio = "Иванов",

где fio = "Иванов" — аргумент, а WHERE — ключевое слово.

Объекты — это структуры в базе данных (таблицы, запросы, формы и др.), которые именуются и хранятся в памяти.

Р и с. 15

Соглашения по синтаксису команд:

[ ] — квадратные скобки — часть команды, которую при желании можно опустить;

( ) — круглые скобки — предшествующее им можно повторить любое количество раз;

< > — слова, заключенные в угловые скобки, — специальные термины, которые объясняются по мере вывода.

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

Инструкция 1. Создание таблицы (оновной)

CREATE TABLE таблица (поле_1 тип [(размер)] [NOT NULL] [индекс_1] [, поле_2 тип [(размер)] [NOT NULL] [индекс_2] [, ...]] [, CONSTRAINT составнойИндекс [, ...]])

Инструкция 2. Создание подчиненной таблицы с установлением связи:

CREATE TABLE таблица (поле_1 тип [(размер)] [NOT NULL] [индекс_1] [, поле_2 тип [(размер)] [NOT NULL] [индекс_2] [, ...]] [,CONSTRAINT имя {PRIMARY KEY (ключевое_1[, ключевое_2 [, ...]]) | UNIQUE (уникальное_1[, уникальное_2 [, ...]]) | NOT NULL (непустое_1[, непустое_2 [, ...]]) | FOREIGN KEY [NO INDEX] (ссылка_1[, ссылка_2 [, ...]]) REFERENCES внешняяТаблица [(внешнееПоле_1 [, внешнееПоле_2 [, ...]])] [ON UPDATE CASCADE | SET NULL] [ON DELETE CASCADE | SET NULL]}

Инструкция 3. Добавление полей

ALTER TABLE таблица {ADD {COLUMN тип поля[(размер)] [NOT NULL] [CONSTRAINT индекс] | ALTER COLUMN тип поля[(размер)] | CONSTRAINT составнойИндекс} | DROP {COLUMN поле1 CONSTRAINT имяИндекса} }

Инструкция 4. Добавление одной записи

INSERT INTO назначение [(поле_1[, поле_2[, ...]])] VALUES (значение_1[, значение_2[, ...])

(Вместо VALUES можно использовать слово SELECT)

Инструкция 5. Вставка данных из одной таблицы в другую

INSERT INTO назначение [(поле_1[, поле_2[, ...]])] [IN внешняяБазаДанных] SELECT [источник.]поле_1[, поле_2[, ...] FROM выражение

Инструкция 6. Удаление записей

DELETE [таблица.*] FROM таблица WHERE условиеОтбора

Инструкция 7. Выборка данных

SELECT [предикат] { * | таблица.* | [таблица.]поле_1 [AS псевдоним_1] [, [таблица.]поле_2 [AS псевдоним_2] [, ...]]}

FROM выражение [, ...] [IN внешняяБазаДанных]

[WHERE условие_отбора]

[GROUP BY список_полей_группировки]

[HAVING условие. группировки]

[ ORDER BY вполе_1( ASC | DESC ] [, вполе_2 [ASC |DESC]]...];

Ниже представлены пояснения по инструкции SELECT.

"Предикат" — задает ограничения на возвращаемые записи:

ALL — без ограничений (по умолчанию);

DISTINCT — все записи без их дублирования;

Таблица — имя таблицы-источника, из которой берутся записи;

поле_1, поле_2... — имена полей, из которых берутся записи;

псевдоним_1, псевдоним_2... — имена, которые станут заголовками столбцов вместо исходных названий столбцов в таблице;

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

Внешняя_База_Данных — имя базы данных с таблицами, которые указаны с помощью аргумента "выражение", если они не находятся в текущей базе данных;

условие_отбора — выражение с условием, которому должны соответствовать записи, включенные в результат исполняемого запроса;

список_полей группировки — имена полей, которые применяются для группирования записей;

условие _Группиравки — выражение, которое определяет, какие сгруппированные записи следует отображать;

вполе_1, вполе_2 — поля, по значениям которых сортируются записи в результате запроса: ASC— по возрастанию, DESC— по убыванию.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]