Целостность сущности и ссылок

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ

 

ФГБОУ ВО «ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ

ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

 

ФАКУЛЬТЕТ ЗАОЧНОГО ОБУЧЕНИЯ

 

КУРСОВАЯ РАБОТА

 

по дисциплине «Современные системы управления базами данных в автоматизированном производстве»

по теме «Разработка системы создания и управления параметрами стандартных изделий типа винт ГОСТ11738-84»

 

 

Разработал:

студент группы ТО-142:

___________

принял: ст. преп. кафедры АОМП

__________ Новокщенов С.Л.

 

 
Воронеж 2017

СОДЕРЖАНИЕ

 

ЗАДАНИЕ. 3

ВВЕДЕНИЕ. 4

1 ТЕОРЕТИЧЕСКИЙ ВОПРОС: Реляционная модель данных. 5

2 СРЕДСТВА РЕАЛИЗАЦИИ.. 9

3 АЛГОРИТМ УПРАВЛЯЮЩЕЙ ДАННЫМИ ПРОГРАММЫ.. 11

4 ТЕКСТ ПРОГРАММЫ.. 12

5 ПРИМЕРРАБОТЫ.. 19

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ.. 21

 

 


 

ЗАДАНИЕ

 

Для САПР SolidWorks разработать систему управления моделями стандартных изделий типа винтГОСТ11738-84(рис. №1).

Рисунок №1

 


ВВЕДЕНИЕ

 

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

В общем виде такая система должна:

- обеспечивать получение общих и/или детализированных отчетов по итогам работы;

- позволять легко определять тенденции изменения важнейших показателей;

- обеспечивать получение информации, критической по времени, без существенных задержек;

- выполнять точный и полный анализ данных.

Большинство из перечисленных элементов реализованы в современных системах электронного документооборота (PDM), но иногда возникают и повседневные задачи, которые с целью повышения производительности труда, можно решить и самостоятельно, силами своего конструкторского или технологического бюро.

Целью преподавания дисциплины «Современные системы управления базами данных» является получение студентами необходимых навыков для создания и использования собственных систем управления данными вместе с системами автоматизированного проектирования (CAD/CAM/CAE).

 


 

ТЕОРЕТИЧЕСКИЙ ВОПРОС: Реляционная модель данных

 

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

Другими словами, мы использовали понятия так называемой реляционной модели данных.

 Модель данных описывает некоторый набор родовых понятий и признаков, которыми должны обладать все конкретные СУБД и управляемые ими базы данных, если они основываются на этой модели. Наличие модели данных позволяет сравнивать конкретные реализации, используя один общий язык.

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

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

Общая характеристика

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

В структурной части модели фиксируется, что единственной структурой данных, используемой в реляционных БД, является нормализованное n-арное отношение.

По сути дела, в предыдущих двух разделах этой лекции мы рассматривали именно понятия и свойства структурной составляющей реляционной модели.

В манипуляционной части модели утверждаются два фундаментальных механизма манипулирования реляционными БД - реляционная алгебра и реляционное исчисление.

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

Целостность сущности и ссылок

Наконец, в целостной части реляционной модели данных фиксируются два базовых требования целостности, которые должны поддерживаться в любой реляционной СУБД. Первое требование называется требованием целостности сущностей.

Объекту или сущности реального мира в реляционных БД соответствуют кортежи отношений. Конкретно требование состоит в том, что любой кортеж любого отношения отличим от любого другого кортежа этого отношения, т.е. другими словами, любое отношение должно обладать первичным ключом. Как мы видели в предыдущем разделе, это требование автоматически удовлетворяется, если в системе не нарушаются базовые свойства отношений.

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

Например, представим, что нам требуется представить в реляционной базе данных сущность ОТДЕЛ с атрибутами ОТД_НОМЕР (номер отдела), ОТД_КОЛ (количество сотрудников) и ОТД_СОТР (набор сотрудников отдела). Для каждого сотрудника нужно хранить СОТР_НОМЕР (номер сотрудника), СОТР_ИМЯ (имя сотрудника) и СОТР_ЗАРП (заработная плата сотрудника). Как мы вскоре увидим, при правильном проектировании соответствующей БД в ней появятся два отношения: ОТДЕЛЫ ( ОТД_НОМЕР, ОТД_КОЛ ) (первичный ключ - ОТД_НОМЕР) и СОТРУДНИКИ ( СОТР_НОМЕР, СОТР_ИМЯ, СОТР_ЗАРП, СОТР_ОТД_НОМ ) (первичный ключ - СОТР_НОМЕР).

