Создание (формирование) запросов 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Создание (формирование) запросов



План

 

1. Входные данные

2. Постановка задачи

3. Первая нормальная форма

4. Вторая нормальная форма

5. Третья нормальная форма

6. Создание (формирование) запросов

7. Проектирование форм и работа с ними

8. Создание отчета как объекта базы данных

9. Создание главной кнопочной формы

10. Выводы

 

Входные данные

 

Поле Тип Размер Описание
  GoodID Числовой   Регистрационный номер товара в базе
  Name Текстовый   Название товара
  International Текстовый   Международное название лекарства
  Begin Дата/Время Авто Дата производства
  End Дата/Время Авто Годен до
  Yes Логический   Одобрено Минздравом РФ (да/нет)
  RF Текстовый   Регистрационный номер минздрава РФ
  Producer Текстовый   Данные о производителе
  Instructions Поле Memo Авто Инструкция к лекарству
  Batch Текстовый   Вид упаковки
  Seller Текстовый   Название поставщика
  Address Текстовый   Адрес поставщика
  Phone Текстовый   Телефон поставщика
  INN Текстовый   ИНН поставщика
  Sign Логический   Признак посредника
  Date Дата/Время Авто Дата поступления на склад
  Price Денежный   Цена товара
  GoodsInvoice Числовой   Номер приходной накладной ведомости
  ClientID Текстовый   Номер покупателя
  Company Текстовый   Название покупателя
  Address Текстовый   Адрес покупателя
  Phone Текстовый   Телефон покупателя
  CountNumber Числовой   Номер счет-фактуры
  DateStart Дата/Время Авто Дата выписки счет-фактуры
  Sum Денежный   Сумма к оплате
  Cash Логический   Оплата наличными (да/нет)
  Worker Текстовый   Выдавший счет-фактуру
  Invoice Числовой   Номер выходной накладной
  INNClient Текстовый   ИНН покупателя
  Seller Текстовый   Фамилия продовца

 

Постановка задачи

 

Разработать прикладное программное обеспечение деятельности аптечного склада. Аптечный склад занимается оптовой продажей лекарств больницам и аптекам города. В его ассортименте -тысячи наименований лекарств, а также различных аптечных принадлежностей (градусники, шприцы, бинты и т. д.) Возможна продажа лишь тех лекарств, которые одобрены Минздравом РФ, то есть имеют регистрационный номер Минздрава РФ. Поступающие лекарства сопровождаются документами - приходными накладными ведомостями. Покупатель получает счет-фактуру на выбранный товар, оплачивает сумму, указанную в ней, и после оплаты получает выходную накладную ведомость, по которой получает выбранный товар.

 

 

Первая нормальная форма

 

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

 

Таблица Товары

 

Поле Тип Размер Описание
  GoodID Числовой   Регистрационный номер товара в базе
  Name Текстовый   Название товара
  International Текстовый   Международное название лекарства
  Begin Дата/Время Авто Дата производства
  End Дата/Время Авто Годен до
  Yes Логический   Одобрено Минздравом РФ (да/нет)
  RF Текстовый   Регистрационный номер минздрава РФ
  Producer Текстовый   Данные о производителе
  Instructions Поле Memo Авто Инструкция к лекарству
  Batch Текстовый   Вид упаковки

 

Таблица Поставщики

 

  Seller Текстовый   Название поставщика
  Address Текстовый   Адрес поставщика
  Phone Текстовый   Телефон поставщика
  INN Текстовый   ИНН поставщика

 

Таблица Покупатели

  ClientID Текстовый   Номер покупателя
  Company Текстовый   Название покупателя
  Address Текстовый   Адрес покупателя
  Phone Текстовый   Телефон покупателя
  CountNumber Числовой   Номер счет-фактуры
  DateStart Дата/Время Авто Дата выписки счет-фактуры
  Sum Денежный   Сумма к оплате
  Cash Логический   Оплата наличными (да/нет)
  Worker Текстовый   Выдавший счет-фактуру
  Invoice Числовой   Номер выходной накладной
  INNClient Текстовый   ИНН покупателя
  Seller Текстовый   Фамилия продавца

 

 

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

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

 

 

  Sign Логический   Признак посредника
  Date Дата/Время Авто Дата поступления на склад
  Price Денежный   Цена товара
  GoodsInvoice Числовой   Номер приходной накладной ведомости

 

 

