Проектирование базы данных для коммерческого предприятия

Федеральное агентство по образованию
Государственное образовательноеучреждение высшего
профессионального образования
«Ярославский государственныйуниверситет имени П.Г. Демидова»
Университетский колледж
Проектирование Базы Данных длякоммерческого предприятия
Выполнил:
студентгруппы 31 И
230103Автоматизированные
системыобработки информации
 и управления (в промышленности)
Проверил:
___________________________
                               (подпись)                                 
Решениецикловой комиссии о допуске к защите
«_____»_____________200___г.Протокол №_____

Ярославль 2007Реферат
            86страниц, 1 таблица, 8 схем, 7 рисунков, 11 источников информации,
2 приложения.
Ключевые слова: базы данных, разработка,программирование, среда Delphi,инфологическое моделирование, объект, нормализация, язык SQL, визуальные компоненты, моделиданных, склад.
Объект исследования: BorlandDelphi 7 как средстворазработки баз данных, проектирование и моделирование баз данных,проектирование баз данных по предметной области «Склад».  
Цель работы: разработка программного обеспечения дляавтоматизации учета продукции на складе — базу данных, реализующую хранениеданных, организацию доступа к ним и редактирование.
Основныезадачи:
1.     
2.     BorlandDelphi 7;
3.     
Основныерезультаты:
1.     
2.     
Содержание
 TOC o «1-3» h z u Реферат. PAGEREF _Toc167009056 h 2
Содержание. PAGEREF _Toc167009057 h 3
Введение. PAGEREF _Toc167009058 h 4
Глава1. Области применения баз данных.PAGEREF _Toc167009059 h 6
1.1.Новые тенденции развития СУБД и областей их применения.PAGEREF _Toc167009060 h 6
2.1.Новые области применения баз данных.PAGEREF _Toc167009061 h 8
Глава2. Базы данных. PAGEREF _Toc167009062 h 13
2.1. Классификация баз данных. PAGEREF _Toc167009063 h 14
2.2. Структурные элементыбазы данных. PAGEREF _Toc167009064 h 15
2.3.Понятие информационного объекта.PAGEREF _Toc167009065 h 16
2.4. Нормализация отношений.PAGEREF _Toc167009066 h 17
2.5. Типы связей.PAGEREF _Toc167009067 h 19
Глава3. Модели данных. PAGEREF _Toc167009068 h 20
3.1. Сведенья о моделяхданных.PAGEREF _Toc167009069 h 20
3.2. Виды моделей данных.PAGEREF _Toc167009070 h 22
3.3. Проектирование моделиданных. PAGEREF _Toc167009071 h 24
3.4.Представление данных с помощью модели «сущность-связь». PAGEREF _Toc167009072 h 26
Глава4. Создание базы данных. PAGEREF_Toc167009073 h 32
4.1.Определение модели данных. PAGEREF_Toc167009074 h 32
4.2.Инфологическое моделирование предметной области. PAGEREF _Toc167009075 h 33
Глава5. Среда Delphi как средство для разработки СУБД.PAGEREF _Toc167009076 h 35
5.1.Программный продукт Delphi.PAGEREF _Toc167009077 h 35
5.2.Мощный объектно-ориентированный язык.PAGEREF _Toc167009078 h 39
5.3.Объектно-ориентированная модель программных компонент.PAGEREF _Toc167009079 h 41
5.4.Библиотека визуальных компонент.PAGEREF _Toc167009080 h 42
5.5.Формы, модули и метод разработки «Two-Way Tools».PAGEREF _Toc167009081 h 46
5.6.Масштабируемые средства для построения баз данных.PAGEREF _Toc167009082 h 47
5.7.Настраиваемая среда разработчика.PAGEREF _Toc167009083 h 50
Глава6. Язык SQL… PAGEREF _Toc167009084 h 52
Глава7. База данных «Магазин автозапчастей». PAGEREF _Toc167009085 h 59
7.1.Исходные данные на проектирование. PAGEREF _Toc167009086 h 59
7.2.Реализация проекта. PAGEREF _Toc167009087 h 61
Заключение. PAGEREF _Toc167009088 h 66
Библиографическийсписок. PAGEREF _Toc167009089 h 67
Приложения. PAGEREF _Toc167009090 h 68
Введение
            Современная жизнь немыслима безэффективного управления. Важной категорией являются системы обработкиинформации, от которых во многом зависит эффективность работы любогопредприятия или учреждения. Такая система должна:
§ 
§ 
§ 
§ 
            Современные СУБД в основном являютсяприложениями Windows, так как данная среда позволяетболее полно использовать возможности персональной ЭВМ, нежели среда DOS. Снижение стоимости высокопроизводительных ПК обусловил нетолько широкий переход к среде Windows, где разработчикпрограммного обеспечения может в меньше степени заботиться о распределенииресурсов, но также сделал программное обеспечение ПК в целом и СУБД в частностименее критичными к аппаратным ресурсам ЭВМ.
            Среди наиболее ярких представителейсистем управления базами данных можно отметить: LotusApproach, MicrosoftAccess, BorlanddBase, BorlandParadox,MicrosoftVisualFoxPro, MicrosoftVisualBasic, а также баз данных MicrosoftSQLServer и Oracle, используемые в приложениях, построенных по технологии«клиент-сервер». Фактически, у любой современной СУБД существует аналог,выпускаемый другой компанией, имеющий аналогичную область применения ивозможности, любое приложение способно работать со многими форматамипредставления данных, осуществлять экспорт и импорт данных благодаря наличиюбольшого числа конвертеров. Общепринятыми, также, являются технологи, позволяющиеиспользовать возможности других приложений, например, текстовых процессоров,пакетов построения графиков и т.п., и встроенные версии языков высокого уровня(чаще – диалекты SQL и/или VBA) и средства визуального программирования интерфейсов разрабатываемыхприложений. Поэтому уже не имеет существенного значения на каком языке и наоснове какого пакета написано конкретное приложение, и какой формат данных внем используется. Более того, стандартом «де-факто» стала «быстрая разработкаприложений» или RAD (от английского RapidApplicationDevelopment), основанная нашироко декларируемом в литературе «открытом подходе», то есть необходимость ивозможность использования различных прикладных программ и технологий дляразработки более гибких и мощных систем обработки данных. Поэтому в одном рядус «классическими» СУБД все чаще упоминаются языки программирования VisualBasic4.0 и VisualC++, которые позволяют быстро создавать необходимые компонентыприложений, критичные по скорости работы, которые трудно, а иногда невозможноразработать средствами «классических» СУБД. Современный подход к управлениюбазами данных подразумевает также широкое использование технологии «клиент-сервер».
Таким образом, насегодняшний день разработчик не связан рамками какого-либо конкретного пакета,а в зависимости от поставленной задачи может использовать самые разныеприложения. Поэтому, более важным представляется общее направление развитияСУБД и других средств разработки приложений в настоящее время.    
Глава 1. Области применения баз данных.1.1. Новые тенденции развития СУБД и областей их применения.
            Развитие информационных технологийсопровождается двумя весьма любопытными тенденциями в том, что касаетсятерминологии. С одной стороны, мы наблюдаем, постоянное обновление названийдля, в общем-то, одних и тех же вещей (конечно, технологии тоже развиваются, нотемпы смены их имен гораздо выше). С другой — мы используем старые термины дляпонятий, смысл которых уже совсем не тот, что раньше. Именно второй случайимеет место применительно к СУБД.
            В толковом словаре по вычислительнойтехнике, выпущенном в 2002 г., приводится такое определение системы управлениябазами данных (database management system): «приложение, обеспечивающеесоздание, хранение, обновление и поиск информации в базе данных, а такжеуправление безопасностью и целостностью данных». В целом это толкованиебыло верно и 30 лет назад, но все же содержательная часть СУБД сейчас совсеминая, чем в те далекие времена (отметим, что в определении уже отсутствуетдополнительная фраза, которая использовалась для уточнения понятия еще восемьлет назад, — «программная оболочка, находящаяся между базой данных и пользователем»).
            В последнее десятилетие мы наблюдаемситуацию, когда СУБД превратились из сугубо внутреннего технологическогодополнения к прикладным программам в самостоятельный продукт, вокруг которогостроятся приложения для пользователей; иначе говоря, из одного из компонентовинформационной    системы — в платформудля построения таких систем.
            В этой ситуации стоит обратитьвнимание на изменение содержания «платформа Microsoft». Традиционнопод этим термином подразумевалась операционная система, Windows. Однакоприменительно к серверной платформе все чаще мы встречаем связку Windows Server+ SQL Server. Более того, представляется вполне реальным, что с выходом вначале следующего года новой версии Microsoft SQL Server (рабочее названиеYukon) мы столкнемся с ситуацией, когда все остальные продукты Microsoft будутуже писаться не под Windows, а под Yukon. Хотя существуют и будут существоватьнастольные базы данных: как ни странно, но Microsoft Access судя по тому какего представляет Microsoft  — это тожеСУБД.
