Редагування структури таблиць
Завдання: Додати нові поля до таблиць Філії, ШтатніПрацівники бази даних «Супермаркет», встановити необхідні властивості полів та створити поля підстановок.
4.1. Відкрити таблицю Філії бази даних Супермаркет.
4.2. Внести до цієї таблиці 3-5 записів.
4.3. До таблиці ШтатніПрацівники бази даних «Супермаркет» внести наступні зміни в структуру таблиці:
- після поля Ім’я додати поле По_батькові, яке матиме такі ж властивості, що й поле Ім’я, але більший розмір (наприклад, 20);
- після поля По_батькові додати поле ДатаНародження, яке матиме такі самі властивості, як і поле Дата_прийому;
- змінити поле Ставка на поле МінімальнийОклад та задайте йому властивості, описані в табл. 2.1;
- зробити поле Телефон текстовим, оскільки до нього можуть записуватися не лише числа, а й дужки (для коду міста), чи дефіс (див. табл. 1.3);
- після поля КодПрацівника додати нове поле Філія (текстовое, размер – 20, необязательное), яке зробити полем підстановок даних поля Назва таблиці Філії;
- поле Населений_пункт повинно мати значення за замовчуванням м. Харків;
- змінити розмір текстового поля Поштова_адреса до 17 символів, а також створити маску для введення даних за зразком:
д._____, кв. ___
Таблиця 1.3
Властивості полів МінімальнийОклад та Телефон
Назва поля – тип поля | Властивість та значення | |
МінімальнийОклад –Денежный | Формат поля | Денежный |
Число десятичных знаков | Авто | |
Индексированное поле | Да (Допускаются совпадения) | |
Телефон – Текстовый | Размер поля | 12 |
Обязательное поле | Нет |
4.4. Поле Посада зробити полем підстановок, в якому знаходитиметься фіксований набір значень: Генеральний директор, Директор, Заступник директора, Головний бухгалтер, Бухгалтер, Касир, Продавець, Водій, Охоронець.
4.5. Самостійно створити маску для введення даних до поля Телефон за власним шаблоном (наприклад, ___-__-__).
5. Встановлення зв’язків між таблицями та внесення даних
Завдання: Заповнити таблиці Філії, ШтатніПрацівники бази даних «Супермаркет» даними, створити таблицю Постачальники за допомогою шаблонів таблиць, внести дані до створеної таблиці. Встановити зв’язки між таблицями.
5.1. Заповнити таблицю ШтатніПрацівники записами, враховуючи те, що торгівельна фірма має щонайменше 6 філії, у кожній з яких є свій директор (його прізвище та ініціали уже повинні знаходитись у таблиці Філії), бухгалтер, касир, 2-3 продавці, 2-3 охоронці. У центральному відділенні повинен бути генеральний директор, заступник директора, головний бухгалтер, касир, водій, 1-2 бухгалтера, 3-5 продавців, 3-5 охоронців (загальна кількість записів – 40-50).
5.2. За допомогою майстра таблиць (шаблон Поставщики) створити таблицю Постачальники, яка складатиметься з полів КодПостачальника, НазваПостачальника, Поштовий_індекс, ОбластьРайон, Населений_пункт, Телефон. Ключове поле – поле КодПостачальника: послідовні числа, які автоматично надаються кожному запису. Пропустити крок встановлення зв’язків. У режимі конструктора змінити довжину поля НазваПостачальника на 30, зробити це поле обов’язковим та індексованим, в якому можуть бути співпадання.
5.3. У таблиці АсортиментТоварів перейменувати поле Ціна на поле ЦінаПостачальника, для якого знищити значення за замовчуванням. Додати поля КодПостачальника і Опис. Поле КодПостачальника повинно бути полем підстановок даних поля НазваПостачальника таблиці Постачальники. Поле Опис – це необов’язкове мемо-поле, в яке заноситиметься коротка характеристика товару.
5.4. У таблиці АсортиментТоварів знищити поля Найменування та перейменувати поле Ціна на поле ЦінаПостачальника.
5.5. Перевірити, чи властивості інших полів таблиць відповідають наведеним у табл. 1.4.
Таблиця 1.4
Назви та властивості полів таблиці АсортиментТоварів
Назва поля – тип поля | Властивість та значення | |
КодТовару – Счетчик | Размер поля | Длинное целое |
Новые значения | Последовательные | |
Индексированное поле | Да (Совпадения не допускаются) | |
Найменування – Текстовый | Размер поля | 35 |
Обязательное поле | Да | |
Индексированное поле | Да (Допускаются совпадения) | |
ЦінаПостачальника – Денежный | Формат поля | Фиксированный |
Число десятичных знаков | 2 | |
Обязательное поле | Нет | |
Кількість – Числовой | Размер поля | Целое |
Число десятичных знаков | 0 | |
Значение по умолчанию | 0 | |
Обязательное поле | Нет | |
Индексированное поле | Нет | |
КодПостачальника – Числовой | Размер поля | Длинное целое |
Обязательное поле | Нет | |
Индексированное поле | Нет | |
Опис – поле МЕМО | Обязательное поле | Нет |
Индексированное поле | Нет |
5.6. Встановити у вікні Схема данихзв’язки типу «один-до-багатьох» із параметрами забезпечення цілісності даних, каскадного оновлення та знищенням даних зв’язаних полів між таблицями:
ü АсортиментТоварів та Постачальники (за полем КодПостачальника);
ü ШтатніПрацівники та Філії (за полем КодФілії);
5.7. Заповнити таблицю Постачальники, яка повинна містити щонайменше 3-4 записи.
5.8. Додати в таблицю АсортиментТоварів після поля Кількість поле ОдиниціВимір, яке зробити полем підстановок з фіксованим набором значень (наприклад, шт, кг, л).
5.9. Заповнити таблицю АсортиментТоварів (10-15 записів).
6. Основні прийоми роботи з фільтрами
6.1. За допомогою фільтрів, створених для відповідних таблиць бази даних «Супермаркет», відобразити записи:
6.1.1. працівників, які не проживають у Харкові;
6.1.2. працівників, які поступили на роботу протягом 2003 р.;
6.1.3. товарів, кількість яких не перевищує 7 одиниць;
6.1.4. постачальників, офіси яких знаходяться за межами Харкова;
6.1.5. товарів, ціна постачальника яких більша 3,50 грн.
6.1.6. працівників-чоловіків, прізвища яких починаються з літери П;
6.1.7. працівників-жінок, які працюють на посаді продавця, прізвища яких починаються з літери М;
6.2. У режимі таблиці відсортувати записи працівників за посадами та прізвищами.
6.3. Зберегти вікна з отриманими результатами в файлі-звіті.
7. Створення запитів різних типів
7.1. За допомогою майстра простих запитів створити до таблиці ШтатніПрацівники наступні запити:
7.1.1) АдреснаКнижка, який відображатиме прізвища, імена, адреси та телефони працівників;
7.1.2) ШтатнийРозпис, в який ввійдуть поля Прізвище, Ім’я, Посада та МінімальнийОклад.
7.2. Створити запити, які відображатимуть записи завдань 6.1.1 – 6.1.7; зберегти запити з назвами Запит 1, ..., Запит 7.
7.3. Створити параметричний запит Таблиця_Посада, за допомогою якого можна створити нову таблицю Вибрана посада, яка міститиме поля Прізвище, Ім’я, По_батькові, Стать, Посада та МінімальнийОклад записів працівників визначеної посади.
7.4. За допомогою запитів на основі таблиці ШтатніПрацівники створити окремо таблицю бухгалтерів, продавців та охоронців, які складатимуться з полів Прізвище, Ім’я, По_батькові, Стать, Посада та МінімальнийОклад. Створити запит СукупністьПосад для об’єднання цих таблиць у одну таблицю – СукупніЗаписи.
7.5. Створити запит Постачальники_дані до таблиці Постачальники, за допомогою якого в одному стовпці Інформація відображатиметься назва постачальника, його адреса та телефон (наприклад, Альфа-Харків, тел. 977-54-89).
7.6. Створити запит на оновлення ЦінаЗростає, за допомогою якого у таблиці АсортиментТоварів значення поля ЦінаПостачальника зросте на 5%.
7.7. Створити запит Величина_доставки, який визначатиме для кожного постачальника сумарну вартість усіх доставлених товарів, тобто суму добутків ЦінаПостачальника ´ Кількість. Впорядкувати записи у динамічній таблиці за спаданням вартостей доставок.
7.8. Зберегти результати роботи в файлі бази даних:
T: \ ПапкаГрупи \ Супермаркет_ВласнеПрізвище.mdb
7.9. Вікна з результатами роботи створених запитів зберегти в файлі-звіті.
8. Основні прийоми роботи з запитами
8.1. Створити до таблиці ШтатніПрацівники наступні запити:
8.1.1) Іменинники, який виводитиме на екран записи працівників, у яких в поточному місяці день народження;
8.1.2) Вік працівника, за допомогою якого можна обчислити вік кожного працівника;
8.1.3) Стаж роботи, який обчислюватиме стаж роботи кожного працівника;
8.1.4) для кожної з філій створити запит (ПродавціНазваФілії), який формуватиме список продавців конкретної філії; поле з інформацією про продавця повинно бути утворене з даних двох полів – Прізвище та Ім’я (наприклад, Іванова М.).
8.2. Заповнити таблицю Замовлення 2-3 записами для кожної філії.
8.3. Створити параметричний запит Замовлення_Філія для вибору інформації щодо замовлень кожної філії (параметр – номер філії).
8.4. Створити запит Прейскурант, який міститиме поля Найменування, Кількість (таблиця АсортиментТоварів) та ЦінаПродажу (обчислювальне поле, в якому ціна постачальника перевищується на 15%).
8.5. Створити таблицю ОписЗамовлення, яка складатиметься з полів КодЗамовлення, Найменування, Ціна, Кількість. Поле КодЗамовлення – числове поле (длинное целое), Ціна – поле грошового формату (фиксированное, 2 знака після коми), Кількість – числове поле (целое), а поле Найменування – це поле підстановок даних, які утворюються в результаті виконання запиту Прейскурант. Поле підстановок повинно містити усі три стовпці запиту.
8.6. Встановити зв’язок «один-до-одного» між таблицями Замовлення та ОписЗамовлення (із забезпеченням цілісності даних та каскадним оновленням та знищенням даних).
8.7. Створити запит ВартістьЗамовлення, в якому обчислюватиметься загальна вартість кожного замовлення, визначатиметься розмір знижки (якщо вартість замовлення становить 100 і більше грн., знижка становить 2%, при вартості замовлення більший за 300 грн. – 5%, а при більший за 500 грн. – 10%) та вартість замовлення з урахуванням знижки.
8.8. Зберегти результати роботи в файлі бази даних:
T: \ ПапкаГрупи \ Супермаркет_ВласнеПрізвище.mdb
Вікна з результатами роботи створених запитів зберегти в файлі-звіті, роздрукувати і представити звіт викладачу.