WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!


Pages:     | 1 || 3 | 4 |   ...   | 9 |

6. Определить чем отличаются индексы Инд, Инд1, Инд2 (обратите внимание на «Свойства индекса») для каждого из индексов.

7.Удалить индекс Инд1.

(В окне «Индексы» (таблице индексов для конкретной таблицы) выделить индекс и нажать клавишу «Del»).

Объединение таблиц в схему данных Для того чтобы было удобно просматривать, создавать, удалять и модифицировать связи между таблицами, в Microsoft Access используется схема данных.

Рис.5. Пример схемы данных Чтобы открыть схему данных, необходимо выполнить команду меню «Сервис» _ пункт «Схема данных» (Tools, Relationships). По умолчанию схема данных будет содержать все таблицы со связями.

Чтобы добавить в схему данных таблицу, у которой связи еще не установлены, следует щелкнуть правой кнопкой мыши на свободном пространстве схемы данных и из контекстного меню выбрать команду «Добавить таблицу» (Show table).

В диалоговом окне «Добавление таблицы» (Show table) раскрыть вкладку «Таблицы» (Tables), выбрать из списка таблицу и нажать кнопку «Добавить» (Add) (рис.6). Затем закрыть диалоговое окно по кнопке «Закрыть».

Рис.6. Добавление таблицы в схему данных Чтобы убрать какую-либо таблицу из схемы данных, необходимо щелкнуть левой кнопкой мыши на любом месте этой таблицы и нажать клавишу «Delete» (удаление таблицы из схемы данных не означает удаление ее из базы данных).

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

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

После этого появится диалоговое окно «Изменение связей» (Edit Relationships) Рис.7. Изменение связей между таблицами Когда открыто окно «Схема данных» (Relationships) можно изменить связь из меню «Связи» _ пункт «Измененить связь» (рис. 8).

Рис.8. Изменение связей между таблицами Режим обеспечения целостности данных для конкретной связи можно включить, если выполнены следующие условия:

• поле связи главной таблицы является первичным ключом или имеет уникальный индекс;

• связанные поля имеют один и тот же тип данных;

• обе связанные таблицы принадлежат одной базе данных Access.

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

В том случае, когда эти режимы не включены, а режим обеспечения целостности данных включен, MS Access не позволит изменить значение в ключевом поле главной таблицы, а также удалить запись в главной таблице, если в подчиненной таблице имеются данные, связанные с этой записью.

Если включен режим обеспечения целостности данных, то MS Access изобразит на конце линии, соответствующей главной таблице, цифру 1. На другом конце линии, соответствующем подчиненной таблице, будет изображен символ бесконечности для связи типа «один-ко-многим» и цифра 1 для связи типа «один-к-одному».

Чтобы изменить существующую связь между таблицами следует щелкнуть левой кнопкой мыши на линии связи и нажать на правую кнопку мыши (рис. 9).

Рис.9. Изменение существующей связи между таблицами Чтобы изменить параметры объединения таблиц следует в диалоговом окне «Изменение связей» нажать на кнопку «Объединение…», выбрать вариант объединения и нажать на кнопку «ОК».

Рис.10. Изменить параметры объединения 1. Создать с помощью конструктора таблицу Дети:

Имя поля Тип данных Свойства поля Id счетчик СотрудникId числовой Имя текст 30 символов Фамилия текст 30 символов ДатаРождения дата/время средний формат даты «ОК».

2. Заполнить таблицу тремя записями.

В одной из записей поле СотрудникId сделать на 1 больше, чем максимальное значения поля СотрудникId в таблице Сотрудники.

3. Меню «Сервис» _ пункт «Схема данных». Добавить в схему данных таблицы Сотрудники и Дети.

4. Связать эти таблицы по полю СотрудникId (одно поле на другое перенести мышью).

