Содержание

Содержание. 2

Задача 1.9. 3

Задача 1.2. 8

Задача 5.5. 12

Задача 4.5. 16

Задача 6.6. 21

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

Задача 1.9

Для определения поставщика определенного товара выдать список поставщиков товаров группы «Мясо/птица» и данные для взаимодействия.

Решение

Реквизит «Название поставщика» является обязательным по условию задачи, остальные реквизиты используются в процедурах профилизации, сегментации и связи. В список данных для взаимодействия с поставщиками включен также и адрес в Интернете, так как соответствующее поле присутствует в схеме данных.

 Исходя из результатов анализа информационной потребности, определяем состав и структуру требуемого сообщения S(Список поставщиков определенного товара на примере поставщиков товаров группы «Мясо/птица» и их данных для взаимодействия)

S(Поставщики.Название, Поставщики.Адрес, Поставщики.Город, Поставщики.Область, Поставщики.Индекс, Поставщики.Страна, Поставщики.Телефон, Поставщики.Факс, Поставщики.ОсновнаяСтраница, Типы.Категория).

Поскольку сведения о том, кто является поставщиком определенного товара, находятся в таблице  Товары, сведения о поставщиках в таблице Поставщики, а сведения о группе товара в таблице Типы, в запросе необходимо использовать таблицы Товары, Поставщики и Типы. Данные таблицы образуют часть схемы данных, используемую для решения задачи, поэтому других таблиц на входе процесса нет.

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

Получение выходного сообщения позволит уменьшить трудозатраты на выборку информации об определенных товарах на примере поставщиков товаров группы «Мясо/птица» и их данных для взаимодействия.  Выдача наименований поставщиков и данных для взаимодействия с ними позволит повысить качество индивидуальной работы с каждым из них. Анализ данных о составе и количестве поставщиков по регионам в сопоставлении  с проведенными операциями и выполненными мероприятиями позволит оценить результаты реализации бизнес-стратегии компании, ее товарной, ценовой и коммуникационной политики.

С позиций потребителя-пользователя запрос можно охарактеризовать как простой с поэтапным потреблением информации. Для работы с данными результирующая таблица может быть экспортирована в Excel. При реализации в Access данный запрос может быть запросом на выборку. При ведении истории запрос является хранимой процедурой. Он исполняется по мере возникновения потребности в информации в определенной динамике.

 В процессе решения задачи с использованием SQL-проекта NorthwindCS применяется двухуровневая архитектура «клиент/сервер», вариант реализации технологии «клиент/сервер» DBS. В процессе решения задачи с использованием *.mdb-файла применяется RDA-вариант реализации технологии «клиент/сервер».

Подготовка запроса в Access с использованием *.mdb-файла осуществляется с использованием Конструктора, поскольку все данные находятся  связанных между собой таблицах. При формировании запроса автоматически генерируется SQL-код. SQL-запрос передается серверу, который возвращает клиенту результирующую таблицу. Выполнение процедур создания и использования запроса осуществляется на рабочей станции и на сервере сети.

Таблица Типы  имеет простой ключ «КодТипа», таблица Поставщики – простой ключ «КодПоставщика», а таблица Товары – простой ключ «КодТовара».  Таблицы Типы и Поставщики являются главными по отношению к таблице Товары.  Тип связи «один-ко-многим». Связь по полю «КодТипа» и по полю «КодПоставщика» (ключи связи). Целостность по значениям определяется отсутствием в таблице Товары значений поля «КодТипа», которых нет в таблице Типы и  отсутствием значений поля «КодПоставщика», которых нет в таблице Поставщики. Значения поля «КодТипа» и «КодПоставщика» в таблице Товары обновляются автоматически при изменении соответственно значений поля «КодТипа» в таблице Типы и значений поля «КодПоставщика» в таблице Поставщики.

Процедура реляционной обработки данных выполняется вручную. Представляем значения исходных данных в таблицах.

Таблица Товары (фрагмент):

Код товара

Код поставщика

Код типа

2

7

3

3

7

6

Таблица Поставщики (фрагмент):

Код поставщика

Название поставщика

Адрес

Город

Область

Индекс

Страна

Телефон

Факс

Основная страница

7

Pavlova, Ltd.

74 Rose St.

Мельбурн

Victoria

3058

Австралия

(03) 444-2343

(03) 444-6588

Pavlova   ( на Web)

20

Leka Trading

471 Serangoon Loop, Suite #402

Сингапур

3058

Сингапур

555-8787

Таблица Типы (фрагмент):

Код типа

Категория

3

Кондитерские изделия

6

Мясо/птица

Результат выполнения реляционной операции произведения (фрагмент):

Код товара

Код поставщика

Код типа

Код поставщика

Название

Адрес

Город

Область

Индекс

Страна

Телефон

Факс

Основная страница

Код типа

Категория

2

7

3

7

Pavlova, Ltd.

74 Rose St.

Мельбурн

Victoria

3058

Австралия

(03) 444-2343

(03) 444-6588

Pavlova (Web)

3

Кондитерские изделия

2

7

3

20

Leka Trading

471 Serangoon Loop, Suite #402

Сингапур

0512

Сингапур

555-8787

3

Кондитерские изделия

3

7

6

7

Pavlova, Ltd.

74 Rose St.

Мельбурн

Victoria

3058

Австралия

(03) 444-2343

(03) 444-6588

Pavlova (Web)

3

Кондитерские изделия

3

7

6

20

Leka Trading

471 Serangoon Loop, Suite #402

Сингапур

0512

Сингапур

555-8787

3

Кондитерские изделия

2

7

3

7

Pavlova, Ltd.

74 Rose St.

Мельбурн

Victoria

3058

Австралия

(03) 444-2343

(03) 444-6588

Pavlova (Web)

6

Мясо /птица

2

7

3

20

Leka Trading

471 Serangoon Loop, Suite #402

Сингапур

0512

Сингапур

555-8787

6

Мясо /птица

3

7

6

7

Pavlova, Ltd.

74 Rose St.

Мельбурн

Victoria

3058

Австралия

(03) 444-2343

(03) 444-6588

Pavlova (Web)

6

Мясо /птица

3

7

6

20

Leka Trading

471 Serangoon Loop, Suite #402

Сингапур

0512

Сингапур

555-8787

6

Мясо /птица

Результат выполнения реляционной операции соединения – сцепления строк с совпадающими значениями поля «Код Поставщика» и «Код Типа» (фрагмент):

Код товара

Код поставщика

Код типа

Код поставщика

Название

Адрес

Город

Область

Индекс

Страна

Телефон

Факс

Основная страница

Код типа

Категория

2

7

3

7

Pavlova, Ltd.

74 Rose St.

Мельбурн

Victoria

3058

Австралия

(03) 444-2343

(03) 444-6588

Pavlova (Web)

3

Кондитерские изделия

3

7

6

7

Pavlova, Ltd.

74 Rose St.

Мельбурн

Victoria

3058

Австралия

(03) 444-2343

(03) 444-6588

Pavlova (Web)

6

Мясо /птица

Результат выполнения операции селекции – выбора строк по принадлежности значений поля «Категория»  - введенному нами значению «Мясо/птица»:

Код товара

Код поставщика

Код типа

Код поставщика

Название

Адрес

Город

Область

Индекс

Страна

Телефон

Факс

Основная страница

Код типа

Категория

3

7

6

7

Pavlova, Ltd.

74 Rose St.

Мельбурн

Victoria

3058

Австралия

(03) 444-2343

(03) 444-6588

Pavlova (Web)

6

Мясо /птица

Результат выполнения операции проекции (фрагмент):

Название

Адрес

Город

Область

Индекс

Страна

Телефон

Факс

Основная страница

Категория

Pavlova, Ltd.

74 Rose St.

Мельбурн

Victoria

3058

Австралия

(03) 444-2343

(03) 444-6588

Pavlova (Web)

Мясо /птица

Полный вариант запроса на выборку поставщиков определенного товара на примере поставщиков товаров группы «Мясо/птица» и данных для взаимодействия.

SELECT DISTINCT Поставщики.Название, Поставщики.Адрес, Поставщики.Город, Поставщики.Область, Поставщики.Индекс, Поставщики.Страна, Поставщики.Телефон, Поставщики.Факс, Поставщики.ОсновнаяСтраница, Типы.Категория

FROM Типы INNER JOIN (Поставщики INNER JOIN Товары ON Поставщики.КодПоставщика = Товары.КодПоставщика) ON Типы.КодТипа = Товары.КодТипа

WHERE (((Типы.Категория)=[Наименование Товара]));

Задача 1.2

Выдать названия клиентов с заказами на октябрь текущего года, их адреса, сведения о месте нахождения.

Решение

    Реквизит «Название клиента» является обязательным по условию задачи, остальные реквизиты используются в процедурах профилизации, сегментации и связи. Адрес в Интернете отсутствует по причине отсутствия соответствующего поля в схеме данных. Сведения о заказах отсутствуют, поскольку запрос на получение соответствующего сообщения уже имеется в составе объектов и в нем содержатся сведения о клиентах. Исходя из результатов анализа информационной потребности, определяем состав и структуру требуемого сообщения S_( Клиенты с заказами на октябрь текущего года, их адреса, местонахождение)

