- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.1. Автоматизация работы пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.1. Автоматизация работы пользователя в среде microsoft office
- •672 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.1. Автоматизация работы пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.1. Автоматизация работы пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •678 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.1. Автоматизация работы пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.1. Автоматизация работы пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.1. Автоматизация работы пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.1. Автоматизация работы пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.1. Автоматизация работы пользователя в среде microsoft office
- •688 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •690 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •7 08 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •712 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •7 14 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •7 16 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •718 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.2. Создание приложений на языке visual basic for applications
- •720 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.3. Реляционные языки манипулирования данными
- •722 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.3. Реляционные языки манипулирования данными
- •724 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.3. Реляционные языки манипулирования данными
- •19.3. Реляционные языки манипулирования данными
- •728 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.3. Реляционные языки манипулирования данными
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.3. Реляционные языки манипулирования данными
- •732 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.3. Реляционные языки манипулирования данными 733
- •734 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.3. Реляционные языки манипулирования данными
- •736 Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.3. Реляционные языки манипулирования данными
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •19.3. Реляционные языки манипулирования данными
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
- •Глава 19. Инструментальные средства пользователя в среде microsoft office
19.3. Реляционные языки манипулирования данными
725
Между записями реляционных таблиц устанавливаются отношения следующих типов:
1:1 — одно — однозначное соответствие, когда записи в первой таблице соответствует запись в связанной с ней другой таблице (в обратном направлении также выполняется данное соответствие).
1:М — одно — многозначное соответствие, когда одной записи в первой таблице соответствует несколько записей во второй таблице, но каждая запись второй таблицы связана не более чем с одной записью первой таблицы.
Связь М:М не реализуется в реляционных языках непосредственно, для этого используются промежуточные таблицы-связки для замены типа соответствия на 1 :М.
Пример 19.48. Если таблица СТУДЕНТ содержит первичный ключ [№ зач.книжки], а таблица ОЦЕНКА имеет схему ([№ зач.книжки], [Код дисциплины], [Результат]), то поле [№ зач.книжки] таблицы ОЦЕНКА выступает как внешний ключ для организации связи с таблицей СТУДЕНТ. Связь возможна, если тип данных и значение данного поля в обеих таблицах будут одинаковыми, при этом эти поля могут иметь и произвольные названия. Так, в таблице ОЦЕНКА может использоваться поле [Код студента], к примеру.
Применительно кразносхемным таблицам выполняются различные действия.
Декартово произведение — две таблицы образуют новую таблицу, которая включает все поля исходных таблиц. В результирующей таблице выводится итог соединения типа "каждый с каждым", при этом могут отсутствовать значения отдельных полей в результирующей записи.
Пример 19.49. Имеются таблицы СТУДЕНТ и ДИСЦИПЛИНА([Код дисциплины], [Наименование дисциплины]). Декартово произведение таблиц дает новую таблицу — УСПЕВАЕМОСТЬ со схемой ([Имя], [Фамилия], [Дата рождения], [№ зач.книжки], [Код дисциплины], [Наименование дисциплины]). Если какой-либо студент не связан с определенной дисциплиной либо по дисциплине не предполагается учет успеваемости, результирующая запись, полученная как декартово произведение, не имеет смысла.
СТУДЕНТ
Имя |
Фамилия |
Дата рождения |
№ зач.книжки |
Петр |
Иванов |
12.12.80 |
123245 |
Марина |
Петрова |
1.1.80 |
233244 |
ДИСЦИПЛИНА
Код дисциплины |
Наименование дисциплины |
1 |
Высшая математика |
2 |
Информатика |
УСПЕВАЕМОСТЬ
Имя |
Фамилия |
Дата рождения |
№ зач. книжки |
Код дисциплины |
Наименование |
дисципли ны |
|
|
|
|
|
Петр |
Иванов |
12.12.80 |
123245 |
1 |
Высшая математика |
Петр |
Иванов |
12.12.80 |
123245 |
2 |
Информатика |
Марина |
Петрова |
1.1.80 |
233244 |
1 |
Высшая математика |
Марина |
Петрова |
1.1.80 |
233244 |
2 |
Информатика |
Условием совместной обработки разносхемных реляционных таблиц в ряде случаев является наличие общих по типу и значению полей, так называемых внешних ключей.
726 ГЛАВА 19. ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА ПОЛЬЗОВАТЕЛЯ В СРЕДЕ MICROSOFT OFFICE ^^
Соединение — две таблицы, имеющие общие поля — внешние ключи, участвуют в создании новой таблицы, схема которой строится объединением всех полей исходных отношений, а результирующие записи формируются по определенным условиям:
для одинаковых значений внешних ключей — симметричное соединение;
для всех записей одной из таблиц и соответствующих им записей другой таблицы —
внешнее соединение.
Пример 19.50. Соединить таблицы СТУДЕНТЫ и ОЦЕНКА при условии, что включены все записи таблицы СТУДЕНТ и соответствующие им записи таблицы ОЦЕНКА. Объединение таблиц возможно по общему полю — [№ зач.книжки].
СТУДЕНТЫ
Имя |
Фамилия |
Дата рождения |
№ зач.книжки |
Петр |
Иванов |
12.12.80 |
123245 |
Марина |
Петрова |
1.1.80 |
233244 |
Иван |
Сидоров |
12.1.80 |
123247 |
ОЦЕНКА
Код дисциплины |
№ зач.книжки |
Результат |
1 |
123245 |
3 |
1 |
233244 |
4 |
2 |
233244 |
5 |
2 |
123245 |
5 |
РЕЗУЛЬТАТЫ
Имя |
Фамилия |
Дата рождения |
№ зач. книжки |
Код дисциплины |
№ зач. книжки |
Результат |
Петр |
Иванов |
12.12.80 |
123245 |
1 |
123245 |
3 |
Петр |
Иванов |
12.12.80 |
123245 |
1 |
233244 |
4 |
Марина |
Петрова |
1.1.80 |
233244 |
2 |
233244 |
5 |
Марина |
Петрова |
1.1.80 |
233244 |
2 |
123245 |
5 |
Иван |
Сидоров |
12.1.80 |
123247 |
пустые поля, так как нет соответствующих записей в таблице ОЦЕНКА |
Деление — создается новая таблица, схема которой строится вычитанием из множества полей первой таблицы множества полей второй таблицы, результирующие записи формируются для одинаковых значений общих полей.
Пример 19.51. Результат деления таблицы УСПЕВАЕМОСТЬ на таблицу ОЦЕНКА дает таблицу СТУДЕНТ (см. предыдущий пример).
КЛАССИФИКАЦИЯ РЕЛЯЦИОННЫХ ЯЗЫКОВ
Типы реляционных языков
Реляционные языки обеспечивают типовые операции по обработке реляционных таблиц, позволяют формулировать логические условия, используемые в операциях выборки, проверку целостности (непротиворечивости) данных взаимосвязанных таблиц.
Реляционные языки оперируют с данными как со множествами, применяя к ним основные операции теории множеств. На входе реляционного оператора — множество записей одной или нескольких реляционных таблиц, на выходе — множество записей новой реляционной таблицы. Реляционные языки имеют различный уровень процедурности — содержание и последовательность перехода от входных данных к выходным.