Историческисистемы управления базами данных ориентировались на решение задач, связанных впервую очередь с транзакционной обработкой структурированной информации.Безусловно, наилучшим, проверенным временем решением здесь была и остаетсяреляционная модель СУБД. Однако в последние годы область применения баз данныхнеизменно расширялась. С одной стороны, нужно управлять более широким наборомформатов данных, переходя к решению общих проблем управления корпоративнойинформацией. С другой — именно СУБД берут на себя основные функции интеграцииданных и приложений корпоративных систем. (По данным Gartner Group,информационные отделы предприятий расходуют до 40% своего бюджета на решениезадач интеграции действующих компонентов баз данных.) Именно этим объясняетсяактивный интерес к обсуждению архитектурных принципов и возможностей реализациибаз данных различных моделей — постреляционных, объектно-реляционных, XML.
2.1. Новые области применения баз данных.
            Если постарался классифицироватьсуществующие области применения баз данных, а так же оценить перспективы ихразвития в настоящее время, то можно получить примерный список наиболеераспространенных классов, получивших распространение и применение во всехобластях применения баз данных. Этот список будет выглядеть следующим образом:
§ 
§ 
§ 
§   сведения  о населении и о социальной среде
§ 
§ 
§   природныхресурсах (земля, вода, недра, биоресурсы, гидрометеорология, вторичные ресурсыи отходы, экологическая  обстановка)
§ 
§ 
§   назначения.
            Экономические задачи, для решениякоторых необходимо применять программное обеспечение СУБД, весьма обширны иразнообразны. На его основе строятся информационные системы  предприятий различных уровней (от малых докрупных). Области применения баз данных традиционно занимает те областидеятельности человека, где ему приходится сталкиваться с большим объемомразнообразной информации. Первые базы данных в основном применялись в такихфундаментальных  науках как, ядернаяфизика, химия, космонавтика,  и другихнауках требующих систематического подхода к работе с данными. Дальнейшееразвитие компьютерных технологий  икомпьютеризация общества привела к тому что, базы данных стали разрабатыватьсяпрактически во всех сферах деятельности человека, и применятся в разныхпредприятиях от сельского хозяйства до финансово-экономических систем.Последними инновациями применения баз данных стала всемирная паутина Internet,которая по своей сути является огромной базой данных. Соответственно такоераспространения баз данных требует и новых программных средств управления ими.
            Вот несколько примеров  приложений нового поколения, которыеопределяют потребности в новых средствах разработки баз данных и возможностяхприменения их. Мы рассмотрим кратко пять таких приложений.
            1.База данных Системы наблюденияЗемли (EOSDIS)
            Система наблюдения Земли (EOS — Earth Observing System) представляет собой множество спутников, которыезапускает NASA начиная с 1998. Их назначение — сбор информации, необходимой дляисследователей, занятых изучением долгосрочных тенденций состояния атмосферы,океанов, земной поверхности. Спутники будут поставлять информацию в объеме 1/3Пбайт (Petabyte — 1015 байт) в год. Предполагается, что эти данные будутинтегрироваться с уже существующей информацией, а также с данными из другихисточников (зарубежные спутники, наземные станции наблюдения) и накапливаться вбазе данных EOSDIS (EOS Data and Information System) невиданных преждемасштабов.
            EOSDIS предназначена дляинформационного обслуживания, как специалистов, так и неспециалистов.Предполагается, например, что доступ к ней будут иметь даже школьники, которыесмогут знакомиться с моделями формирования погодных условий, с воздействиемвулканических явлений и т.п. Вот наиболее сложные задачи, возникающие в связи сэтим проектом.
            Поддержка многих тысяч потребителейинформации с огромной интенсивностью и объемом запросов, которые могут иметькак произвольный, так и регламентированный характер (как, например, ежедневноеобновление данных).