Вторая нормальная форма

Вторая нормальная форма. Таблица находится во второй нормальной форме, если она удовлетворяет условиям первой нормальной формы, и любое не ключевое поле однозначно идентифицируется полным набором ключевых полей.

Мощь реляционных баз данных, таких как Microsoft Access, опирается на их способность быстро найти и связать данные из разных таблиц при помощи запросов, форм и отчетов. Для этого каждая таблица должна содержать одно или несколько полей, однозначно определяющих каждую запись в таблице. Такие поля называют первичным ключом таблицы. Если для таблицы определен первичный ключ, то Microsoft Access предотвращает дублирование значений полей или ввод значений Null в эти поля. В Microsoft Access можно выделить три типа ключевых полей: простой ключ, составной ключ и счетчик. Если поле содержит уникальные значения, то его можно определить как ключевое или простой ключ.

В очень редких случаях с определением первичного ключа для таблицы может сложиться тупиковая ситуация. Для этого надо добавить в таблицу поле и определите его тип как «счетчик». Все остальное Access сделает самостоятельно. В это поле будет автоматически вноситься уникальное число даже при работе с Вашей базой в сетевом варианте (с нескольких компьютеров одновременно). Если до сохранения созданной таблицы ключевые поля не были определены, Microsoft Access предложит создать ключевое поле автоматически. При нажатии кнопки «Да» будет создано ключевое поле счетчика.

 

 

 

Третья нормальная форма

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

Осталось установить связи между таблицами, и база данных будет готова к работе. Microsoft Access поддерживает четыре типа связей: один к одному, один ко многим, много к одному и много ко многим.

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

Связь «многие ко многим» возникает между двумя таблицами в тех случаях, когда одна запись из первой таблицы может быть связана более чем с одной записью из второй таблицы, а одна запись из второй таблицы может быть связана более чем с одной записью из первой таблицы. Таких связей следует избегать, так как реляционная модель не позволяет непосредственно работать с ними. Microsoft Access или любая другая реляционная СУБД в этом случае бесполезны. Всегда можно ввести в базу данных еще одну - две промежуточные таблицы и тем самым избежать возможных неприятностей при разработке интерфейса приложения, используя понятные и безотказно работающие связи «один ко многим». Некоторые варианты заданий из этого пособия могут привести к связи «многие ко многим» между таблицами базы данных.

 

 

 

Способы создания отчета

В Microsoft Access можно создавать отчеты различными способами:

 Конструктор

 Мастер отчетов

 Автоотчет: в столбец

 Автоотчет: ленточный

 Мастер диаграмм

 Почтовые наклейки

Мастер позволяет создавать отчеты с группировкой записей и представляет собой простейший способ создания отчетов. Он помещает выбранные поля в отчет и предлагает шесть стилей его оформления. После завершения работы Мастера полученный отчет можно доработать в режиме Конструктора. Воспользовавшись функцией Автоотчет, можно быстро создавать отчеты, а затем вносить в них некоторые изменения.


Для создания Автоотчета необходимо выполнить следующие действия:

 В окне базы данных щелкнуть на вкладке Отчеты и затем щелкнуть на кнопке Создать. Появится диалоговое окно Новый отчет.

 Выделить в списке пункт Автоотчет: в столбец или Автоотчет: ленточный.

 В поле источника данных щелкнуть на стрелке и выбрать в качестве источника данных таблицу или запрос.

 Щелкнуть на кнопке ОК.

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

 В меню Файл щелкнуть на команде Сохранить. В окне Сохранение в поле Имя отчета указать название отчета и щелкнуть на кнопке ОК.

Отчет «Покупатель»:

Отчет «Поставщик»:

Отчет «Товары»:

 

Выводы

В данном курсовом проекте была разработана база данных для аптечного склада. Для разработки базы данных было использовано приложение Microsoft Access 2003. Разработанная БД позволяет автоматизировать учет на складе: добавлять и удалять записи принятого и отпущенного товара, получать быстрый доступ к информации о поставщиках, выводить на печать отчеты. Были созданы запросы, которые облегчают доступ к информации о купленных, проданных товарах.

В целом Microsoft Access - это ПО, которое быстро и эффективно, без определенных трудностей позволяет, проектировать различные БД. Все настройки и интерфейс ПО Microsoft Access понятны и интуитивны.

План

 

1. Входные данные

2. Постановка задачи

3. Первая нормальная форма

4. Вторая нормальная форма

5. Третья нормальная форма

6. Создание (формирование) запросов

7. Проектирование форм и работа с ними

8. Создание отчета как объекта базы данных

9. Создание главной кнопочной формы

10. Выводы

 

Входные данные

 

Поле Тип Размер Описание
  GoodID Числовой   Регистрационный номер товара в базе
  Name Текстовый   Название товара
  International Текстовый   Международное название лекарства
  Begin Дата/Время Авто Дата производства
  End Дата/Время Авто Годен до
  Yes Логический   Одобрено Минздравом РФ (да/нет)
  RF Текстовый   Регистрационный номер минздрава РФ
  Producer Текстовый   Данные о производителе
  Instructions Поле Memo Авто Инструкция к лекарству
  Batch Текстовый   Вид упаковки
  Seller Текстовый   Название поставщика
  Address Текстовый   Адрес поставщика
  Phone Текстовый   Телефон поставщика
  INN Текстовый   ИНН поставщика
  Sign Логический   Признак посредника
  Date Дата/Время Авто Дата поступления на склад
  Price Денежный   Цена товара
  GoodsInvoice Числовой   Номер приходной накладной ведомости
  ClientID Текстовый   Номер покупателя
  Company Текстовый   Название покупателя
  Address Текстовый   Адрес покупателя
  Phone Текстовый   Телефон покупателя
  CountNumber Числовой   Номер счет-фактуры
  DateStart Дата/Время Авто Дата выписки счет-фактуры
  Sum Денежный   Сумма к оплате
  Cash Логический   Оплата наличными (да/нет)
  Worker Текстовый   Выдавший счет-фактуру
  Invoice Числовой   Номер выходной накладной
  INNClient Текстовый   ИНН покупателя
  Seller Текстовый   Фамилия продовца

 

Постановка задачи

 

Разработать прикладное программное обеспечение деятельности аптечного склада. Аптечный склад занимается оптовой продажей лекарств больницам и аптекам города. В его ассортименте -тысячи наименований лекарств, а также различных аптечных принадлежностей (градусники, шприцы, бинты и т. д.) Возможна продажа лишь тех лекарств, которые одобрены Минздравом РФ, то есть имеют регистрационный номер Минздрава РФ. Поступающие лекарства сопровождаются документами - приходными накладными ведомостями. Покупатель получает счет-фактуру на выбранный товар, оплачивает сумму, указанную в ней, и после оплаты получает выходную накладную ведомость, по которой получает выбранный товар.

 

 

Первая нормальная форма

 

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

 

Таблица Товары

 

Поле Тип Размер Описание
  GoodID Числовой   Регистрационный номер товара в базе
  Name Текстовый   Название товара
  International Текстовый   Международное название лекарства
  Begin Дата/Время Авто Дата производства
  End Дата/Время Авто Годен до
  Yes Логический   Одобрено Минздравом РФ (да/нет)
  RF Текстовый   Регистрационный номер минздрава РФ
  Producer Текстовый   Данные о производителе
  Instructions Поле Memo Авто Инструкция к лекарству
  Batch Текстовый   Вид упаковки

 

Таблица Поставщики

 

  Seller Текстовый   Название поставщика
  Address Текстовый   Адрес поставщика
  Phone Текстовый   Телефон поставщика
  INN Текстовый   ИНН поставщика

 