Как видно, атрибут СОТР_ОТД_НОМ появляется в отношении СОТРУДНИКИ не потому, что номер отдела является собственным свойством сотрудника, а лишь для того, чтобы иметь возможность восстановить при необходимости полную сущность ОТДЕЛ. Значение атрибута СОТР_ОТД_НОМ в любом кортеже отношения СОТРУДНИКИ должно соответствовать значению атрибута ОТД_НОМ в некотором кортеже отношения ОТДЕЛЫ.

Атрибут такого рода называется внешним ключом, поскольку его значения однозначно характеризуют сущности, представленные кортежами некоторого другого отношения (т.е. задают значения их первичного ключа). Говорят, что отношение, в котором определен внешний ключ, ссылается на соответствующее отношение, в котором такой же атрибут является первичным ключом.

Требование целостности по ссылкам, или требование внешнего ключа состоит в том, что для каждого значения внешнего ключа, появляющегося в ссылающемся отношении, в отношении, на которое ведет ссылка, должен найтись кортеж с таким же значением первичного ключа, либо значение внешнего ключа должно быть неопределенным (т.е. ни на что не указывать). Для нашего примера это означает, что если для сотрудника указан номер отдела, то этот отдел должен существовать.

Ограничения целостности сущности и по ссылкам должны поддерживаться СУБД. Для соблюдения целостности сущности достаточно гарантировать отсутствие в любом отношении кортежей с одним и тем же значением первичного ключа. С целостностью по ссылкам дела обстоят несколько более сложно.

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

Здесь существуют три подхода, каждый из которых поддерживает целостность по ссылкам. Первый подход заключается в том, что запрещается производить удаление кортежа, на который существуют ссылки (т.е. сначала нужно либо удалить ссылающиеся кортежи, либо соответствующим образом изменить значения их внешнего ключа). При втором подходе при удалении кортежа, на который имеются ссылки, во всех ссылающихся кортежах значение внешнего ключа автоматически становится неопределенным. Наконец, третий подход (каскадное удаление) состоит в том, что при удалении кортежа из отношения, на которое ведет ссылка, из ссылающегося отношения автоматически удаляются все ссылающиеся кортежи.

В развитых реляционных СУБД обычно можно выбрать способ поддержания целостности по ссылкам для каждой отдельной ситуации определения внешнего ключа. Конечно, для принятия такого решения необходимо анализировать требования конкретной прикладной области.


СРЕДСТВА РЕАЛИЗАЦИИ

 

Для реализации базовых функций предлагаемого приложения используем среду Microsoft Visual Basic (рис. 2).

Рисунок №2 - ИнтерфейсMicrosoftVisualBasic

Visual Basic.NET — объектно-ориентированный язык программирования, который можно рассматривать как очередной виток эволюции VisualBasic (VB), реализованный на платформе Microsoft .NET. VB.NET не имеет обратной совместимости с более ранней версией (VisualBasic 6.0).

VisualBasic .NET является одним из самых эффективных инструментов для ускоренного создания приложений в операционной системе MicrosoftWindows и интернета. Visual Basic.NET идеально подходит как для разработчиков, уже работающих на языке VisualBasic, так и для тех, кто хочет создавать приложения с использованием платформы Microsoft .NET. В составе VisualBasic .NET поставляется мощная интегрированная среда разработки c усовершенствованными визуальными конструкторами, которая позволяет создавать приложения за короткое время.

Программа, написанная на VisualBasic.NET, хранится в проекте, визуальная часть приложения создается на форме (рис. №3).

Рисунок №3 - Окно конструктора формы

Форма является основным объектом графического интерфейса (окно приложения), на её основе мы будем создавать интерфейс для пользователя.

Интерфейс предлагаемого приложения показан на рис. №4.

 

 

Рисунок №4 – Интерфейс разрабатываемого приложения


Дата добавления: 2018-08-06; просмотров: 130; Мы поможем в написании вашей работы!

Поделиться с друзьями:




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