Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
управление данными.doc
Скачиваний:
46
Добавлен:
11.03.2015
Размер:
1.51 Mб
Скачать

Удаление данных

Для удаления записей из таблицы используется команда DELETE.

Структура запросов на удаление аналогична структуре запросов на обновление.

Простое удаление

Пример 5.

Удалить все данные из таблицы Сессия

DELETE *

FROM сессия

Пример 6.

Удалить кафедру истории.

DELETE

FROM кафедры

WHERE название ='информатики'

При выполнении этого запроса может появиться следующее сообщение:

Рис. 6.1. Сообщение о возможном нарушении ссылочной целостности при удалении записи из таблицы

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

Рис. 6.2. Установление поддержания ссылочной целостности базы данных при удалении записей из таблицы Кафедры.

Для использования этой функции в свойствах связи между таблицами Кафедры и Преподаватели нужно установить каскадное удаление связанных записей. Теперь при удалении кафедры будут удаляться все преподаватели этой кафедры. Ссылочная целостность базы данных будет при этом сохранена.

Удаление с подзапросом

Удалить кафедру, если на которой не числится ни один преподаватель.

DELETE

FROM кафедры

WHERE NOT EXISTS

( SELECT код_кафедры

FROM преподаватели

WHERE кафедры.код=преподаватели.код_кафедры )

Содержание работы

  1. Выполните и сохраните в базе данных рассмотренные запросы.

  2. Создайте следующие запросы:

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

б) студентам, сдавшим на 3 более чем 2 экзамена снять стипендию

в) удалить студентов, не сдавших сессию.

Содержание отчета

  1. Запишите текст созданных запросов

  2. Приведите ответы на контрольные вопросы.

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

Будет ли работать следующий запрос?

DELETE

FROM преподаватели

WHERE NOT EXISTS ( SELECT код FROM кафедры

WHERE кафедры.код=преподаватели.код_кафедры )

Лабораторная работа № 7

Приложения архитектуры файл-сервер

Цель работы: Ознакомится с основными средствами MS Access для организации многопользовательского приложения архитектуры файл-сервер

Основные понятия

По умолчанию Access хранит все объекты данных и интерфейса в одном общем файле MDB. В случае небольшого однопользовательского приложения это удобно, но в многопользовательской среде такая структура приложения может сильно снизить его производительность. Каждый раз, когда пользователю понадобится какой-нибудь объект, например форма, Jet будет пересылать его по сети. В условиях реальной эксплуатации приложения, когда изменяются только данные, а все объекты интерфейса остаются неизменными, это ведет к неоправданному увеличению сетевого трафика. Чтобы этого избежать, базу данных Access можно разделить на две части: файл объектов данных, содержащий таблицы и файл объектов приложения, который содержит все остальные объекты – запросы, формы, отчеты, макросы, модули.

Отделение данных от приложения

Разделить базу данных можно с помощью команды Разделение баз данных подменю Служебные команды меню Сервис. После этого базу данных приложения ( со всеми объектами, кроме таблиц) нужно связать с таблицами из серверной базы данных с помощью команды Связь с таблицами подменю Внешние данные меню Файл. При создании связи с таблицами имя базы данных удобно задать в формате UNC, например, \\имяСервера\ИмяОбщейПапки\Данные.MDB. Далее копии файла объектов приложения размещаются на всех рабочих станциях, а на файл-сервере оставляется файл данных, т.е. базу данных, состоящую из одних таблиц.

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

У этого подхода имеются определенные преимущества:

  1. более высокая производительность (особенно пользовательского интерфейса);

  2. возможность создавать временные таблицы в базах данных, приложения на рабочих станциях;

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

  4. каждый пользователь может настроить пользовательский интерфейс в соответствии со своими индивидуальными потребностями.

В случае перемещения базы данных связи с таблицами необходимо обновлять. Это можно делать интерактивно с помощью Диспетчера связанных таблиц, вызываемого из меню Сервис Служебные программы.