База данных проектной организации

Автор: Пользователь скрыл имя, 17 Января 2013 в 16:00, курсовая работа

Краткое описание

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

Оглавление

Введение
1. Теоретическая информация по БД
1.1 Описание структуры БД
1.2 Нормализация БД
1.3 ER-диаграмма
2. Запросы к БД
3. Функциональная схема приложения
Заключение

Файлы: 1 файл

Бд проектной организации.docx

— 57.15 Кб (Скачать)


Содержание

 

Введение

1. Теоретическая информация по БД

1.1 Описание  структуры БД 

1.2 Нормализация БД

1.3 ER-диаграмма

2. Запросы к БД

3. Функциональная схема приложения

Заключение

 

 

Введение

 

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

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

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

 

 

1. Теоретическая информация по БД

 

База данных (БД, database) - поименованная совокупность структурированных данных, относящихся к определенной предметной области.

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

Система управления базами данных (СУБД) - комплекс программных и языковых средств, необходимых для создания и модификации базы данных, добавления, модификации, удаления, поиска и отбора информации, представления информации на экране и в печатном виде, разграничения прав доступа к информации, выполнения других операций с базой.

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

Таблица базы данных (table) - регулярная структура, которая состоит из однотипных строк (записей, records), разбитых на столбцы (поля, fields).

В теории реляционных баз данных синоним таблицы - отношение (relation), в котором строка называется кортежем, а столбец называется атрибутом.

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

Ключевой элемент таблицы (ключ, regular key) - такое ее поле (простой ключ) или строковое выражение, образованное из значений нескольких полей (составной ключ), по которому можно определить значения других полей для одной или нескольких записей таблицы. На практике для использования ключей создаются индексы - служебная информация, содержащая упорядоченные сведения о ключевых значениях. В реляционной теории и концептуальной модели понятие "ключ" применяется для атрибутов отношения или сущности.

Первичный ключ (primary key) - главный ключевой элемент, однозначно идентифицирующий строку в таблице. Могут также существовать альтернативный (candidate key) и уникальный (unique key) ключи, служащие также для идентификации строк в таблице.

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

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

Связь (relation) - функциональная зависимость между объектами. В реляционных базах данных между таблицами устанавливаются связи по ключам, один из которых в главной (parent, родительской) таблице - первичный, второй - внешний ключ - во внешней (child, дочерней) таблице, как правило, первичным не является и образует связь "один ко многим" (1:N). В случае первичного внешнего ключа связь между таблицами имеет тип "один к одному" (1:1). Информация о связях сохраняется в базе данных.

Внешний ключ (foreign key) - ключевой элемент подчиненной (внешней, дочерней) таблицы, значение которого совпадает со значением первичного ключа главной (родительской) таблицы. Ссылочная целостность данных (referential integrity) - набор правил, обеспечивающих соответствие ключевых значений в связанных таблицах. Хранимые процедуры (stored procedures) - программные модули, сохраняемые в базе данных для выполнения определенных операций с информацией базы.

Триггеры (triggers) - хранимые процедуры, обеспечивающие соблюдение условий ссылочной целостности данных в операциях изменения первичных ключей (возможно каскадное изменение данных), удалении записей в главной таблице (каскадное удаление в дочерних таблицах) и добавлении записей или изменении данных в дочерних таблицах. Объект (object) - элемент информационной системы, обладающий определенными свойствами (properties) и определенным образом реагирующий на внешние события (events).Система - совокупность взаимодействующих между собой и с внешним окружением объектов. Репликация базы данных - создание копий базы данных (реплик), которые могут обмениваться обновляемыми данными или реплицированными формами, отчетами или другими объектами в результате выполнения процесса синхронизации.

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

Язык SQL (Structured Query Language) - универсальный язык работы с базами данных, включающий возможности ее создания, модификации структуры, отбора данных по запросам, модификации информации в базе и прочие операции манипулирования базой данных.

Классификация БД и СУБД

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

Централизованная база данных хранится в памяти одной вычислительной системы. Эта вычислительная система может  быть мэйнфреймом - тогда доступ к ней организуется с использованием терминалов - или файловым сервером локальной сети ПК.

Распределенная база данных состоит  из нескольких, возможно, пересекающихся или даже дублирующих друг друга  частей, которые хранятся в различных  ЭВМ вычислительной сети. Работа с  такой базой осуществляется с  помощью системы управления распределенной базой данных (СУРБД).

По способу доступа к данным базы данных разделяются на базы данных с локальным доступом и базы данных с сетевым доступом.

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

Централизованные базы данных с  сетевым доступом могут иметь  следующую архитектуру:

  1. файл-сервер;
  2. клиент-сервер базы данных;
  3. "тонкий клиент" - сервер приложений - сервер базы данных (трехуровневая архитектура).

