Самоучитель Microsoft Access 2013



Download 16,15 Mb.
Pdf ko'rish
bet58/146
Sana15.11.2022
Hajmi16,15 Mb.
#866071
1   ...   54   55   56   57   58   59   60   61   ...   146
Bog'liq
Юрий Бекаревич, Нина Пушкина - Самоучитель Microsoft Access 2013 (2014)


Глава 4 
Рис. 4.46. 
Окно для ввода имени таблицы, в которую добавляются записи 
5.
После преобразования запроса в его бланке появляется строка 
Добавление
(Append To) (рис. 4.47). 
6.
Для формирования добавляемых в таблицу НАКЛАДНАЯ записей обязательно 
включите в бланк запроса из таблицы Накладные склада поля 
НОМ_НАК
и 
КОД_СК

составляющие ключ, и поле связи 
НОМ_ДОГ
. Включите также поля 
ДАТА_ОТГР
и 
СУММА_НАКЛ
.
7.
Поскольку в данном примере имена полей обеих таблиц совпадают, Access ав-
томатически сформирует в строке 
Добавление
(Append To) имена полей табли-
цы НАКЛАДНАЯ, в которые будут добавляться значения из соответствующих 
полей таблицы Накладные склада. Если эти имена не совпадают, откройте
в каждой ячейке список полей и выберите нужное имя.
Поля из таблиц с
добавляемыми записями
Таблица или запрос с
добавляемыми записями
Поля таблицы, в которую
добавляются записи
Рис. 4.47. 
Запрос на добавление записей 


Запросы 
205 
8.
Для предварительного просмотра записей, которые планируется добавить в 
таблицу, нажмите кнопку 
Режим
(View) на вкладке ленты 
Конструктор
(Design) или 
Режим таблицы
(Datasheet View) в строке состояния. Возврат 
в режим конструктора запросов производится аналогично. 
9.
Для добавления записей выполните запрос, нажав кнопку 
Выполнить
(Run) на 
вкладке ленты. При этом откроется диалоговое окно с сообщением о числе 
добавляемых записей и вопросом о продолжении операции добавления. 
З
АМЕЧАНИЕ
Если таблица, в которую добавляются записи, содержит ключевое поле, добавляемые 
записи должны содержать такое же поле. Те записи, добавление которых приведет
к появлению совпадающих или пустых значений в ключевом поле, не будут добавле-
ны. Записи не добавляются и в случае, если невозможно преобразование типа данных 
в добавляемых полях или не выполняются условия на значения. 
10.
Перейдите в режим
SQL. Эквивалентная запросу на добавление инструкция 
INSERT INTO
имеет вид: 
INSERT INTO НАКЛАДНАЯ (НОМ_НАКЛ, КОД_СК, ДАТА_ОТГР, НОМ_ДОГ, СУММА_НАКЛ) 
SELECT [Накладные склада].НОМ_НАКЛ, [Накладные склада].КОД_СК,
[Накладные склада].ДАТА, [Накладные склада].НОМ_ДОГ,
[Накладные склада].СУММА_НАКЛ 
FROM [Накладные склада];
Инструкция
INSERT INTO
определяет поля таблицы НАКЛАДНАЯ, которые 
должны заполниться значениями из полей добавляемых записей. Поскольку в 
запросе в качестве источника добавляемых записей указана таблица
Накладные 
склада, конструктор создал на ее основе запрос на выборку, который определяет 
поля добавляемых записей. Этот запрос представлен инструкцией 
SELECT
. Спи-
сок имен полей и порядок их перечисления для обеих таблиц должен совпадать. 
Задание 4.7. Создайте запрос на добавление записей в таблицу ОТГРУЗКА
из таблицы Отгрузка склада 
После дополнения таблицы НАКЛАДНАЯ записями из таблицы Накладные склада 
можно добавлять записи в подчиненную таблицу ОТГРУЗКА из таблицы Отгрузка 
склада.
Добавление данных из нескольких таблиц 
Задача 
Необходимо создать новую
накладную на отгрузку товара покупателю. Пусть това-
ры по накладным отгружаются один раз в месяц в полном соответствии с планом 
поставок. Это означает, что по каждому договору в месяц выписывается только од-
на накладная, а спецификация накладной должна полностью совпадать со специ-
фикацией договора на заданный месяц. Прежде чем заполнять спецификацию на-
кладной, создайте в таблице НАКЛАДНАЯ новую запись, заполнив поля 
Номер 
накладной

Номер склада

Номер договора
и 
Дата отгрузки
. Только теперь 


206 
Глава 4 
можно приступить к добавлению связанных записей в таблицу ОТГРУЗКА, сфор-
мировав эти записи на основании записей, выбранных из таблицы ПОСТАВКА_ 
ПЛАН.
1.
Создайте запрос на добавление записей в таблицу ОТГРУЗКА на основе таблиц 
НАКЛАДНАЯ и ПОСТАВКА_ПЛАН. Установите между ними связь по полю 
НОМ_ДОГ
. Таблица НАКЛАДНАЯ включена в запрос для того, чтобы сформиро-
вать в добавляемых записях ключевое поле, включающее 
НОМ_НАКЛ
и
КОД_СК
.
2.
В запрос включите поля 
НОМ_НАКЛ

КОД_СК

КОД_ТОВ

КОЛ_ПОСТ

СУММА_ПОСТ
, которые 
составят запись, добавляемую в таблицу ОТГРУЗКА, а также 
СРОК_ПОСТ