S_(Клиенты.КодКлиента, Клиенты.Название, Клиенты.Адрес, Клиенты.Город, Клиенты.Область, Клиенты.Индекс, Клиенты.Страна, Клиенты.Телефон, Клиенты.Факс, Заказы.ДатаНазначения).

Определяем состав полей и таблиц, используемых в запросе из схемы № 1 (база данных Борей). Представляем в графическом виде обобщенную функционально-технологическую схему задачи.

Поскольку сведения о заказе клиента на определенную дату находятся в таблице  Заказы, а сведения о клиенте находятся в таблице Клиенты, в запросе необходимо использовать таблицы Заказы и Клиенты. Данные таблицы образуют часть схемы данных, используемую для решения задачи, поэтому других таблиц на входе процесса нет.

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

Получение выходного сообщения позволит уменьшить трудозатраты на выборку информации о клиентах с заказами на октябрь текущего года.  Анализ данных о составе и количестве клиентов по регионам в сопоставлении с проведенными операциями и выполненными мероприятиями позволит оценить результаты реализации бизнес-стратегии компании. Выдача названий клиентов позволит повысить качество индивидуальной работы с клиентурой. Получение информации всеми потребителями должно положительно повлиять на результаты деятельности компании.

С позиций потребителя-пользователя запрос можно охарактеризовать как простой с поэтапным потреблением информации. Для работы с данными результирующая таблица может быть экспортирована в Excel. При реализации в Access данный запрос может быть запросом на выборку. При ведении истории запрос является хранимой процедурой. Он исполняется по мере возникновения потребности в информации в определенной динамике.

 В процессе решения задачи с использованием SQL-проекта NorthwindCS применяется двухуровневая архитектура «клиент/сервер», вариант реализации технологии «клиент/сервер» DBS. В процессе решения задачи с использованием *.mdb-файла применяется RDA-вариант реализации технологии «клиент/сервер».

Подготовка запроса в Access с использованием *.mdb-файла осуществляется с использованием Конструктора, поскольку все данные находятся  связанных между собой таблицах. При формировании запроса автоматически генерируется SQL-код. SQL-запрос передается серверу, который возвращает клиенту результирующую таблицу. Выполнение процедур создания и использования запроса осуществляется на рабочей станции и на сервере сети.

Таблица Заказы имеет простой ключ «КодЗаказа», таблица Клиенты – простой ключ «КодКлиента». Таблица Клиенты является главной, Заказы – подчиненной. Тип связи «один-ко-многим». Связь по полю «КодКлиента» (ключ связи). Целостность по значениям определяется отсутствием в таблице Заказы значений поля «КодКлиента», которых нет в таблице Клиенты. Значения поля «КодКлиента» в таблице Заказы обновляются автоматически при изменении значений поля «КодКлиента» в таблице Клиенты.

Процедура реляционной обработки данных выполняется вручную. Представляем значения исходных данных в таблицах.

Таблица Заказы (фрагмент):

    Код заказа

Код клиента

Дата Назначения

10308

ANATR

16-окт-2004

11011

ALFKI

06-июн-1996

Таблица Клиенты (фрагмент):

Код клиента

Название

Адрес

Город

Область

Индекс

Страна

Телефон

Факс

ALFKI

Alfreds Futterkiste

Obere Str. 57

Берлин

12209

Германия

030-0074321

030-0076545

ANATR

Ana Trujillo Emparelados

Avda. de la Constitucion 2222

Мехико

050221

Мексика

(5) 555-47291

(5) 555-3745

Результат выполнения реляционной операции произведения (фрагмент):

Код клиента

Название

Адрес

Город

Область

Индекс

Страна

Телефон

Факс

Код заказа

Код Клиента

Дата назначения

ALFKI

Alfreds Futterkiste

Obere Str. 57

Берлин

12209

Германия

030-0074321

030-0076545

11011

ALFKI

06-июн-1996

ALFKI

Alfreds Futterkiste

Obere Str. 57

Берлин

12209

Германия

030-0074321

030-0076545

10308

ANATR

16-окт-2004

ANATR

Ana Trujillo Emparelados

Avda. de la Constitucion 2222

Мехико

050221

Мексика

(5) 555-47291

(5) 555-3745

11011

ALFKI

06-июн-1996

ANATR

Ana Trujillo Emparelados

Avda. de la Constitucion 2222

Мехико

050221

Мексика

(5) 555-47291

(5) 555-3745

10308

ANATR

16-окт-2004

Результат выполнения реляционной операции соединения – сцепления строк с совпадающими значениями поля «Код Клиента» (фрагмент):

Код клиента

Название

Адрес

Город

Область

Индекс

Страна

Телефон

Факс

Код заказа