Выработкаэффективных механизмов просмотра и поиска интересующей информации.
            2.Электронная коммерция
            В настоящее время существует рядпроектов, общая цель которых — предоставить потенциальным потребителямоперативный доступ к каталогам товаров с последующим электронным оформлениемпокупок. Предполагается, что возможным промежуточным звеном подобных систембудет электронный брокер. Брокеры аккумулируют данные из множественныхисточников путем сбора информации, например, из нескольких каталогов предметоводежды. Конечному покупателю такой брокер предложит оперативное оформлениепокупок.
            Как и проект EOSDIS, системаэлектронной коммерции предполагает сетевое взаимодействие огромного числаучастников торговых сделок. Разница заключается в том, что в EOSDIS имеетсяодин главный поставщик информации и множество ее потребителей, а торговаясистема подразумевает наличие множества поставщиков и множества потребителей.Кроме того, участники в данном случае могут испытывать определенное взаимноенедоверие и, возможно, имеют свои частные закрытые информационные системы.Наиболее сложные проблемы, связанные с проектами этого рода, следующие.
            Система электронной коммерции должнаиметь высоконадежные средства распределенной аутентификации и перевода денежныхсумм.
            3.Информационная системаздравоохранения
            Врачу в процессе работы необходимдоступ к множеству источников информации. Например, истории болезни одногопациента могут находиться в разных больницах, клиниках, страховых учреждениях.Для получения полной картины их все следует собрать. Точно так же существуетмножество систем и баз данных, предоставляющих информацию о лекарствах,лечебных процедурах, диагностических средствах.
            Записи лечащего врача, результатыобследований, информация о счетах за лечение, договора медицинского страхованиядля каждого пациента должны фиксироваться в электронной форме и оставатьсядоступными для последующего использования. Внедрение современных информационныхтехнологий в области здравоохранения окажет кардинальное воздействие на такиехарактеристики медицинского обслуживания, как стоимость, качество, повсеместнаядоступность. Вот ряд проблем, которые возникают в связи с реализацией подобнойсистемы.
            Интеграция разнородных источниковуже накопленной информации. Средства контроля доступа, обеспечивающиенеобходимый уровень конфиденциальности. Интерфейсы доступа к информации,удобные для разных категорий работников здравоохранения.
            4.Электронные публикации
            В издательском бизнесе, как и всфере здравоохранения, ожидается в ближайшем будущем ряд глубоких перемен.Становится возможным, например, хранение книг и статей в электронном виде иоперативная доставка их потребителям по высокоскоростным сетевым каналам.Далее, само понятие публикации существенно расширяется — документ можетсодержать графические, аудио- или видео-включения, аннотацию, другиесопроводительные элементы. Общий объем информации, которая доступна ужесегодня, превышает размеры базы данных EOSDIS, а в ближайшем будущем ожидаетсяего рост примерно на порядок.
            Естественным следствием этих переменстанет сближение издательской и образовательной сфер. Место «живых»лекций, читаемых для небольшого числа студентов, займут «образовательныепродукты» — электронные документы, состоящие из текстовых, аудио-, видео-и других компонентов и включающие элементы интерактивного тренинга. Такойпродукт сможет удовлетворить потребности огромного числа студентов. В связи сэтими перспективами можно обозначить следующие направления исследований.
            Обработка и пересылка очень большихобъемов данных с высокой скоростью. Типичный документ содержит объекты данныхразмером в диапазоне от мегабайт до гигабайт и может требовать доставки врежиме реального времени.