НОМ_ДОГ
и вычисляемое поле 
Month(ДАТА_ОТГР)
для задания условий отбора добавляемых 
записей (рис. 4.48).
3.
Задайте параметры запроса, которые позволят ввести номер месяца и номер до-
говора, по которым из таблицы ПОСТАВКА_ПЛАН будут выбраны все записи, 
необходимые для добавления в таблицу ОТГРУЗКА. В каждом месяце по дого-
вору выписывается только одна накладная, поэтому по номеру договора и номе-
ру месяца из таблицы НАКЛАДНАЯ будет выбрана только одна запись — та, 
которая была добавлена в таблицу при вводе в базу данных новой накладной. 
При объединении записей таблиц запроса ключевые поля этой записи будут до-
бавлены ко всем записям, выбранным из таблицы ПОСТАВКА_ПЛАН. В ре-
зультате записи обретут составной ключ — 
НОМ_НАКЛ, КОД_СК, КОД_ТОВ
— необ-
ходимый для их добавления в таблицу ОТГРУЗКА.
Рис. 4.48. 
Добавление в таблицу ОТГРУЗКА записей,
соответствующих заданному договору и месяцу 
4.
Для предварительного просмотра записей, которые будут добавлены в таблицу, 
нажмите на вкладке ленты кнопку 
Режим
(View). Для добавления записей на-
жмите кнопку 
Выполнить
(Run).
5.
Перейдите в режим
SQL. Эквивалентная запросу на добавление инструкция 
INSERT
INTO
будет записана следующим образом: 


Запросы 
207 
INSERT INTO ОТГРУЗКА (НОМ_НАКЛ, КОД_СК, КОД_ТОВ, КОЛ_ОТГР, СУММА_ОТГР) 
SELECT НАКЛАДНАЯ.НОМ_НАКЛ, НАКЛАДНАЯ.КОД_СК, 
ПОСТАВКА_ПЛАН.КОД_ТОВ, ПОСТАВКА_ПЛАН.КОЛ_ПОСТ, 
ПОСТАВКА_ПЛАН.СУММА_ПОСТ 
FROM НАКЛАДНАЯ INNER JOIN ПОСТАВКА_ПЛАН ON 
НАКЛАДНАЯ.НОМ_ДОГ = ПОСТАВКА_ПЛАН.НОМ_ДОГ 
WHERE (((ПОСТАВКА_ПЛАН.СРОК_ПОСТ)=[Номер месяца]) AND 
((ПОСТАВКА_ПЛАН.НОМ_ДОГ)=[Номер договора]) AND 
((Month([ДАТА_ОТГР]))=[Номер месяца])); 
Инструкция 
INSERT INTO
определяет поля записей, добавляемых в таблицу 
ОТГРУЗКА. Структура и количество добавляемых записей определяется числом 
записей, возвращаемых инструкцией выбора 
SELECT
. Список имен полей и поря-
док их перечисления для таблицы ОТГРУЗКА, куда добавляются записи,
и для таблицы, определяемой инструкцией 
SELECT
, должен совпадать. 
Конструирование запроса на удаление 
Запрос на удаление (Delete Query) позволяет удалить записи из одной таблицы или 
из нескольких взаимосвязанных таблиц, для связи с которыми установлен параметр 
обеспечения целостности данных 
Каскадное удаление связанных записей 
(Cascade Delete Related Records). В схему данных запроса включается таблица, из 
которой должны удаляться записи, и связанные с ней таблицы, для полей которых 
требуется задать условия отбора удаляемых записей. 
Задача 
Пусть необходимо из справочника удалить запись о покупателе с кодом 
П003
.
В схеме данных базы "Поставка товаров" для всех связей установлен параметр 
обеспечения целостности 
Каскадное удаление связанных записей 
(Cascade Delete 
Related Records), поэтому удаление записи из таблицы ПОКУПАТЕЛЬ повлечет за 
собой удаление из базы всех подчиненных ему записей на всех уровнях иерархии. 
Автоматически будут удалены все договоры этого покупателя, а также все наклад-
ные, выписанные по этим договорам, т. е. будут удалены связанные записи из таб-
лиц ДОГОВОР, ПОСТАВКА_ПЛАН, НАКЛАДНАЯ и ОТГРУЗКА.
1.
Создайте запрос на выборку. Добавьте в схему данных запроса таблицу 
ПОКУПАТЕЛЬ, из которой удаляются записи.
2.
Преобразуйте запрос на выборку в запрос на удаление, выбрав на вкладке ленты 
Конструктор
(Design) тип запроса 
Удаление
(Delete) или выполнив команду 
контекстного меню запроса 
Тип запроса | Удаление 
(Query Type | Delete Query).
3.
После преобразования запроса в запрос на удаление в его бланке появляется 
строка 
Удаление
(Delete) (рис. 4.49). 
4.
Далее приступайте к формированию бланка запроса. Переместите символ звез-
дочки (*) из списка полей таблицы ПОКУПАТЕЛЬ в бланк запроса. В строке 
Удаление
(Delete) в столбце этого поля появляется значение 
Из 
(From).
5.
Для того чтобы задать условия отбора удаляемых записей, переместите с по-
мощью мыши в бланк запроса поле 
КОД_ПОК
из таблицы ПОКУПАТЕЛЬ. В строке 


208 
Download 16,15 Mb.

Do'stlaringiz bilan baham:
1   ...   54   55   56   57   58   59   60   61   ...   146




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish