Сдам Сам

ПОЛЕЗНОЕ


КАТЕГОРИИ







Создание таблиц базы данных с адресным хранением





 

Создание файла базы данных.

Отыщите в вашей рабочей папке файл СКЛАД-1-5.mdb и щелкните на нем правой кнопкой мыши. В появившемся контекстном меню выберите команду Копировать. Перейдите в любую другую папку и вставьте в нее копию файла СКЛАД-1-5.mdb. Переименуйте файл СКЛАД-1-5.mdb в СКЛАД-1-5-9.mdb. Щелкните по файлу СКЛАД-1-5-9.mdb правой кнопкой мыши и выберите команду Вырезать. Перейдите в свою рабочую папку и вставьте в нее файл СКЛАД-1-5-9.mdb.

В результате в вашей рабочей папке появилось два одинаковых файла с разными именами СКЛАД-1-5.mdb и СКЛАД-1-5-9.mdb.

 

Преобразование файла СКЛАД-1.5.9.mdb

Откройте файл СКЛАД-1-5-9.mdb и в окне базы данных откройте вкладку Таблицы. Откройте окно Схема данных, показанное на рис. 2.5. Подведите указатель мыши на любую линию связи и нажмите правую кнопку мыши. В появившемся контекстном меню выберите команду Удалить. Линия связи исчезнет. Удалите все линии связи. Перейдите в окно базы данных и удалите таблицы ПРОИЗВ и ПОТРЕБ. Студенты с номерами по журналу 1 ¾ 20 также как и нашем примере удаляют таблицы ПРОИЗВ и ПОТРЕБ. Студенты с номерами по журналу 21 ¾ 24 удаляют таблицу ПОТРЕБ, открывают таблицу ЗАВОД и удаляют поля Н_СТРМ и ПРОИЗ. Далее вводится таблица трехсторонней связи З_СМ_С. Для нашего примера эта таблица показана на рис. 1.10. Добавьте поле Код с типом данных Счетчик и сделайте его ключевым. Перейдите в окно Схема данных и вызовите таблицу З_СМ_С. Свяжите одноименные поля Н_ЗАВ, Н_СТРМ и Н_СТР таблиц ЗАВОД, СТРОЙМАТ, СТРОЙКА и З_СМ_С. В результате схема данных примет вид, показанный на рис. 3.1.

Рис. 3.1.

 

Контрольные вопросы

1. Как ввести пустую таблицу и заполнить ее данными?

2. Как связать две таблицы?

3. Что означает опция Обеспечение целостности данных в окне Связи?

4. Расскажите о типах и свойствах полей, используемых в Access?

5. Постройте таблицу триарной связи в соответствии с заданной ER-диаграммой экземпляров с адресным хранением.

Работа с запросами в среде MS Access

Запросы выбора

Пусть нужно узнать телефоны директоров заводов, выпускающих строительные материалы с единичным весом от 1 до 1000 кг. Эта информация содержится в таблицах ЗАВОД и СТРОЙМАТ. Для их выбора в окне базы данных щелкнем по закладке Запросы, а затем на кнопке Создать. Откроется окно Новый запрос. В этом окне нажмем на кнопку Конструктор, а затем на кнопке ОК. Появится окно конструктора запроса, а на его фоне окно Добавление таблицы. В этом окне щелчком мыши подсвечиваем имя таблицы ЗАВОД. Нажмем кнопку Добавить. Появится одностолбцовый список полей таблицы ЗАВОД. Аналогично включим таблицу ПРОИЗВ и СТРОЙМАТ. Убедимся, в наличии линий связей между таблицами.

Включим в состав запроса поле ТЛФ_Д из таблицы ЗАВОД и поле ВЕС из таблицы СТРОЙМАТ двойным щелчком по именам этих полей.

Установка условий отбора строк осуществляется следующим образом: в нижней части окна (она называется спецификацией запроса), в таблице щелкнем в клетке, находящейся в строке Условия отбора и в столбце ВЕС. В этой ячейке появляется курсор. С клавиатуры вводим: Between 1 And 1000. Запустим запрос на выполнение. Для этого следует ввести команду Запрос / Запуск или нажать кнопку в пиктографическом меню с изображением восклицательного знака. Появится окно, в котором выведен результат выполнения запроса (выборка данных).

Сверим полученную выборку с таблицами ЗАВОД и СТРОЙМАТ базы данных. Убедившись в правильности выборки, сохраним запрос под именем ВЕС. Вид окна конструктора запросов для этого примера приведен на рис. 4.1

Рис. 4.1

Параметрические запросы