Клиент-сервер. В этой архитектуре на выделенном сервере, работающем под управлением серверной операционной системы, устанавливается специальное программное обеспечение (ПО) - сервер БД, например, Oracle. СУБД подразделяется на две части: клиентскую и серверную. Основа работы сервера БД - использование языка запросов (SQL). Запрос на языке SQL, передаваемый клиентом (рабочей станцией) серверу БД, порождает поиск и извлечение данных на сервере. Извлеченные данные транспортируются по сети от сервера к клиенту. Тем самым, количество передаваемой по сети информации уменьшается во много раз.

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

Реляционные системы

Реляционная модель данных основывается на математических принципах, вытекающих непосредственно из теории множеств и логики предикатов. Эти принципы впервые были применены в области  моделирования данных в конце 1960-х  гг. доктором Е.Ф. Коддом, в то время  работавшим в IBM, а впервые опубликованы - в 1970 г. [1].

Техническая статья "Реляционная  модель данных для больших разделяемых  банков данных" доктора Е.Ф. Кодда, опубликованная в 1970 г., является родоначальницей современной теории реляционных БД. Доктор Кодд определил 13 правил реляционной модели (которые называют 12 правилами Кодда).

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

Некоторые команды Transact-SQL

Для выборки  данных в Transact-SQL существует команда SELECT, которая позволяет как делать простую выборку всех данных из одной таблицы текущей базы данных, так и выполнять сложные запросы одновременно к множеству таблиц различных баз данных, расположенных на нескольких серверах сети В самом простейшем случае выборка данных производится с помощью команды:SELECT * FROM table_name

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

Полный  синтаксис команды SELECT следующий:

 

SELECT select_list

[INTO new_table_] FROM table_source

[WHERE search_condition]

[GROUP BY group_by_expression]

[HAVING search_condition]

[UNION]

[ORDER BY order_expression [ASC | DESC]]

[COMPUTE compure_expression]

[FOR] [OPTION <query_hint>]

 

 

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

Для выполнения сортировки данных, возвращаемых запросом, в распоряжении пользователей имеется  раздел ORDER BY, специально предназначенный  для определения параметров порядка  вывода строк. Синтаксис этого раздела таков:

 

ORDER BY {order_by_expression [ASC | DESC]} [,...n]

INSERT - Добавляет  запись в таблицу. 

Синтаксис команды:

INSERT [INTO]

 {table_name | view_name} [(column_list)]

{DEFAULT VALUES | values_list | select_statement}

 

При указании значений конкретный полей вместо использования каких-либо значений можно использовать ключевое слово DEFAULT. Вставка пустой строки приводит к добавлению пробела ' ', а не значения NULL.

 

1.1 Описание структуры БД

 

База  данных составлялась на основе реляционной  системы. Реляционная модель данных основывается на математических принципах, вытекающих непосредственно из теории множеств и логики предикатов. Эти принципы впервые были применены в области моделирования данных в конце 1960-х гг. доктором Е.Ф. Коддом, в то время работавшим в IBM, а впервые опубликованы – в 1970 г.

Техническая статья «Реляционная модель данных для больших разделяемых банков данных» доктора Е.Ф. Кодда, опубликованная в 1970 г., является родоначальницей современной теории реляционных БД. Доктор Кодд определил 13 правил реляционной модели (которые называют 12 правилами Кодда).

12 правил Кодда:

  1. Реляционная СУБД должна быть способна полностью управлять базой данных через ее реляционные возможности.
  2. Информационное правило – вся информация в реляционной БД (включая имена таблиц и столбцов) должна определяться строго как значения в таблицах.
  3. Гарантированный доступ – любое значение в реляционной БД должно быть гарантированно доступно для использования через комбинацию имени таблицы, значения первичного ключа и имени столбца
  4. Поддержка пустых значений (null value) – СУБД должна уметь работать с пустыми значениями (неизвестными или неиспользованными значениями), в отличие от значений по умолчанию и независимо для любых доменов.
  5. Онлайновый реляционный каталог – описание БД и ее содержания должны быть представлены на логическом уровне как таблицы, к которым можно применять запросы, используя язык базы данных.
  6. Исчерпывающий язык управления данными – по крайней мере, один из поддерживаемых языков должен иметь четко определенный синтаксис и быть всеобъемлющим. Он должен поддерживать описание структуры данных и манипулирование ими, правила целостности, авторизацию и транзакции.
  7. Правило обновления представлений (views) – все представления, теоретически обновляемые, могут быть обновлены через систему.
  8. Вставка, обновление и удаление – СУБД поддерживает не только запрос на отбор данных, но и вставку, обновление и удаление
  9. Физическая независимость данных – на программы-приложения и специальные программы логически не влияют изменения физических методов доступа к данным и структур хранилищ данных.
  10. Логическая независимость данных – на программы-приложения и специальные программы логически не влияют, в пределах разумного, изменения структур таблиц.
  11. Независимость целостности – язык БД должен быть способен определять правила целостности. Они должны сохраняться в онлайновом справочнике, и не должно существовать способа их обойти.
  12. Независимость распределения – на программы-приложения и специальные программы логически не влияет, первый раз используются данные или повторно.
  13. Неподрывность – невозможность обойти правила целостности, определенные через язык базы данных, использованием языков низкого уровня

Информация о работе База данных проектной организации