Выбрать обеспечение целостности данных, кнопка «Создать». Что происходит Если вы правильно выполнили все в пункте 2 (т.е. в поле СотрудникId таблицы Дети внесли значение отличное от любого значения поля СотрудникId таблицы Сотрудники), то появится сообщение, что ваши данные нарушают целостность данных. Измените значение поля СотрудникId таблицы Дети на допустимое и повторите пункт 4.

5. Удалить из таблицы сотрудники запись, на которую ссылается запись из таблицы Дети. Что происходит (MS Access поддерживает целостность данных).

6. В режиме конструктора в таблице Сотрудники измените тип поля СотрудникId на числовой. Что происходит (MS Access следит за установленными связями). Тип любого другого поля, которое не задействовано в связи изменить можно (если в это поле не вводили значения предыдущего типа или предыдущий тип MS Access может преобразовать в текущий тип). Удалите связь в схеме данных, а потом в таблице Сотрудники измените тип поля СотрудникId на числовой. Поле оставьте ключевым. Еще раз выполните пункт 4.

7. Измените значение поля СотрудникId таблицы Сотрудники в записи, на которую ссылается запись из таблицы Дети. Что происходит (MS Access поддерживает целостность данных).

8. В схеме данных выделить связь (1 раз нажать на левую кнопку мыши). Нажать на правую кнопку мыши, выбрать Изменить связь, добавить каскадное удаление. В таблице Сотрудники удалить запись, на которую ссылается запись из таблицы Дети. Что происходит (В таблице Дети должны удалиться записи, ссылающиеся на запись в таблице Сотрудники).

9. В схеме данных выделить связь (1 раз нажать на лев. Кнопку мыши). Нажать на правую кнопку мыши, выбрать «Изменить связь», выбрать каскадное обновление, кнопка «Создать». В таблице Сотрудники изменить значение поля СотрудникId в записи, на которую ссылается запись из таблицы Дети. Что происходит в таблице Дети (В таблице Дети значение поля СотрудникId в записях, ссылающихся на изменяемую запись должно измениться).

10. Удалить связь между таблицами в схеме данных (выделить связь, клавиша «Delete»).

11. Удалить таблицу из схемы данных (выделить таблицу, клавиша «Delete»).

Импорт таблиц Таблицу можно создать, импортируя данные из файлов других форматов.

1. Из базы данных Борей (Борей.mdb или nwind.mdb) импортировать таблицу Сотрудники. Меню «Файл» _ пункт «Внешние данные» _ «Импорт». Далее выбрать папку, тип файла, имя файла, кнопка «Импорт». В окне «Импорт объектов» на закладке «Таблицы» выделить импортируемые таблицы и нажать кнопку «ОК» (рис. 11-12).

Рис.11. Импорт данных Рис.12. Выбор таблиц для импорта Меню «Сервис» _ пункт «Схема данных» Экспорт таблиц MS Access позволяет экспортировать таблицу Access в другую базу данных (типа Access, dBase, FoxPro, Paradox) или файл другого формата (текстовый, документ Word, таблица Excel, документ HTML).

1. Экспортировать таблицу Сотрудники1 во внешний файл данных формата Paradox.

Выбрать таблицу в базе данных, меню «Файл» _ пункт «Экспорт», далее выбрать тип файла для сохранения, кнопка «Экспорт» (рис. 13-14).

Рис.13. Экспорт таблицы Рис.14. Продолжение экспорта таблицы Присоединение таблиц При импорте данных создается их копия в новой таблице текущей БД. После этого всякая связь с внешними данными теряется. Связывание (установление связи с внешними данными) позволяет использовать данные из внешнего файла (баз данных, электронных таблиц или текстовых файлов), не импортируя их в MS Access, и в этом случае пользователь всегда имеет дело с самой «свежей» информацией. Формат данных файла-источника не меняется и его можно продолжать использовать в приложении, в котором он был создан.

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

Однако это может привести к определенному снижению быстродействия при работе с данными, так как MS Access максимально эффективно работает со своей копией данных и в «родном» формате.