Превратим запрос, разработанный в предыдущем примере, в параметрический. Для этого в режиме конструктора в строке Условие отбора в колонке ВЕС спецификации запроса заменим выражение Between 1 And 1000 на выражение Between [Мин вес] And [Макс вес]. То есть, оставив символы Between и And на месте, заменили значения параметров (это числа 1 и 1000) на имена параметров (это текст в квадратных скобках). Затем из меню Запрос следует выбрать команду Параметры... Появляется диалоговое окно Параметры запроса, приведенное на рис. 4.2.

Рис. 4.2

В столбце Параметр следует повторить тот же текст, который был введен в спецификации запроса только без квадратных скобок. В столбце Тип данных вводится тип данных, поля ВЕС таблицы СТРОЙМАТ. Для ввода типа данных нужно щелкнуть в столбце тип данных и выбрать его из выпавшего списка.

При выполнении этого запроса сначала появится окно с названием параметра Мин вес, а затем окнос названием параметра Макс вес. В поле ввода этих окон следует ввести нужную цифру (значение параметра) и нажать кнопку ОК.

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

 

Перекрестные запросы

Представим в виде перекрестного запроса количество потребляемых стройками стройматериалов. Вся требуемая информация содержится в одной таблице ПОТРЕБ, которую и вводим в спецификацию запроса окна конструктора запросов. Из таблицы ПОТРЕБ выбираем все три поля: Н_СТРМ, Н_СТР и ПОТР. Вводим команду меню Запрос / Перекрестный. В спецификации запроса появляется строка Перекрестная таблица и строка Групповая операция. В строке Перекрестная таблица в колонке Н_СТРМ щелкаем мышью и в раскрывшемся списке указываем пункт Заголовки столбцов, это означает, что названия стройматериалов будут записаны в заголовках столбцов. В строке Перекрестная таблица в колонке Н_СТР щелкаем мышью и в раскрывшемся списке указываем пункт Заголовки строк, это означает, что названия строек будут записаны в заголовках строк.

В строке Перекрестная таблица щелкаем мышью в колонке ПОТР и в раскрывшемся списке вводим пункт Значение, что означает, что на пересечении строк с названиями строек и столбцов с названиями стройматериалов будут записаны соответствующие числа из колонки таблицы ПОТРЕБ базы данных.

В строке Групповая операция в колонке ПОТР щелкаем мышью. В появившемся выпадающем списке вводим вместо операции Группировка операцию Sum.

Вид окна конструктора запроса приведен на рис. 4.3.

Рис. 4.3.

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

 

 

Рис. 4.4

 

Групповые операции

Пусть требуется установить, какие строительные материалы, и в каких количествах выпускает каждый завод. Для этого в верхнюю часть окна конструктора запроса вызываем таблицы ЗАВОД, З_СМ_С, СТРОЙМАТ и выбираем поля Н_ЗАВ, ПРОИЗ, Н_СТРМ. Щелкаем кнопку å (групповые операции). В спецификации запроса появляется строка Групповая операция, а в ее всех столбцах по умолчанию введена групповая операция Группировка. Щелкнем на слове Группировка в столбце ПРОИЗ, а затем раскроем в этой клетке таблицы выпадающий список групповых операций. Выберем групповую операцию Sum. Вид окна конструктора запроса в этот момент показан на рис. 4.5.

Рис. 4.5

Щелкнем кнопку! (Запуск). Появится таблица, содержимое которой совпадает с таблицей связи ПРОИЗВ, показанной на рис. 1.6 для базы данных с обезличенным хранением. Сохраним запрос под именем ГР_ПРОИЗВОДСТВО. Тем самым, протестирована правая часть таблицы связи З_СМ_С. По аналогии, составьте запрос для тестирования правой части таблицы связи З_СМ_С и сохраните его под именем ГР_ПОТРЕБЛЕНИЕ.

Составьте запрос, в котором в спецификации (см. рис. 4.5) в поле (столбце) Н_СТРМ вместо групповой операции Группировка введена групповая операция Count. Сохраните его под именем ГР_Н_СТРМ.

Составьте запрос, в котором в спецификации (см. рис. 4.5) в поле (столбце) Н_ЗАВ вместо групповой операции Группировка введена групповая операция Count. Сохраните его под именем ГР_Н_ЗАВ.

Составьте запрос, в котором в спецификации (см. рис. 4.5) в полях (столбцах) Н_ЗАВ и Н_СТРМ вместо групповой операции Группировка введены групповые операция Count. Сохраните его под именем СУММА.

Объясните полученные результаты выполнения этих запросов.

4.5. Индивидуальные задания

1. Какую продукцию и в каком количестве производит каждый завод?

2. Какие стройматериалы произвел каждый завод, и на какую сумму?

3. Сколько видов стройматериалов выпускает каждый завод?