Код Клиента

Дата назначения

ALFKI

Alfreds Futterkiste

Obere Str. 57

Берлин

12209

Германия

030-0074321

030-0076545

11011

ALFKI

06-июн-1996

ANATR

Ana Trujillo Emparelados

Avda. de la Constitucion 2222

Мехико

050221

Мексика

(5) 555-47291

(5) 555-3745

10308

ANATR

16-окт-2004

Результат выполнения операции селекции – выбора строк по принадлежности значений поля «ДатаНазначения»  интервалу от 01.10.2004 до 31.10.2004 включительно (фрагмент):

Код клиента

Название

Адрес

Город

Область

Индекс

Страна

Телефон

Факс

Код заказа

Код Клиента

Дата назначения

ANATR

Ana Trujillo Emparelados

Avda. de la Constitucion 2222

Мехико

050221

Мексика

(5) 555-47291

(5) 555-3745

10308

ANATR

16-окт-2004

Результат выполнения операции проекции (фрагмент):

Код клиента

Название

Адрес

Город

Область

Индекс

Страна

Телефон

Факс

Дата назначения

ANATR

Ana Trujillo Emparelados

Avda. de la Constitucion 2222

Мехико

050221

Мексика

(5) 555-47291

(5) 555-3745

16-окт-2004

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

SELECT Клиенты.КодКлиента, Клиенты.Название, Клиенты.ОбращатьсяК, Клиенты.Должность, Клиенты.Адрес, Клиенты.Город, Клиенты.Область, Клиенты.Индекс, Клиенты.Страна, Клиенты.Телефон, Клиенты.Факс, Заказы.ДатаНазначения

FROM Клиенты INNER JOIN Заказы ON Клиенты.КодКлиента=Заказы.КодКлиента