1. Присоединить таблицу Сотрудники1 формата Paradox.

Меню «Файл» _ пункт «Внешние данные» _ «Связь с таблицами», выбрать файл соответствующего формата, нажать на кнопку «Связь».

Лабораторная работа №Работа с запросами Цель: Приобрести умения и навыки при работе с запросами. Научиться создавать запросы с помощью конструктора, познакомиться с различными видами запросов.

1. Импортировать все таблицы из базы Борей.mdb или nwind.mdb в свою базу данных.

С помощью запроса можно:

• отобрать поля (взять часть полей из одной или нескольких таблиц), • отобрать записи (включить условия), • отсортировать данные, • задать вопрос о данных, хранящихся в разных таблицах (Access, FoxPro, Paradox, dBase, Btrieve, SQL), • выполнить вычисления, • использовать запрос в качестве источника данных для форм, отчетов и других запросов, • изменять табличные данные (обновлять, удалять, добавлять, создавать новые таблицы).

MS Access позволяет выполнять следующие типы запросов:

• запрос на выборку;

• запрос на создание таблицы;

• запрос на обновление;

• запрос на добавление записей;

• запрос на удаление записей;

• перекрестный запрос.

Чтобы создать новый запрос следует выбрать объект «Запросы» и щелкнуть по кнопке «Создать» (рис.15). MS Access открывает окно «Новый запрос» и предлагает несколько способов создания запроса (рис.16). Мы будем создавать и работать с запросами в режиме конструктора.

Рис.15. Создание запросов Рис.16. Разные способы создания запроса Создание запросов на выборку Далее на экране появится пустой бланк запроса с типом «Запрос на выборку» и окно «Добавление таблицы» для выбора таблиц или запросов, на основе которых будет построен новый запрос (рис. 17). Следует выбирать имена таблиц или запросов и нажимать на кнопку «Добавить». Закрыть окно добавления таблиц по кнопке «Закрыть».

Рис.17. Добавление таблиц в бланк запроса После того как таблицы будут добавлены, они появятся в бланке запроса (рис.18).

Рис.18. Добавили таблицы в бланк запроса Далее в заданиях будет рассказано, как создавать запросы соответствующих типов.

2. Создать Запрос для отражения информации о том «Какие поставщики какие товары поставляют».

Объект «Запросы», кнопка «Создать», выбрать Конструктор. Добавить таблицы Поставщики и Товары по кнопке «Добавить». Закрыть окно добавления таблиц.

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

Если таблицы завязаны в схему данных, то линия объединения появится автоматически.

MS Access сам может объединять таблицы автоматически, если есть поля с одинаковыми именами и типами. !!!Внимание. Проверяйте связи, если поля разного смысла названы одинаково.

Выбрать поля Название (табл. Поставщики), Марка и КодТипа ( табл. Товары). раза щелкнуть мышью на имени поля или перенести мышью имя поля в нижнюю часть бланка запроса.

Просмотреть запрос в режиме таблицы (меню «Вид» _пункт «Режим таблицы» или выбрать вид режим таблицы на панели инструментов ).

Сохранить запрос (просто закрыть окно с запросом). Дать название запросу ПоставщикиТоваров.

3. Изменить ширину поля Марка (мышью сдвинув границу поля названия или через пункт меню «Формат», который появляется, если вы переключили запрос в режим таблицы) так, чтобы часть полей стали не видны в запросе.

4. Закрепить столбец Название (выделить столбец - 1 раз щелкнуть мышью на имени столбца) и из меню «Формат» выбрать пункт «Закрепить столбцы». Переместиться на поле КодТипа в любой записи. Освободить столбец Название.

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

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

7. В запросе ПоставщикиТоваров переименовать поле Название в ИмяПоставщика.

В строке «Поле» в колонке Название ввести:

ИмяПоставщика: Название Просмотреть запрос в режиме таблицы. Что произошло с именем поля 8. В запросе ПоставщикиТоваров отсортировать поле ИмяПоставщика по возрастанию. В строке «Сортировка» выбрать «по возрастанию». Просмотреть запрос в режиме таблицы. Поле КодТипа отсортировать «по убыванию». Просмотреть запрос в режиме таблицы. Обратите внимание на то, что в этом поле КодТипа у одного и того же поставщика как бы нет сортировки «по убыванию».

9. Открыть таблицу Товары в режиме конструктора. Найти поле КодТипа. Какого оно типа (числового). Обратите внимание, что данное поле в свойстве поля «Подпись» имеет значение Тип. Переключитесь в режим таблицы. Найдите поле КодТипа. Нашли Это поле в режиме таблицы имеет подпись Тип. Какого типа поле Тип по данным (строкового) Почему Переключитесь в режим конструктора, выберите поле и в свойствах поля переключитесь на закладку «Подстановка». Реально это поле числовое и сортировка произошла по числам, а не по подстановочным значениям.

10.Создать запрос, позволяющий «Найти клиентов, которые ничего не заказали».

В запросе связать таблицы Клиенты и Заказы. Выбрать поля Название (из Клиенты) и КодСотрудника, ДатаРазмещения (из Заказы). Использовать параметры объединения (всех из Клиенты и только тех и из Заказы, в которых связанные поля совпадают). Выбрать связь (линию, связывающую таблицы), 1 раз щелкнуть левой кнопкой мыши, 1 раз щелкнуть правой кнопкой мыши, выбрать «Параметры объединения», определить тип объединения.

В строке «Условие отбора» для поля КодСотрудника ввести null. Просмотреть запрос в режиме таблицы. Сохранить запрос под именем КлиентыБезЗаказов.

Для поиска полей, которые содержат значения, следует использовать not null или is not null или not is null.

Для поиска полей, которые не содержат значений, следует использовать null или is null.

11. Аналогичный запрос можно создать и другим способом. Это задание можно будет выполнить, если на вашем компьютере установлены дополнительные возможности Мастера MS Access!!! Выполнить: Объект «Запросы», кнопка «Создать», выбрать «Записи без подчиненных». Выбрать таблицу Клиенты, кнопка «Далее», выбрать таблицу Заказы, кнопка «Далее», связать таблицы по полю КодКлиента, кнопка «Далее», выбрать поля Название и ОбращатьсяК, кнопка «Далее», следовать за мастером запросов. Просмотреть запрос в режиме таблицы и конструктора. Сохранить запрос.

Для задания диапазона значений в окне конструктора запросов могут быть использованы операторы > (больше), >= (не менее), < (меньше), <= (не более) и Between (Выражение1) and (Выражение2) как с текстовыми и числовыми полями, так и с полями дат). Для ввода условия выборки можно использовать окно «Построитель выражений» ( ).

12. Создать запрос, который позволяет «Найти клиентов, разместивших заказ после января 1995г. » Создать копию запроса КлиентыБезЗаказов (меню «Файл» _ пункт «Сохранить как») и откорректировать новый запрос. В строке «Условие отбора» для поля ДатаРазмещения ввести >01/01/1995.

13. Создать запрос, который позволяет «Найти клиентов, разместивших заказы после января 1995г, чей заказ исполнен меньше, чем за 10 дней».

Создать копию запроса КлиентыБезЗаказов и откорректировать новый запрос.

Добавить поле Дата исполнения. В строке «Условие отбора» для поля ДатаИсполнения ввести <#01/01/1995#+10.

14. Создать запрос, который позволяет «Найти клиентов, разместивших заказ между января 1995г и 31 января 1995г».

Использовать оператор Between (Выражение1) and (Выражение2) (смотри help).

15. Создать запрос, который позволяет «Вычислить на какую сумму было заказано каждого товара по каждому заказу».

Pages:     | 1 || 3 | 4 |   ...   | 9 |






© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.