Защитаинтеллектуальной собственности. Подразумевается взимание небольших денежныхсумм за пользование информацией, запрет на ее перепродажу. Организация огромныхобъемов информации и обеспечение доступа к ним.
            5. Коллективное проектирование
            Крупные и сложные проекты, например,в области самолетостроения, реализуются сегодня объединенными усилияминескольких независимых компаний. Время жизни информации, относящейся к подобнымпроектам, может измеряться десятилетиями, поскольку она необходима дляподдержки, модификации и развития. Конструкторские решения, прежде чем статьфизической реальностью, могут проходить стадии компьютерного моделирования — для исследования рабочих свойств, удобства сборки изделий, правильностифункционирования. Эволюция конструкторских схем начинается задолго до выпускапервого изделия и продолжается еще долгое время после этого, что приводит кразрастанию информационной конфигурации, которая должна отражать текущеесостояние разработки, экспериментальные версии, историческое развитие. Дляразных сфер конструирования характерно использование разнородныхконструкторских инструментальных систем, основанных на разных моделях исистемах обозначений. Причем процесс конструирования может продолжаться дольше,чем существуют применяемые инструменты, а значит, компоненты одной и той жеконструкции могут разрабатываться с применением разных версий инструментальной системы.Таким образом, в связи с электронным проектированием можно сформулироватьследующие задачи.
            Как и в некоторых из упоминавшихсяранее сфер, здесь также встает задача интеграции разнородных источниковисторически накопленной информации.
            Коллективное проектирование требуетновых форм управления совместным доступом к базам данных и механизмовразделения информации.
            Для регулирования совместновыполняющихся разнородных процессов, таких как моделирование и конструирование,необходимы средства управления потоками работ, основанные на четко определенныхвзаимодействиях посредством долговременных транзакций.