WHERE ((Заказы.ДатаНазначения) Between #10/1/2004# And #10/31/2004#);

Задача 5.5

Получить сведения о незастрахованных компьютерах.

Решение:

Исходя из результатов анализа информационной потребности, определяем состав и структуру требуемого сообщения S(Сведения о незастрахованных компьютерах)

S([Основные фонды].КодОсновныхФондов, [Основные фонды].ОписаниеОсновныхФондов, [Основные фонды].НомерМодели, [Основные фонды].СерийныйНомер, [Основные фонды].[Штрих-код], [Основные фонды].ДатаПриобретения, [Основные фонды].ЦенаПокупки, [Основные фонды].СрокАмортизации, [Основные фонды].СуммаСтраховки, [Типы фондов].ТипОсновныхФондов).

Поскольку сведения обо всех основных фондах (в том числе и незастрахованных компьютерах) находятся в таблице  Основные фонды, а типы основных фондов (в нашем случае это компьютеры) перечислены в таблице Типы фондов, в запросе необходимо использовать таблицы Основные Фонды и Типы фондов. Данные таблицы образуют часть схемы данных, используемую для решения задачи, поэтому других таблиц на входе процесса нет.

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

Получение выходного сообщения позволит уменьшить трудозатраты на выборку сведений о незастрахованных компьютерах.  

С позиций потребителя-пользователя запрос можно охарактеризовать как простой с поэтапным потреблением информации. Для работы с данными результирующая таблица может быть экспортирована в Excel. При реализации в Access данный запрос может быть запросом на выборку. При ведении истории запрос является хранимой процедурой. Он исполняется по мере возникновения потребности в информации в определенной динамике.

 В процессе решения задачи с использованием SQL-проекта NorthwindCS применяется двухуровневая архитектура «клиент/сервер», вариант реализации технологии «клиент/сервер» DBS. В процессе решения задачи с использованием *.mdb-файла применяется RDA-вариант реализации технологии «клиент/сервер».

Подготовка запроса в Access с использованием *.mdb-файла осуществляется с использованием Конструктора, поскольку все данные находятся  связанных между собой таблицах. При формировании запроса автоматически генерируется SQL-код. SQL-запрос передается серверу, который возвращает клиенту результирующую таблицу. Выполнение процедур создания и использования запроса осуществляется на рабочей станции и на сервере сети.

Таблица Типы фондов  имеет простой ключ «КодТипаОсновныхФондов», таблица Основные фонды – простой ключ «КодОсновныхФондов».  Таблица Типы фондов является главной, а таблица Основные фонды – подчиненной.  Тип связи «один-ко-многим». Связь по полю «КодТипаОсновныхФондов» (ключ связи). Целостность по значениям определяется отсутствием в таблице Основные фонды значений поля «КодТипаОсновныхФондов», которых нет в таблице Типы фондов. Значения поля «КодТипаОсновныхФондов» в таблице Основные фонды обновляются автоматически при изменении соответственно значений поля «КодТипаОсновныхФондов» в таблице Типы фондов.

Процедура реляционной обработки данных выполняется вручную. Представляем значения исходных данных в таблицах.

Таблица Типы фондов (фрагмент):

Код типа основных фондов

Тип основных фондов

2

Компьютер

3

Принтер

Таблица Основные фонды (фрагмент):

Код Основных Фондов

Описание Основных Фондов

Код типа Основных Фондов

Номер Модели

Серийный Номер

Штрих-код

Дата Приобретения

Цена Покупки

Срок аморти

зации

Сумма Страховки

1

Персональный компьютер

2

12344111

01.01.1994

2 500,00р.

5

100,00р.

4

Лазерный принтер

3

ALW4

4556544-9

04.01.1994

1 500,00р.

5

0,00р.

6

Персональный компьютер

2

ATL2400

23456789

01.02.1994

1 800,00р.

5

0,00р.

Результат выполнения реляционной операции произведения (фрагмент):

Код Основных Фондов

Описание Основных Фондов

Код типа Основных Фондов

Номер Модели

Серийный Номер

Штрих-код

Дата Приобретения

Цена Покупки

Срок аморти

зации

Сумма Страховки

Код типа основных фондов

Тип основных фондов

1

Персональный компьютер

2

12344111

01.01.1994

2 500,00р.

5

100,00р.

2

Компьютер

1

Персональный компьютер

2

12344111

01.01.1994

2 500,00р.

5

100,00р.

3

Принтер

4

Лазерный принтер

3

ALW4

4556544-9

04.01.1994

1 500,00р.

5

0,00р.

2

Компьютер

4

Лазерный принтер

3

ALW4

4556544-9

04.01.1994

1 500,00р.

5

0,00р.

3

Принтер

6

Персональный компьютер

2

ATL2400

23456789

01.02.1994

1 800,00р.

5

0,00р.

2

Компьютер

6

Персональный компьютер

2

ATL2400

23456789

01.02.1994

1 800,00р.

5

0,00р.

3

Принтер

Результат выполнения реляционной операции соединения – сцепления строк с совпадающими значениями поля                                   «Код Типа Основных Фондов» (фрагмент):

Код Основных Фондов

Описание Основных Фондов

Код типа Основных Фондов

Номер Модели

Серийный Номер

Штрих-код

Дата Приобретения

Цена Покупки

Срок аморти

зации

Сумма Страховки

Код типа основных фондов

Тип основных фондов

1

Персональный компьютер

2

12344111

01.01.1994

2 500,00р.

5

100,00р.

2

Компьютер

4

Лазерный принтер

3

ALW4

4556544-9

04.01.1994

1 500,00р.

5

0,00р.

3

Принтер

6

Персональный компьютер

2

ATL2400

23456789

01.02.1994

1 800,00р.

5

0,00р.

2

Компьютер

Результат выполнения операции селекции – выбора строк по принадлежности значений поля «Тип Основных Фондов» значению «Компьютер» и поля «Сумма Страховки» - значению 0,00р. :

Код Основных Фондов

Описание Основных Фондов

Код типа Основных Фондов

Номер Модели

Серийный Номер

Штрих-код

Дата Приобретения

Цена Покупки

Срок аморти

зации

Сумма Страховки

Код типа основных фондов

Тип основных фондов

6

Персональный компьютер

2

ATL2400

23456789

01.02.1994

1 800,00р.

5

0,00р.

2

Компьютер

Результат выполнения операции проекции (фрагмент):

Код Основных Фондов

Описание Основных Фондов

Номер Модели

Серийный Номер

Штрих-код

Дата Приобретения

Цена Покупки

Срок аморти

зации

Сумма Страховки

Тип основных фондов

6

Персональный компьютер

ATL2400

23456789

01.02.1994

1 800,00р.

5

0,00р.

Компьютер

Полный вариант запроса на выборку сведений о незастрахованных компьютерах.

SELECT [Основные фонды].КодОсновныхФондов, [Основные фонды].ОписаниеОсновныхФондов, [Основные фонды].НомерМодели, [Основные фонды].СерийныйНомер, [Основные фонды].[Штрих-код], [Основные фонды].ДатаПриобретения, [Основные фонды].ЦенаПокупки, [Основные фонды].СрокАмортизации, [Основные фонды].СуммаСтраховки, [Типы фондов].ТипОсновныхФондов

FROM [Типы фондов] RIGHT JOIN [Основные фонды] ON [Типы фондов].КодТипаОсновныхФондов = [Основные фонды].КодТипаОсновныхФондов

WHERE ((([Основные фонды].СуммаСтраховки)=0) AND (([Типы фондов].ТипОсновныхФондов)="Компьютер"));

Задача 4.5

Получить сведения о затратах по незавершенным на сегодняшнее число проектам с партнерами из Германии, включая стоимость и продолжительность.

Решение

Реквизиты «Описание затрат», «Оценочная стоимость», «Дата начала проекта», «Дата завершения проекта» являются обязательным по условию задачи, остальные реквизиты используются в процедурах профилизации, сегментации и связи.   Исходя из результатов анализа информационной потребности, определяем состав и структуру требуемого сообщения S(Сведения о затратах по незавершенным на сегодняшнее число проектам с партнерами из Германии, включая стоимость и продолжительность)

S(Затраты.КодЗатрат, Затраты.ОписаниеЗатрат, Проекты.НазваниеПроекта, Партнеры.Страна, Проекты.ОценочнаяСтоимость, Проекты.ДатаНачалаПроекта, Проекты.ДатаЗавершенияПроекта).

Поскольку сведения о затратах находятся в таблице  Затраты, сведения о проектах в таблице Проекты, а сведения о партнерах в таблице Партнеры, в запросе необходимо использовать таблицы Затраты, Проекты и Партнеры. Данные таблицы образуют часть схемы данных, используемую для решения задачи, поэтому других таблиц на входе процесса нет.

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

Получение выходного сообщения позволит уменьшить трудозатраты на выборку сведений о затратах по незавершенным на сегодняшнее число проектам с партнерами из Германии, включая стоимость и продолжительность.  Анализ данных о суммах затрат и назначении затрат позволит оценить результаты реализации бизнес-стратегии компании.

С позиций потребителя-пользователя запрос можно охарактеризовать как простой с поэтапным потреблением информации. Для работы с данными результирующая таблица может быть экспортирована в Excel. При реализации в Access данный запрос может быть запросом на выборку. При ведении истории запрос является хранимой процедурой. Он исполняется по мере возникновения потребности в информации в определенной динамике.

 В процессе решения задачи с использованием SQL-проекта NorthwindCS применяется двухуровневая архитектура «клиент/сервер», вариант реализации технологии «клиент/сервер» DBS. В процессе решения задачи с использованием *.mdb-файла применяется RDA-вариант реализации технологии «клиент/сервер».

Подготовка запроса в Access с использованием *.mdb-файла осуществляется с использованием Конструктора, поскольку все данные находятся  связанных между собой таблицах. При формировании запроса автоматически генерируется SQL-код. SQL-запрос передается серверу, который возвращает клиенту результирующую таблицу. Выполнение процедур создания и использования запроса осуществляется на рабочей станции и на сервере сети.

Таблица Партнеры  имеет простой ключ «КодКлиента», таблица Проекты – простой ключ «КодПроекта», а таблица Затраты – простой ключ «КодЗатрат».  Таблица Партнеры является главной по отношению к таблице Проекты, а таблица Проекты является главной по отношению к таблице Затраты.  Тип связи «один-ко-многим». Связь по полю «КодКлиента» и по полю «КодПроекта» (ключи связи). Целостность по значениям определяется отсутствием в таблице Проекты значений поля «КодКлиента», которых нет в таблице Партнеры и отсутствием значений поля «КодПроекта» в таблице Затраты, которых нет в таблице Проекты. Значения поля «КодКлиента» в таблице Проекты обновляются автоматически при изменении соответственно значений поля «КодКлиента» в таблице Партнеры и значения поля «КодПроекта» в таблице Заказы обновляются автоматически при изменении соответственно значений поля «КодПроекта» в таблице Проекты.

Процедура реляционной обработки данных выполняется вручную. Представляем значения исходных данных в таблицах.

Таблица Проекты (фрагмент):

Код проекта

Название проекта

Код клиента

Оценочная стоимость

Дата начала проекта

Дата завершения проекта

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

4

KLMN

2

28 000,00р.

01.02.1994

31.03.1995

Таблица Заказы (фрагмент):

Код затрат

Код проекта

Описание затрат

1

1

Поездки за этот период

2

1

Фотокопии

4

1

Поездки за этот период

5

4

Поездки за этот период

Таблица Партнеры (фрагмент):

Код клиента

Страна

2

Россия

3

Германия

Результат выполнения реляционной операции произведения (фрагмент):

Код затрат

Код проекта

Описание затрат

Код клиента

Страна

Код проекта

Название проекта

Код клиента

Оценочная стоимость

Дата начала проекта

Дата завершения проекта

1

1

Поездки за этот период

2

Россия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

1

1

Поездки за этот период

2

Россия

4

KLMN

2

28 000,00р.

01.02.1994

31.03.1995

1

1

Поездки за этот период

3

Германия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

1

1

Поездки за этот период

3

Германия

4

KLMN

2

28 000,00р.

01.02.1994

31.03.1995

2

1

Фотокопии

2

Россия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

2

1

Фотокопии

2

Россия

4

KLMN

2

28 000,00р.

01.02.1994

31.03.1995

2

1

Фотокопии

3

Германия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

2

1

Фотокопии

3

Германия

4

KLMN

2

28 000,00р.

01.02.1994

31.03.1995

4

1

Поездки за этот период

2

Россия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

4

1

Поездки за этот период

2

Россия

4

KLMN

2

28 000,00р.

01.02.1994

31.03.1995

4

1

Поездки за этот период

3

Германия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

4

1

Поездки за этот период

3

Германия

4

KLMN

2

28 000,00р.

01.02.1994

31.03.1995

5

4

Поездки за этот период

2

Россия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

5

4

Поездки за этот период

2

Россия

4

KLMN

2

28 000,00р.

01.02.1994

31.03.1995

5

4

Поездки за этот период

3

Германия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

5

4

Поездки за этот период

3

Германия

4

KLMN

2

28 000,00р.

01.02.1994

31.03.1995

Результат выполнения реляционной операции соединения – сцепления строк с совпадающими значениями поля «Код Клиента» и «Код Проекта» (фрагмент):

Код затрат

Код проекта

Описание затрат

Код клиента

Страна

Код проекта

Название проекта

Код клиента

Оценочная стоимость

Дата начала проекта

Дата завершения проекта

1

1

Поездки за этот период

3

Германия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

2

1

Фотокопии

3

Германия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

4

1

Поездки за этот период

3

Германия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

5

4

Поездки за этот период

2

Россия

4

KLMN

2

28 000,00р.

01.02.1994

31.03.1995

Результат выполнения операции селекции – выбора строк по принадлежности значений поля «Страна»  значению «Германия» и значений поля «Дата завершения проекта» - значению большему, чем значение текущей даты, возвращаемой выражением Date():

Код затрат

Код проекта

Описание затрат

Код клиента

Страна

Код проекта

Название проекта

Код клиента

Оценочная стоимость

Дата начала проекта

Дата завершения проекта

1

1

Поездки за этот период

3

Германия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

2

1

Фотокопии

3

Германия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

4

1

Поездки за этот период

3

Германия

1

ABC

3

30 000,00р.

11.12.1994

31.05.2005

Результат выполнения операции проекции (фрагмент):

Код затрат

Описание затрат

Название проекта

Страна

Оценочная стоимость

Дата начала проекта

Дата завершения проекта

1

Поездки за этот период

ABC

Германия

30 000,00р.

11.12.1994

31.05.2005

2

Фотокопии

ABC

Германия

30 000,00р.

11.12.1994

31.05.2005

4

Поездки за этот период

ABC

Германия

30 000,00р.

11.12.1994

31.05.2005

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

SELECT Затраты.КодЗатрат, Затраты.ОписаниеЗатрат, Проекты.НазваниеПроекта, Партнеры.Страна, Проекты.ОценочнаяСтоимость, Проекты.ДатаНачалаПроекта, Проекты.ДатаЗавершенияПроекта

FROM (Партнеры INNER JOIN Проекты ON Партнеры.КодКлиента = Проекты.КодКлиента) INNER JOIN Затраты ON Проекты.КодПроекта = Затраты.КодПроекта

WHERE (((Партнеры.Страна)="Германия") AND ((Проекты.ДатаЗавершенияПроекта)>Date()));

Задача 6.6

Сравнить данные о продажах по бумагам. По какой бумаге объем продаж максимален?

Решение

  Реквизит «Наименование бумаги» является обязательным по условию задачи, остальные реквизиты используются в процедурах профилизации, сегментации и связи. Исходя из результатов анализа информационной потребности, определяем состав и структуру требуемого сообщения S(Бумага, по которой объем продаж максимален)

S([Заявки на продажу].КодБум, Бумаги.НаимБум, Sum([Заявки на продажу].[Объем заявкиПрНач]) AS [Sum-Объем заявкиПрНач]).

Определяем состав полей и таблиц, используемых в запросе из схемы № 6 (база данных Бумаги). Представляем в графическом виде обобщенную функционально-технологическую схему задачи (рис.5).

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

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

Получение выходного сообщения позволит уменьшить трудозатраты на выборку данных о бумаге, по которой объем продаж максимален.  

С позиций потребителя-пользователя запрос можно охарактеризовать как простой с поэтапным потреблением информации. Для работы с данными результирующая таблица может быть экспортирована в Excel. При реализации в Access данный запрос может быть запросом на выборку. При ведении истории запрос является хранимой процедурой. Он исполняется по мере возникновения потребности в информации в определенной динамике.

 В процессе решения задачи с использованием SQL-проекта NorthwindCS применяется двухуровневая архитектура «клиент/сервер», вариант реализации технологии «клиент/сервер» DBS. В процессе решения задачи с использованием *.mdb-файла применяется RDA-вариант реализации технологии «клиент/сервер».

Подготовка запроса в Access с использованием *.mdb-файла осуществляется с использованием Конструктора, поскольку все данные находятся  связанных между собой таблицах. При формировании запроса автоматически генерируется SQL-код. SQL-запрос передается серверу, который возвращает клиенту результирующую таблицу. Выполнение процедур создания и использования запроса осуществляется на рабочей станции и на сервере сети.

Таблица Бумаги  имеет простой ключ «КодБум», а таблица Заявки на продажу – простой ключ «КодЗаявкиПр».  Таблица Бумаги является главной по отношению к таблице Заявки на продажу.  Тип связи «один-ко-многим». Связь по полю «КодБум» (ключ связи). Целостность по значениям определяется отсутствием в таблице Заявки на продажу значений поля «КодБум», которых нет в таблице Бумаги. Значения поля «КодБум» в таблице Заявки на продажу обновляются автоматически при изменении соответственно значений поля «КодБум» в таблице Бумаги.

Процедура реляционной обработки данных выполняется вручную. Представляем значения исходных данных в таблицах.

Таблица Бумаги (фрагмент):

Код бумаги

Наименование бумаги

101

ОАО "Автоматика-Север"

201

Красная шапочка

301

Индиго-банк

Таблица Типы (фрагмент):

Номер Заявки Продажи

Код бумаги

Объем заявки

1

101

200

2

301

100

3

201

10

4

201

300

Результат выполнения реляционной операции произведения (фрагмент):

Код бумаги

Наименование бумаги

Номер Заявки Продажи

Код бумаги

Объем заявки

101

ОАО "Автоматика-Север"

1

101

200

201

Красная шапочка

1

101

200

301

Индиго-банк

1

101

200

101

ОАО "Автоматика-Север"

2

301

100

201

Красная шапочка

2

301

100

301

Индиго-банк

2

301

100

101

ОАО "Автоматика-Север"

3

201

10

201

Красная шапочка

3

201

10

301

Индиго-банк

3

201

10

101

ОАО "Автоматика-Север"

4

201

300

201

Красная шапочка

4

201

300

301

Индиго-банк

4

201

300

Результат выполнения реляционной операции соединения – сцепления строк с совпадающими значениями поля «Код Бумаги» (фрагмент):

Код бумаги

Наименование бумаги

Номер Заявки Продажи

Код бумаги

Объем заявки

101

ОАО "Автоматика-Север"

1

101

200

301

Индиго-банк

2

301

100

201

Красная шапочка

3

201

10

201

Красная шапочка

4

201

300

Результат выполнения операций группировки и суммирования по полю «Объем заявки» для каждой отдельной бумаги и последующего выполнения операции TOP 1 – выбора первой строки из списка, отсортированного по убыванию (с помощью операции DESC) поля «Sum-Объем заявкиПрНач» (суммарное значение объема для каждой бумаги по заявкам на продажу), т.е. выбор максимального суммарного значения:

Код бумаги

Наименование бумаги

Sum-Объем заявкиПрНач

201

Красная шапочка

310

Результат выполнения операции проекции (фрагмент):

Наименование бумаги

Sum-Объем заявкиПрНач

Красная шапочка

310

Полный вариант запроса на выборку бумаги, по которой объем продаж максимален.

SELECT DISTINCTROW TOP 1  Бумаги.НаимБум, Sum([Заявки на продажу].[Объем заявкиПрНач]) AS [Sum-Объем заявкиПрНач]

FROM Бумаги INNER JOIN [Заявки на продажу] ON Бумаги.КодБум = [Заявки на продажу].КодБум

GROUP BY [Заявки на продажу].КодБум, Бумаги.НаимБум

ORDER BY Sum([Заявки на продажу].[Объем заявкиПрНач]) DESC;

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

1.     Информационные системы в экономике / Под ред. В.Дика. – М.: Финансы и статистика,1996. -272 с.

2.     Информатика: Учебник / Под ред. проф. Н.В. Макаровой. – М.: Финансы и статистика, 1998. – 768 с.

3.     Карпова Т. Базы данных: модели, разработка, реализация. – СПб.: Питер, 2001. – 304 с.

4.     Острейковский В. А. Информатика. -  М.: Высшая школа, 1999. – 510 с.

5.     Робинсон С. Microsoft Access 2000. – СПб.: Питер, 2001. – 512