Мною на основе построенной инфологической модели БД были созданы следующие таблицы:
На рисунке 2,3 показана таблица «Товар» в режимах конструктора и таблица
Рисунок 2. Таблица «Товар» в режиме конструктор
Рисунок 3. Таблица «Товар» в режиме таблица
На рисунке 4,5 показана таблица «Покупка» в режимах конструктора и таблица
Рисунок 4. Таблица «Покупка» в режиме конструктор
Рисунок 5. Таблица «Покупка» в режиме таблица
На рисунке 6,7 показана таблица «Поставка» в режимах конструктора и таблица
Рисунок 6. Таблица «Поставка» в режиме конструктор
Рисунок 7. Таблица «Поставка» в режиме таблица
На рисунке 8,9 показана таблица «Клиент» в режимах конструктора и таблица
Рисунок 8. Таблица «Клиент» в режиме конструктор
Рисунок 9. Таблица «Клиент» в режиме таблица
На рисунке 10,11 показана таблица «Поставщик» в режимах конструктора и таблица
Рисунок 10. Таблица «Поставщик» в режиме конструктор
Рисунок 11. Таблица «Поставщик» в режиме таблица
На основе построенных таблиц, построена схема данных( рис.12)
Рисунок 12. Схема данных БД «Магазин по продажи продуктов»
На основе составленных таблиц были построены следующие запросы:
Люди по имени А.
Поиск молочные изделия и напитки.
Отчет по продажи на сегодня.
Отчет по поставщикам.
Имена с букв от “А” до “Д”.
Срок годности апрель месяц.
Они выполняют следующие задачи:
Задача №1. Найти людей у которых фамилия начинается буква А
На рисунках 13 и 14, показано выполнение данной задачи в режимах конструктора и таблицы.
Рисунок 13. Запрос «Люди по имени А» в режиме конструктора
Рисунок 14. Запрос «Люди по имени А» в режиме таблица
Задача №2. Поменять фамилию клиента.
На рисунках 15 и 16, показано выполнение данной задачи в режимах конструктора и таблицы.
Рисунок 15. Запрос «Новая фамилия» в режиме конструктора
Рисунок 16. Таблица «Клиент» в режиме таблица
Задача №3. Удалит конкретный товар,
На рисунках 17 и 18, показано выполнение данной задачи в режимах конструктора и таблицы.
Рисунок 17. Запрос «Удаление товара» в режиме конструктора
Рисунок 18. Таблица «Товар» в режиме таблица
Задача №4. Поиск молочные изделия и напитки,
На рисунках 19 и 20, показано выполнение данной задачи в режимах конструктора и таблицы.
Рисунок 19. Запрос «Поиск молочные изделия и напитки» в режиме конструктора
Рисунок 20. Запрос «Поиск молочные изделия и напитки» в режиме таблица
Задача №5. Составит отчет по продажи на сегодня,
На рисунках 21 и 22, показано выполнение данной задачи в режимах конструктора и таблицы.
Рисунок 21. Запрос «Отчет по продажи на сегодня» в режиме конструктора
Рисунок 22. Запрос «Отчет по продажи на сегодня» в режиме таблица
Задача №6. Найти всех посетителей у кого нет телефона.
На рисунках 23 и 24 показан запрос « Нет телефонов» в режимах конструктор и таблица.
Рисунок 23. Запрос «Нет телефона» в режиме конструктора
Рисунок 24. Запрос «Нет телефона» в режиме таблица
Задача №7. Составить перекрестный запрос.
На рисунках 25 и 26 показан запрос « Отчет по поставщикам» в режимах конструктор и таблица.
Рисунок 25. Запрос «Отчет по поставщикам» в режиме конструктора
Рисунок 26. Запрос «Отчет по поставщикам» в режиме таблица
Задача №8. Отобразить данные о людях , где есть поле Ф.И.О. Найти людей у которых имена начинаются с букв от «А» до «Д»
На рисунках 27 и 28 показан запрос « Имена с букв от “А” до “Д” » в режимах конструктор и таблица.
Рисунок 27. Запрос «Имена с букв от “А” до “Д”» в режиме конструктора
Рисунок 28. Запрос «Имена с букв от “А” до “Д”» в режиме таблица
Задача №9. Создать запрос с параметрами по имени.
На рисунках 29 и 30 показан запрос «Ввести имя » в режимах конструктор и таблица.
Рисунок 29. Запрос «Ввести имя» в режиме конструктора
Рисунок 30. Запрос «Ввести имя» в режиме таблица
Задача №10. Найти все данные не ранее какой-либо даты и не позднее какой-то, используя оператор Beetwen. AND.
На рисунках 31 и 32 показан запрос «Срок годности апрель месяц» в режимах конструктор и таблица.
Рисунок 31. Запрос «Срок годности апрель месяц» в режиме конструктора
Рисунок 32. Запрос «Срок годности апрель месяц» в режиме таблица
База данных Access Сеть магазинов
5. Сеть магазинов
Минимальный список характеристик:
• Номер, ФИО, адрес, телефон владельца магазина, размер вклада в магазин, номер регистрации, дата регистрации;
• номер, название, адрес и телефон магазина, уставной капитал, профиль;
• номер, ФИО, адрес, телефон поставщика, а также стоимость поставки данного поставщика в данный магазин.
Один и тот же магазин может иметь несколько владельцев и один и тот же владелец может иметь в собственности много магазинов.
Примечание: профиль — продуктовый, галантерейный, канцелярский и т.п.
Выборки:
• Определить самого молодого предпринимателя, владеющего собственностью в районе ‘Киевский’.
• Определить случаи, когда регистрировалось владение лицами, не достигшими 18 лет.
• Определить случаи, когда больше 50% уставного капитала магазина внесено предпринимателем, проживающим в другом районе.
• Вывести список профилей магазинов, которыми владеет предприниматель ‘Кузнецов’ в порядке убывания вложенного в них капитала.
1) Создать структуры таблиц, ключевые поля. Заполнить таблицы данными. Количество данных в таблицах должно обеспечивать выдачу не менее 3-5 записей по каждому запросу задания. Установить связи между таблицами.
2) Создать формы для ввода информации в удобном для пользователя формате.
3) Создать запросы на выборку в соответствии с заданием. Создать параметрический запрос. Создать запросы на обновление и удаление. Создать перекрестный запрос. Создать запрос для создания отчета.
4) Создать простой отчет и отчет на основе ранее созданного запроса.
5) Создать кнопочную форму для работы со всеми созданными ранее объектами базы данных (таблицы, формы, запросы, отчеты). Предусмотреть в форме выход из базы данных (прекращение работы).
База данных Access Сеть магазинов содержит 6 таблиц, 15 запросов, 6 форм + главная кнопочная форма, 3 отчета, 10 макросов. Данная база данных Access является учебной, подходит для дальнейшей оптимизации и доработки под собственные нужды.
Пояснительной записки нет!
Цель практических заданий – приобретение навыков анализа предметной области, проектирования базы данных, ее физической реализации в СУБД Access.
Результат выполнения работы представляется в виде базы Access, который должен содержать:
• структуру спроектированных таблиц,
• схему данных со связями между таблицами,
• формы, обеспечивающих интерфейс пользователя,
• запросы,
• отчеты,
• главную кнопочную форму.
Таблица «Владельцы» — База данных Access Сеть магазинов
Запрос «Вклад более 50%» — База данных Access Сеть магазинов
Запрос «Самый молодой — Киевский» — База данных Access Сеть магазинов
Форма «Магазины» — База данных Access Сеть магазинов
Форма «Поставщики» — База данных Access Сеть магазинов
Отчет «Владение Кузнецова» — База данных Access Сеть магазинов
Отчет «Владение до 18 лет» — База данных Access Сеть магазинов
Отчет по владениям — База данных Access Сеть магазинов
Готовая база данных БД Access Сеть магазинов доступна для скачивания по ссылке ниже.
Скачать базу данных (БД) MS Access; БД Access Сеть магазинов; магазин; база данных access; бд access; субд access; базы данных access; access пример; программирование access; готовая база данных; создание база данных; база данных СУБД; access курсовая; база данных пример; программа access; access описание; access реферат; access запросы; access примеры; скачать бд access; объекты access; бд в access; скачать субд access; база данных ms access; субд access реферат; субд ms access; преимущества access; базу данных; скачать базу данных на access; базы данных; реляционная база данных; системы управления базами данных; курсовая база данных; скачать базу данных; база данных access скачать; базы данных access скачать;
Планируется разработка "стандартного" интернет-магазина (реализация будет на Laravel).
Должно быть:
- категории товаров (categories: электроника, огород, книги. )
- товары (products), при этом товары разных категорий имеют разные атрибуты
- атрибуты (attributes: цвет, масса, размер)
- значения атрибутов (values: зеленый, красный, 1, 2, 5, m, s, xl, xxl)
При создании товара, указываем категорию, потом, в зависимости от выбранной категории, можно указать значения атрибутов (атрибуты и их значения должны быть созданы заранее).
Нарисовал следующую структуру БД:
Пока что, теоретически, как бы все должно работать. Но хотелось ли увидеть комментарии/советы, у кого был опыт подобной работы. Возможна ли такая реализация на практике и не столкнусь ли я, с пока что не известными мне, проблемами и ограничениями?
- Вопрос задан более года назад
- 6801 просмотр
Неверно в корне.
Вы нарисовали по сути EAV (есть такая готовая схема данных под эту задачу – погуглите, примеров много).
Плюсы:
Удобно ложиться в реляционную модель, удобно программируется (если вам удобно работать с реляционной моделью), на первый взгляд хорошо подходит под любую реляционную СУБД (MySQL, PostgreSQL, Oracle).
Минусы:
Неоправдано малоэффективно по производительности.
Есть решения на порядок более быстрые.
Впрочем, если у вас каких то жестких требований на производительность или на минимизацию затрат на сервер – годится.
По мне так EAV удобен как средство редактирования (ну и хранения первичной информации).
А вот собственно сам поиск гораздо эффективнее осуществляется на full-text search engines, например:
SphinxSearch (или его клон Мантикора), ElasticSearch и т.п.
И чем по большему количеству фильтров идет поиск – тем больше этот разрыв (хотя он и по одному фильтру уже весьма заметен).
В наиболее развитых full-text search engine поиск по свойствам является "дешевой" операцией, совершенно совместимой с основным полнотекстовый поиском.
Более того, работа с множественными фильтрами по свойствам в этих движках даже проще полнотекстового поиска (так как фильтры не нужно разбивать на слова, прогонять через алгоритм стемминга с его возможными косяками – они уже "готовы к употреблению" сразу).
Бонусом практически "бесплатно" получаете т.н. "фасеточные итоги", отвечающие на вопрос "сколько у нас товаров с таким то свойством" (это часто используется в отображении фильтров на сайтах).
Если вам принципиально на MySQL – просто см. описание схемы данных EAV. Она как раз именно что для этого.
Если вам нужно чтобы все летало – см. SphinxSearch (он крайне быстр и нетребователен к ресурсам).