Глава 2. Базы данных
Цель любойинформационной системы — обработка данных об объектах реального мира. В широкомсмысле слова база данных — это совокупность сведений о конкретных объектахреального мира в какой-либо предметной области. Под предметной областью принятопо­нимать часть реального мира, подлежащего изучению для организации управленияи, в ко­нечном счете, автоматизации, например предприятие, вуз и т д.
Создавая базуданных, пользователь стремится упорядочить информацию по различ­ным признакам ибыстро извлекать выборку с произвольным сочетанием признаков. Сде­лать этовозможно, только если данные структурированы.
Структурирование —это введение соглашений о способах представления данных.
Неструктурированныминазывают данные, записанные, например, в текстовом файле.
Пользователями базыданных могут быть различные прикладные программы, про­граммные комплексы, атакже специалисты предметной области, выступающие в роли по­требителей илиисточников данных, называемые конечными пользователями.
В современнойтехнологии баз данных предполагается, что создание базы данных, ее поддержка иобеспечение доступа пользователей к ней осуществляются централизованно спомощью специального программного инструментария — системы управления базамиданных.
База данных (БД) —это поименованная совокупность структурированных данных, относящихся к определеннойпредметной области.
Система управлениябазами данных (СУБД) — это комплекс программ­ных и языковых средств, необходимыхдля создания баз данных, поддержа­нияих в актуальном состоянии и организации поиска в них необходимой информации.
Централизованныйхарактер управления данными в базе данных предполагает необходимость существованиянекоторого лица (группы лиц), на которое возлагаются функции ад­министрированияданными, хранимыми в базе.
2.1. Классификация баз данных
По технологииобработки данных базы данных подразделяются на централизованные и распределенные.
Централизованнаябаза данных хранится в памяти одной вычислительной системы. Если эта вычислительнаясистема является компонентом сети ЭВМ, возможен распределенный доступ к такойбазе. Такой способ использования баз данных часто приме­няют в локальных сетях ПК.
Распределенная базаданных состоит из нескольких, возможно пересекаю­щихся или даже дублирующихдруг друга частей, хранимых в различных ЭВМ вычисли­тельной сети. Работа стакой базой осуществляется с помощью системы управления распределенной базойданных (СУРБД).
По способу доступа к данным базы данныхразделяются на базы данных с локальным доступом и базы данных с удаленным(сетевым) доступом.
Системыцентрализованных баз данных с сетевым доступом предполагают различные архитектурыподобных систем:
• файл-сервер;
• клиент-сервер.
Файл-сервер. Архитектура систем БД ссетевым доступом предполагает выделение одной из машин сети в качествецентральной (сервер, файлов). На такой машине хранится совместно используемаяцентрализованная БД. Все другие машины сети выполняют функции рабочих станций,с помощью которых поддерживается доступ пользовательской системы кцентрализованной базе данных. Файлы базы данных в соответствии спользовательскими запросами передаются на рабочие станции, где в основном ипроизводится обработка. При большой интенсивности доступа к одним и тем жеданным производительность информационной системы падает. Пользователи могутсоздавать также на рабочих станци­ях локальные БД, которые используются имимонопольно.
Клиент-сервер. В этой концепцииподразумевается, что помимо хранения централи­зованной базы данных центральнаямашина (сервер базы данных) должна обеспечивать вы­полнение основного объемаобработки данных. Запрос на данные, выдаваемый клиентом (рабочей станцией),порождает поиск и извлечение данных на сервере. Извлеченные данные (но нефайлы) транспортируются по сети от сервера к клиенту. Спецификой архитектурыклиент-сервер является использование языка запросов SOL.2.2. Структурные элементы базы данных
Понятие базы данныхтесно связано с такими понятиями структурных элементов, как поле, запись, файл(таблица).
Поле — элементарнаяединица логической организации данных, которая соответст­вует неделимой единицеинформации — реквизиту. Для описания поля используются сле­дующие характеристики:
§ 
§ (символьный, числовой,календарный);
§ 
§ 
Запись —совокупность логически связанных полей. Экземпляр записи — отдельная реализациязаписи, содержащая конкретные значения ее полей.
Файл (таблица) —совокупность экземпляров записей одной структуры.
В структуре записифайла указываются поля, значения которых являются ключами первичными (ПК),которые идентифицируют экземпляр записи, и вторичными (ВК), которые выполняютроль поисковых или группировочных признаков (по значению вторичного ключа можнонайти несколько записей).
2.3. Понятие информационного объекта.
Информационныйобъект — это описание некоторой сущности (реального объекта, явления, процесса,события) в виде совокупности логически связанных реквизитов (информационныхэлементов). Такими сущностями для информационных объектов могут служить: цех,склад, материал, вуз, студент, сдача экзаменов и т.д.
Информационныйобъект определенного реквизитного состава и структуры образует класс (тип),которому присваивается уникальное имя (символьное обозначение), напримерСтудент, Сессия, Стипендия.
Информационныйобъект имеет множество реализации — экземпляров, каждый из которых представленсовокупностью конкретных значений реквизитов и идентифицируется значением ключа(простого — один реквизит или составного — несколько реквизитов). Остальныереквизиты информационного объекта являются описательными. При этом одни и те жереквизиты в одних информационных объектах могут быть ключевыми, а в других — описательными. Информационный объект может иметь несколько ключей.
2.4. Нормализацияотношений.
Одни и те же данные могут группироваться втаблицы (отношения) различными способами, т.е. возможна организация различныхнаборов отношений взаимосвязанных информацион­ных объектов. Группировкаатрибутов в отношениях должна быть рациональной, т.е. минимизирующейдублирование данных и упрощающей процедуры их обработки и обновления.
Определенный наборотношений обладает лучшими свойствами при включении, мо­дификации, удаленииданных, чем все остальные возможные наборы отношений, если он отвечаеттребованиям нормализации отношений.
Нормализацияотношений — формальный аппарат ограничений на фор­мирование отношений (таблиц),который позволяет устранить дублирова­ние, обеспечивает непротиворечивостьхранимых в базе данных, уменьшает трудозатраты на ведение (ввод, корректировку)базы данных.
Выделены тринормальные формы отношений и предложен механизм, позволяющий любое отношениепреобразовать к третьей (самой совершенной) нормальной форме.
Первая нормальная форма.
Отношениеназывается нормализованным или приведенным к первой нормальной форме, если все его атрибуты простые (далеенеделимы). Преобразование отношения к первой нор­мальной форме может привести кувеличению количества реквизитов (полей) отношения и изменению ключа.
Например, отношениеСтудент = (Номер, Фамилия, Имя, Отчество, Дата, Группа) на­водится в первойнормальной форме.
Вторая нормальная форма.
Чтобы рассмотретьвопрос приведения отношений ко второй нормальной форме, необходимо дать поясненияк таким понятиям, как функциональная зависимость и полная функциональнаязависимость.
Описательныереквизиты информационного объекта логически связаны с общим для них ключом, этасвязь носит характер функциональной зависимости реквизитов.
Функциональнаязависимость реквизитов — зависимость, при которой экземпляре информационногообъекта определенному значению ключевого реквизита соответствует только однозначение описательного реквизита.
Такое опре