Апрос на создание таблицы.

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

Обычно запрос на создание таблицы создается, когда необходимо скопировать данные или поместить их в архив. Предположим, что существует таблица (или несколько таблиц) с данными по продажам за прошедшие периоды, и эти данные нужно использовать в отчетах. Эти данные не изменяются, поскольку все сделки были совершены, по меньшей мере, день назад. Многократное выполнение запроса для извлечения данных требует значительного времени, особенно если запрос сложный, а хранилище данных имеет большой объем. Загрузив данные в отдельную таблицу и используя эту таблицу в качестве источника данных, можно снизить нагрузку и получить удобный архив данных. В процессе работы следует помнить, что данные в новой таблице являются копией исходных данных в определенный момент времени; они не имеют связи и не подключены к исходной таблице (или таблицам).

Процесс создания запроса на создание таблицы состоит из следующих основных этапов.

· Включите содержимое базы данных, если она не подписана или не находится в надежном расположении. Иначе нельзя будет запускать запросы на изменение (запросы на добавление, на обновление или на создание таблицы).

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

Дополнительные сведения о нормализации данных см. в статье Основные сведения о создании баз данных.

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

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

Дополнительные сведения о запросах на обновление см. в статье Создание запроса на обновление. Дополнительные сведения о запросах на добавление см. в статье Создание запроса на добавление.

апрос на создание таблицы. - student2.ru К НАЧАЛУ СТРАНИЦЫ

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

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

Включение содержимого базы данных

ПРИМЕЧАНИЕ. Выполните следующие действия только в том случае, если база данных не находится в надежном расположении и не подписана. Каждый раз при открытии такой базы данных отображается панель сообщений.

1. На панели сообщений нажмите кнопку Параметры.

2. В диалоговом окне Параметры безопасности Microsoft Office выберите параметр Включить это содержимое и нажмите кнопку ОК.

Если панель сообщений не отображается

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

Создание запроса на выборку

ПРИМЕЧАНИЕ. Если запрос на выборку, возвращающий нужные данные, уже создан, перейдите к следующему шагу.

1. На вкладке Создание в группе Другие щелкните Конструктор запросов.

апрос на создание таблицы. - student2.ru

2. В диалоговом окне Добавление таблицы дважды щелкните таблицы, из которых нужно получить данные. Каждая таблица отображается в окне в верхней части конструктора запросов. Нажмите кнопкуЗакрыть, когда закончите добавление таблиц.

3. В каждой таблице дважды щелкните поля, которые нужно использовать в запросе. Каждое поле появляется в пустой ячейке в строке Поле бланка запроса. На рисунке показан бланк с несколькими добавленными полями.

апрос на создание таблицы. - student2.ru

2. При необходимости добавьте выражения в строку Поле.

3. Можно также добавить любые условия отбора в строку Условия отбора бланка запроса.

4. Чтобы выполнить запрос и отобразить результаты в режиме таблицы, нажмите кнопку Выполнить апрос на создание таблицы. - student2.ru .

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

Преобразование запроса на выборку

1. Откройте запрос на выборку в режиме конструктора или перейдите в режим конструктора одним из следующих способов.

· Если запрос открыт в режиме таблицы, щелкните правой кнопкой мыши вкладку документа запроса и выберите команду Конструктор.

· Если запрос закрыт, в области переходов щелкните правой кнопкой мыши запрос и выберите в контекстном меню команду Конструктор.

2. На вкладке Конструктор в группе Тип запроса выберите команду Создание таблицы.

Откроется диалоговое окно Создание таблицы.

3. В поле Имя таблицы введите имя новой таблицы.

-или-

Щелкните кнопку раскрытия списка и выберите имя существующей таблицы.

4. Выполните одно из следующих действий.

· Поместите новую таблицу в текущую базу данных.

1. Выберите параметр Текущая база данных, если он еще не выбран, и нажмите кнопку ОК.

2. Нажмите кнопку Выполнить апрос на создание таблицы. - student2.ru , а затем нажмите кнопку Да для подтверждения операции.

ПРИМЕЧАНИЕ. При замене существующей таблицы эта таблица сначала удаляется и перед этим запрашивается подтверждение на удаление. Нажмите кнопку Да, а затем нажмите кнопку Да еще раз для создания новой таблицы.

· Поместите новую таблицу в другую базу данных.

1. Выберите параметр В другой базе данных.

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

-или-

Нажмите кнопку Обзор и в новом диалоговом окне Создание таблицы укажите расположение другой базы данных и нажмите кнопку ОК.

3. Нажмите кнопку ОК, чтобы закрыть первое диалоговое окно Создание таблицы.

4. Нажмите кнопку Выполнить апрос на создание таблицы. - student2.ru , а затем нажмите кнопку Да для подтверждения операции.