Таблица Покупатели

  ClientID Текстовый   Номер покупателя
  Company Текстовый   Название покупателя
  Address Текстовый   Адрес покупателя
  Phone Текстовый   Телефон покупателя
  CountNumber Числовой   Номер счет-фактуры
  DateStart Дата/Время Авто Дата выписки счет-фактуры
  Sum Денежный   Сумма к оплате
  Cash Логический   Оплата наличными (да/нет)
  Worker Текстовый   Выдавший счет-фактуру
  Invoice Числовой   Номер выходной накладной
  INNClient Текстовый   ИНН покупателя
  Seller Текстовый   Фамилия продавца

 

 

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

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

 

 

  Sign Логический   Признак посредника
  Date Дата/Время Авто Дата поступления на склад
  Price Денежный   Цена товара
  GoodsInvoice Числовой   Номер приходной накладной ведомости

 

 

Вторая нормальная форма

Вторая нормальная форма. Таблица находится во второй нормальной форме, если она удовлетворяет условиям первой нормальной формы, и любое не ключевое поле однозначно идентифицируется полным набором ключевых полей.

Мощь реляционных баз данных, таких как Microsoft Access, опирается на их способность быстро найти и связать данные из разных таблиц при помощи запросов, форм и отчетов. Для этого каждая таблица должна содержать одно или несколько полей, однозначно определяющих каждую запись в таблице. Такие поля называют первичным ключом таблицы. Если для таблицы определен первичный ключ, то Microsoft Access предотвращает дублирование значений полей или ввод значений Null в эти поля. В Microsoft Access можно выделить три типа ключевых полей: простой ключ, составной ключ и счетчик. Если поле содержит уникальные значения, то его можно определить как ключевое или простой ключ.

В очень редких случаях с определением первичного ключа для таблицы может сложиться тупиковая ситуация. Для этого надо добавить в таблицу поле и определите его тип как «счетчик». Все остальное Access сделает самостоятельно. В это поле будет автоматически вноситься уникальное число даже при работе с Вашей базой в сетевом варианте (с нескольких компьютеров одновременно). Если до сохранения созданной таблицы ключевые поля не были определены, Microsoft Access предложит создать ключевое поле автоматически. При нажатии кнопки «Да» будет создано ключевое поле счетчика.

 

 

 

Третья нормальная форма

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

Осталось установить связи между таблицами, и база данных будет готова к работе. Microsoft Access поддерживает четыре типа связей: один к одному, один ко многим, много к одному и много ко многим.

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

Связь «многие ко многим» возникает между двумя таблицами в тех случаях, когда одна запись из первой таблицы может быть связана более чем с одной записью из второй таблицы, а одна запись из второй таблицы может быть связана более чем с одной записью из первой таблицы. Таких связей следует избегать, так как реляционная модель не позволяет непосредственно работать с ними. Microsoft Access или любая другая реляционная СУБД в этом случае бесполезны. Всегда можно ввести в базу данных еще одну - две промежуточные таблицы и тем самым избежать возможных неприятностей при разработке интерфейса приложения, используя понятные и безотказно работающие связи «один ко многим». Некоторые варианты заданий из этого пособия могут привести к связи «многие ко многим» между таблицами базы данных.

 

 

 

Создание (формирование) запросов

Запрос (query) – это средство выбора необходимой информации из базы данных. Вопрос, сформированный по отношению к базе данных, и есть запрос. Применяются два типа запросов: по образцу (QBE – Query by example) и структурированный язык запросов (SQL – Structured Query Language).
QBE - запрос по образцу – средство для отыскания необходимой информации в базе данных. Он формируется не на специальном языке, а путем заполнения бланка запроса в окне Конструктора запросов.
SQL – запросы – это запросы, которые составляются (программистами) из последовательности SQL – инструкций. Эти инструкции задают, что надо сделать с входным набором данных для генерации выходного набора. Все запросы Access строит на основе SQL – запросов, чтобы посмотреть их, необходимо в активном окне проектирования запроса выполнить команду Вид/SQL.
Существует несколько типов запросов: на выборку, на обновление, на добавление, на удаление, перекрестный запрос, создание таблиц. Наиболее распространенным является запрос на выборку. Запросы на выборку используются для отбора нужной пользователю информации, содержащейся в таблицах. Они создаются только для связанных таблиц.



Поделиться:


Последнее изменение этой страницы: 2016-09-19; просмотров: 328; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.119.131.178 (0.069 с.)