Как сделать запрос на добавление в access?
Поэтому сначала создается запрос на выборку данных, в результат которого включаются те поля, которые должны составлять добавляемые записи, а также поля, в которых устанавливаются критерии отбора записей.
В качестве примера мы рассмотрим запрос, который будет выбирать из базы данных все заказы за 1996 год и переносить их в другую таблицу так, чтобы таблица «Заказы» (Orders) содержала только актуальные данные. Для этого сначала создадим таблицу, которая будет хранить устаревшие данные:
- Раскройте список таблиц в окне базы данных и выделите таблицу «Заказы» (Orders).
- Скопируйте таблицу в буфер обмена, нажав комбинацию клавиш +.
- Вставьте таблицу из буфера обмена, нажав комбинацию клавиш +. Появляется диалоговое окно Вставка таблицы (Paste Table As).
- В группе Параметры вставки (Paste Options) выберите переключатель Только структура (Structure Only).
- В поле имя таблицы (Table Name) введите строку: Заказы (архив). Нажмите кнопку ОК или клавишу .
В списке появляется новая таблица, пока пустая, т. к. мы скопировали только структуру таблицы «Заказы» (Orders). Теперь создадим запрос на добавление, который позволит перенести в новую таблицу данные из таблицы «Заказы».
- Раскройте список таблиц в окне базы данных и выделите в нем таблицу «Заказы».
- Щелкните левой кнопкой мыши по стрелке на кнопке Новый объект (New Object) инструментальной панели и выберите из раскрывшегося списка элемент Запрос (Query). В диалоговом окне Новый запрос (New Query) выберите значение Конструктор (Design View). Появляется окно Конструктора запроса с таблицей «Заказы» в верхней части.
- Сначала создайте запрос на выборку нужных записей. Перетащите из списка полей таблицы «Заказы» все поля в строку бланка запроса Поле (Field).
- В строке Условие отбора (Criteria) столбца «ДатаРазмещения» введите выражение Between 101.01.961 And 131.12.961
- Запустите запрос на выборку, чтобы проверить, правильно ли отобраны записи. Оказались отобранными 152 записи.
- Выберите команду Запрос, Добавление (Query, Append) или щелкните левой кнопкой мыши по стрелке на кнопке Тип запроса (Query Type) и выберите из списка элемент Добавление (Append Query). Появляется диалоговое окно Добавление (Append), аналогичное диалоговому окну Создание таблицы (Make Table) (рис. 8.6).
- В поле имя таблицы (Table Name) необходимо выбрать из списка имя таблицы, в которую будут добавляться записи. В данном случае по умолчанию в нем указана таблица «Заказы (архив)», которую мы только что создали. Нажмите кнопку ОК. (Если бы таблица, в которую нужно добавить записи, находилась в другой базе данных, необходимо было бы выбрать переключатель в другой базе данных (Another Database) и затем в поле имя файла (File Name) указать имя файла MDB, который содержит требуемую таблицу.)
Рис. 8.6. Диалоговое окно Добавление
- В бланке запроса на добавление появляется дополнительная строка Добавление (Append To), содержащая названия полей таблицы, в которую добавляются записи (рис. 8.7). В данном случае названия полей запроса и названия полей таблицы совпадают, поэтому по умолчанию вся эта строка заполнена. Если имена полей не совпадают, необходимо выбрать из раскрывающегося списка в строке Добавление (Append To) имя поля результирующей таблицы, соответствующего полю в исходной таблице.
- Нажмите кнопку Запуск (Run), чтобы выполнить запрос. Прежде чем новые записи будут добавлены в таблицу, Access выдает сообщение о числе записей, которые предполагается добавить. Вы можете нажать кнопку Да (Yes), и только после этого записи будут добавлены. Если вы нажмете кнопку Нет (No), вставка записей будет отменена.
Замечание
Если записи добавляются в таблицу, которая уже непуста, то наиболее часто встречающейся ошибкой при выполнении этого запроса является попытка вставить записи, у которых значение первичного ключа совпадает с ключами уже имеющихся в ней записей. Такие записи вставлены не будут, будет только выдано сообщение об их количестве.
Рис. 8.7. Бланк запроса на добавление
- Сохраните запрос в базе данных, присвоив ему имя Копирование заказов. Обратите внимание на значок в списке запросов, соответствующий запросу на добавление. Как и в любом запросе на изменение, он содержит восклицательный знак, но отличается от значка запроса на создание таблицы.
Запрос на добавление добавляет группу записей из одной или нескольких таблиц в конец одной или нескольких таблиц.
Пример
Скопируйте таблицу «Koolitus», и вставляя её, выберите в диалоговом окне Paste Table As (Вставка таблицы) переключатель Только структура (Structure Only). Имя таблице дайте «Koolitus_Arhiiv2005».
В списке появляется новая таблица, пока пустая, т. к. мы скопировали только структуру таблицы «Koolitus» (Oбучение).
Теперь создадим запрос на добавление, который позволит перенести в новую таблицу данные из таблицы «Koolitus» за 2005 год.
- Сначала в режиме Конструктора создайте запрос на выборку нужных записей из таблицы «Koolitus».
- В строке Criteria (Условие отбора) в столбце «Koolituse_lopp» (Конец обучения) введите выражение
Between 01.01.2005 And 31.12.2005 - Запустите запрос на выборку, чтобы проверить, правильно ли отобраны записи. Оказались отобранными 4 записи.
- Вернитесь в режим Конструктора и щелкните на кнопке Добавление. Появляется диалоговое окно Append (Добавление), аналогичное диалоговому окну Создание таблицы (Make Table).
5. В поле Table Name ( имя таблицы) необходимо выбрать из списка имя таблицы, в которую будут добавляться записи. В данном случае мы выбираем таблицу «Koolitus_Arhiiv2005», которую мы только что создали. Нажмите кнопку ОК. (Если бы таблица, в которую нужно добавить записи, находилась в другой базе данных, необходимо было бы выбрать переключатель в другой базе данных (Another Database) и затем в поле имя файла (File Name) указать имя файла, который содержит требуемую таблицу).
6. В бланке запроса на добавление появляется дополнительная строка Append To (Добавление), содержащая названия полей таблицы, в которую добавляются записи. В данном случае названия полей запроса и названия полей таблицы совпадают, поэтому по умолчанию вся эта строка заполнена. Если имена полей не совпадают, необходимо выбрать из раскрывающегося списка в строке Добавление (Append To) имя поля результирующей таблицы, соответствующего полю в исходной таблице.
7. Сохраните запрос в базе данных, присвоив ему имя Arhiiv_2005. Нажмите кнопку Запуск (Run), чтобы выполнить запрос. Прежде чем новые записи будут добавлены в таблицу, Access выдает сообщение о числе записей, которые предполагается добавить.
8. Вы можете нажать кнопку Да (Yes), и только после этого записи будут добавлены. Если вы нажмете кнопку Нет (No), вставка записей будет отменена.
Обратите внимание на значок в списке запросов,соответствующий запросу на добавление. Как и в любом запросе на изменение, он содержит восклицательный знак, но отличается от значка запроса на создание таблицы.
Создание запросов на добавление данных
Запрос на добавление используется, когда необходимо добавить к имеющейся таблице новые записи. Исходных таблиц может быть одна или несколько, при этом они могут находиться в той же самой базе данных, что и результирующая, или в другой.
Как и в случае с запросом на создание таблицы, запрос на добавление данных создается из запроса на выборку. Добавьте в таблицу Заказы записи о заказах на все товары одного из покупателей.
1. Откройте базу данных Отдел продаж .
2. На вкладке Создание в группе Другие нажмите кнопку Конструктор запросов .
3. В окне Добавление таблицы дважды щелкните кнопкой мыши на названиях таблиц, из которых нужно получить данные. Вам понадобится только таблица Товары . Нажмите кнопку Закрыть .
4. Дважды щелкните кнопкой мыши на полях, которые необходимо добавить в выборку. Выберите поля Код и Цена .
5. В бланке запроса в строке Поле в третьей колонке введите значение 1. Это будет заказанное количество товаров.
6. В бланке запроса в строке Поле в четвертой колонке введите значение 3. Это номер покупателя из таблицы Клиенты .
7. В бланке запроса в строке Поле в пятой колонке введите date(). Эта функция вернет текущую дату для поля Дата таблицы Заказы .
Результирующий бланк запроса на выборку показан на рис. 6.6.
Рис. 6.6. Результирующий бланк запроса на выборку
Текст запроса на выборку приведен в листинге 6.3.
Следующая глава >
Поділитися
Вставка
- Опубліковано 21 вер 2017
- Если вы не знаете как создать запрос на добавление в программе Microsoft Access, то посмотрите это видео.
Продолжаем работать с базой данных Access «Интернет магазин».
В этом скринкасте на простейшем примере всего за 8 минут мы разберем, как работают запросы на удаление в БД Access. Создав такой запрос в Microsoft Access, можно без труда скопировать большое количество записей в таблицу всего за пару кликов.
Убедитесь, что программа Microsoft Access очень проста и не требует дополнительных знаний в освоении.
Чаевые на развитие канала:
www.donationalerts.ru/r/accesshelpru
Money.Yandex — 41001776448918
———————————————-
Хотите самостоятельно научиться создавать обучающие скринкасты в программе Camtasia Studia 9? — uaclips.com/channel/UCEHp6AiIVCN-ZY7GPpgPkJg
———————————————-
Урок 07: Первичный ключ и индексы — uaclips.com/video/SY4tIcgE6ms/відео.html
———————————————-
Урок 21: Удаление записей — uaclips.com/video/7jPN8VsY1CE/відео.html
Урок 20: Обновление записей — uaclips.com/video/qqnusWTHQyY/відео.html
Урок 19: Записи без подчиненных — uaclips.com/video/YAaT0JBNaS4/відео.html
Урок 18: Поиск повторяющихся записей — uaclips.com/video/5T1tjuk-DxA/відео.html
Урок 17: мастер запросов — uaclips.com/video/y4eSYCDQ7Wk/відео.html
Урок 16: запрос на создание таблицы — uaclips.com/video/uTxe-abWpNc/відео.html
Урок 15: запросы с параметром — uaclips.com/video/aPJFz22JQHo/відео.html
Урок 14: запросы с вычисляемыми полями — uaclips.com/video/3ha9T_0A4r0/відео.html
Урок 13: Как определить ГОД, КВАРТАЛ, МЕСЯЦ, ДЕНЬ НЕДЕЛИ в запросе — uaclips.com/video/vyp_J49atQQ/відео.html
Урок 12: Как создать ЗАПРОС С УСЛОВИЕМ — uaclips.com/video/bJx78u5wzC8/відео.html
Урок 11: Как задать условия для ТЕКСТОВЫХ полей в запросах — uaclips.com/video/cwbXCFuKdIM/відео.html
Уроки по SQL-запросам: uaclips.com/p/PLnzEVwX9gt1jga-65dEwhnjdGS1ZL42MJ
———————————————
Готовая база данных Access Приходный кассовый ордер — uaclips.com/video/JmIgS_KkW98/відео.html
Готовые базы Access — 7108.ru/g0203
———————————————-
Ищите нас вконтакте: vk.com/access_community и facebook: facebook.com/msaccess.community/
Остались вопросы? Пишите в комментариях под видео