4. На какую сумму выпускает каждый завод всей продукции?

5. На какую сумму произвели продукции все заводы?

6. Какова цена (вес) выпущенных фундаментных блоков? (и любых других стройматериалов, указанных преподавателем).

7. Какой завод имеет максимальную сумму реализации всей продукции и чему равна эта сумма?

8. Какой стройматериал имеет максимальную сумму реализации и каким заводом он производится?

9. Найти адрес завода, выпускающего стройматериалы ценой более указанного числа Х. Число Х задавать в виде параметра.

10. На какую сумму выпустил каждых стройматериалов каждый завод. Запрос оформить в перекрестной форме.

11. Какая продукция и в каком количестве поступает на каждую стройку?

12. Какие стройматериалы закупила каждая стройка, и на какую сумму?

13. Сколько видов стройматериалов закупает каждая стройка?

14. На какую сумму закупает каждая стройка всех стройматериалов?

15. На какую сумму закупили стройматериалов все стройки?

16. Какова цена (вес) закупленных стройками фундаментных блоков? (и любых других стройматериалов, указанных преподавателем).

17. Какая стройка имеет максимальную сумму закупки стройматериалов и чему равна эта сумма?

18. Какой стройматериал имеет максимальную сумму закупки и какой стройкой он закупается?

19. Найти адрес стройки, потребляющей стройматериалы ценой более указанного числа Х. Число Х задавать в виде параметра.

20. На какую сумму каждых стройматериалов закупила каждая стройка. Запрос оформить в перекрестной форме.

21. Какая продукция, производится, каким заводом и какой стройкой потребляется? В каком количестве производится и потребляется?

22. На какую стройку поступает продукция, производимая заводом, указанным параметрически?

23. Какова разница стоимостей закупаемой у заводов и продаваемой стройкам всей продукции?

24. Для какой продукции разность стоимостей закупаемого у заводов и продаваемого стройкам объемов максимальна?

25. Какие заводы (название, адрес и номер телефона директора) являются поставщиками продукции для каждой стройки?

26. Для каждой стройки найти телефон директора завода, производящего для нее строительный материал.

 

Варианты индивидуальных заданий по запросам

Таблица 4.1.

Номера студентов по журналу Номера индивид заданий по БД с обезличенным хранением Номера индивид заданий по БД с адресным хранением
1, 4, 5, 6, 7, 10, 11, 13, 14, 16, 17, 19, 20 1 ¾ 11 1, 11, 21 ¾ 26
2, 3, 8, 9, 12, 15, 18, 21, 22, 23, 24 1, 11 ¾ 20

Результаты выполнения запросов 1 и 11 проверяются на соответствие с ER-диаграммой экземпляров для базы данных с обезличенным хранением. Результаты выполнения запроса 1 для базы данных с обезличенным хранением должны совпадать с результатами выполнения запроса 1 для базы данных с адресным хранением. Результаты выполнения запроса 11 для базы данных с обезличенным хранением должны совпадать с результатами выполнения запроса 11 для базы данных с адресным хранением. Результаты выполнения запроса 21 должны соответствовать трехсторонним связям ER-диаграммы экземпляров для базы данных с адресным хранением.

 

Контрольные вопросы

1. Как отбираются таблицы в запрос?

2. Сколько строк имеет объединенная таблица при объединении таблиц?

3. Какие строки таблиц будут потеряны при объединении их в запросе?

4. Как вводится условие?

5. Какой смысл имеют несколько условий в одном запросе?

6. Для чего служит строка Или в QBE-области конструктора запроса?

7. Что такое параметрические запросы и как их создать?

8. Что такое перекрестные запросы и как их создать?

9. Как создать запрос с групповыми операциями?

10. Какие групповые операции вы знаете?

11. Какой смысл имеет Групповая операция в нескольких полях?

12. Как найти сумму значений в поле всей таблицы?

 







ЧТО ПРОИСХОДИТ ВО ВЗРОСЛОЙ ЖИЗНИ? Если вы все еще «неправильно» связаны с матерью, вы избегаете отделения и независимого взрослого существования...

Что делает отдел по эксплуатации и сопровождению ИС? Отвечает за сохранность данных (расписания копирования, копирование и пр.)...

Что делать, если нет взаимности? А теперь спустимся с небес на землю. Приземлились? Продолжаем разговор...

ЧТО ТАКОЕ УВЕРЕННОЕ ПОВЕДЕНИЕ В МЕЖЛИЧНОСТНЫХ ОТНОШЕНИЯХ? Исторически существует три основных модели различий, существующих между...





Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:


©2015- 2024 zdamsam.ru Размещенные материалы защищены законодательством РФ.