ПРИМЕЧАНИЕ. При замене существующей таблицы эта таблица сначала удаляется и перед этим запрашивается подтверждение на удаление. Нажмите кнопку Да, а затем нажмите кнопку Да еще раз для создания новой таблицы.

апрос на создание таблицы. - student2.ru К НАЧАЛУ СТРАНИЦЫ

Дополнительные сведения об условиях и выражениях запроса

При описании действий в данном разделе упоминаются условия и выражения. Условие запроса — это правило, определяющее запись, которую следует включить в запрос; условия используются, когда не все записи в определенном наборе данных должны отображаться. Например, условие отбора >25 AND <50возвращает значения больше 25 и меньше 50. Условие отбора "Чикаго" OR "Париж" OR "Москва"возвращает записи только для этих городов.

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

Выражение — это совокупность математических и логических операторов, констант, функций и имен полей, элементов управления и свойств, которая при вычислении дает единственное значение. Выражение используется, когда нужны данные, не содержащиеся непосредственно в таблице. Например, выражение[Цена]*[Количество] умножает значение поля «Цена» на значение поля «Количество». Выражения можно использовать самыми разными способами, и процедура их создания и применения может оказаться довольно сложной.

Дополнительные сведения о создании и использовании выражений см. в статье Создание выражений.

апрос на создание таблицы. - student2.ru К НАЧАЛУ СТРАНИЦЫ

Выполнение запроса, заблокированного из-за режима отключения содержимого

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

Если при попытке выполнить запрос на изменение ничего не происходит, проверьте, не появляется ли в строке состояния Access следующее сообщение:

Данное действие или событие заблокировано в отключенном режиме.

Если отображается это сообщение, выполните следующие действия.

Включите заблокированное содержимое.

· На панели сообщений нажмите кнопку Параметры.

Откроется диалоговое окно Параметры безопасности Microsoft Office.

· Установите переключатель в положение Включить это содержимое и нажмите кнопку ОК.

· Запустите запрос еще раз.

Если панель сообщений не отображается

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

Дополнительные сведения о режиме отключения содержимого и безопасности приложения Access см. в статье Защита базы данных Microsoft Office Access 2007.

апрос на удаление.

Создание запросов на удаления записей

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

Если две таблицы связаны отношением "один-ко-многим", нельзя удалять записи из таблицы "один" если в таблице "многие" присутствуют соответствующие им записи. Сначала должны быть удалены записи в таблице "многие" и только потом — соответствующие им записи в таблице "один". Для того чтобы упростить этот процесс, Access позволяет при определении связей между таблицами установить флажок каскадное удаление связанных записей(Cascade Delete Related Records). Такой флажок установлен, например, для связи таблиц "Заказы" (Orders) и "Заказано" (Order Details). Действительно, если требуется удалить из базы данных какой-то заказ, должны быть удалены не только запись об этом заказе в таблице "Заказы", но ч все позиции данного заказа в таблице "Заказано".

Для создания запроса на удаления мы воспользуемся уже имеющимся запросом на добавление записей "Копирование заказов".

1. Откройте этот запрос в режиме Конструктора.

2. Чтобы преобразовать запрос на добавление в запрос на удаление записей, выберите команду Запрос, Удаление (Query, Delete Query). В бланке запроса появится строка Удаление (Delete) (рис. 8.11). В первом столбце строки Удаление (Delete) показывается значение Из (From), которое указывает, что будут удаляться записи из таблицы "Заказы". Во втором столбце строки Удаление(Delete) вы видите значение Условие (Where), что указывает на использование этого столбца для определения критерия отбора удаляемых записей.

апрос на создание таблицы. - student2.ru

3. Нажмите кнопку Запуск(Run). Выводятся сообщение с приглашением подтвердить удаление записей и информация о количестве записей, которые будут удалены. Их будет столько же, сколько было отобрано в соответствующем запросе на добавление. В этот момент еще можно отменить удаление, для чего достаточно нажать кнопку Нет (No) в окне сообщения. Нажмите кнопку Да (Yes), подтверждая удаление. Будут удалены все заказы за 1996 год из таблицы "Заказы" (Orders) и все позиции заказов из таблицы "Заказано" (Order Details). Вы можете убедиться в этом, если откроете таблицу "Заказано".

4. Сохраните запрос, дав ему имя: Удаление заказов.

Однако такое каскадное удаление записей не всегда возможно. Например, для рассмотренной нами в предыдущем разделе связи таблиц "Сотрудники" и "Заказы" нельзя устанавливать флажок каскадное удаление связанных записей(Cascade Delete Related Records), т. к. удаление записи о сотруднике из таблицы "Сотрудники" не должно повлечь за собой удаление всех его заказов. Если вы попытаетесь удалить какую-либо запись о сотруднике и в таблице "Заказы" (Orders) окажутся заказы, принятые этим сотрудником, Access выдаст сообщение об ошибке (рис. 8.12).

апрос на создание таблицы. - student2.ru

Наши рекомендации