Информационные системы и базы данных 1 Определение информационной системы (ИС) согласно Федеральному закону РФ от 27 июля 2006 г. N 149-ФЗ «Об информации,

Презентация:



Advertisements
Похожие презентации
Реляционная модель – это особый метод рассмотрения данных, содержащий данные в виде таблиц, способов работы и манипуляции с ними в виде связей. структура,
Advertisements

Информационные системы. Базы данных. Информационная система – любая система обработки информации (шир)
Технология хранения, поиска и сортировки информации в базах данных
Базы данных в электронных таблицах 1. Представление базы данных в виде таблицы и формы.
Даталогическое проектирование. 1. Представление концептуальной модели средствами модели данных СУБД Общие представления о моделях данных СУБД С одной.
Базы данных Хранение, поиск и сортировка информации.
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ СТАВРОПОЛЬСКИЙ ГОСУДАРСТВЕННЫЙ АГРАРНЫЙ УНИВЕРСИТЕТ.
Определения Банк данных (БнД) это система специальным образом организованных дан­ных - баз данных, программных, технических, языковых, организационно-
Основы SQL Запросы к базе данных. Что такое база данных SQL? SQL (Structured Query Language - «Структурированный язык запросов») - универсальный компьютерный.
База данных – это совокупность структурированных данных определенного назначения. Структурирование данных – это объединение данных по определенным параметрам.
Модуль 1. Математические основы баз данных и знаний.
Базы данных Реляционная база данных MS Access. Повторение База данных организованная совокупность данных из какой-либо предметной области, предназначенная.
Билет Табличные базы данных (БД): основные понятия (поле, запись, первичный ключ записи); типы данных. Системы управления базами данных и принципы.
СУБД Microsoft Access 2003 Элементы языка SQL. Язык SQL SQL (Structured Query Language) – структурированный язык запросов Язык SQL применяется во многих.
Технология хранения, поиска и сортировки информации в базах данных Сумина О. В. МОУ СОШ 69.
Виды моделей данных. Ядром любой базы данных является модель данных. Модель данных представляет собой множество структур данных, ограничений целостности.
Выполнила студентка группы ТУ-501 Полозова Ю.О. База данных (БД) представляет собой совокупность структурированных данных, хранимых в памяти вычислительной.
Учебная дисциплина «Базы данных» для студентов специальности Бизнес-информатика (бакалавриат) ЛЕКЦИЯ 3 ВВЕДЕНИЕ В РЕЛЯЦИОННУЮ МОДЕЛЬ ДАННЫХ Вопрос.
Реляционная модель данных Определения Основные операции над отношениями (реляционная алгебра)
СУБД Базы данных. Информационная система Совокупность базы данных и всего комплекса аппаратно- программных средств для ее хранения, изменения, и поиска.
Транксрипт:

Информационные системы и базы данных 1 Определение информационной системы (ИС) согласно Федеральному закону РФ от 27 июля 2006 г. N 149-ФЗ «Об информации, информационных технологиях и о защите информации»: «информационная система совокупность содержащейся в базах данных информации и обеспечивающих ее обработку информационных технологий и технических средств». В широком смысле в понятие ИС также включают системный персонал. Классификация ИС: по области применения (системы, используемые в производстве, образовании, здравоохранении, торговле и др. отраслях); по целевой функции – управляющие; – информационно-справочные; – поддержки-принятия решений. База данных (БД) - это интегрированная компьютерная структура совместного доступа, в которой храниться совокупность специальным образом организованных данных, отображающих состояние объектов и их взаимосвязей в рассматриваемой предметной области.

СУБД 2 Система управления базами данных (СУБД) – это комплекс языковых и программных средств, с помощью которых осуществляется управление структурой базы данных и контроль доступа к данным, хранящимся в ней. В общем случае под СУБД можно понимать любой программный продукт, поддерживающий процессы создания, ведения и использования БД. К СУБД относятся следующие основные виды программ: полнофункциональные СУБД; серверы БД; клиенты БД; средства разработки программ работы с БД.

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

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

Представление концептуальной модели с помощью ER-диаграммы 5 Основу ER-модели составляют следующие компоненты. Сущность (логический объект) – персона, местоположение или предмет, сведения о которых подлежат сбору и хранению. Сущность представлена в виде прямоугольника. Название сущности (имя существительное) записывается в центре прямоугольника, как правило, заглавными буквами и предпочтительнее в единственном числе на русском языке (ПРОДУКТ лучше, чем Продукты). Если ER-диаграмма связана с реляционной моделью, сущность отображается на реляционную таблицу. Каждая строка реляционной таблицы соответствует экземпляру сущности. Сущность описывается набором атрибутов. Каждый атрибут описывает отдельное свойство сущности. Например, сущность ОБОРУДОВАНИЕ имеет такие атрибуты, как наименование, геометрические размеры, масса и т.д. Связь описывает соединение между данными. Большинство связей описывает соединение между двумя сущностями. Для обозначения типа связи используется термин связность (на ER-диаграммах связность записывается рядом с прямоугольником, соответствующим сущности). Связь изображается на ER-диаграмме ромбом, соединенным с соответствующей сущностью. Название связи (в глагольной форме) записывается внутри ромба.

Типы связей на ER-диаграммах 6 Один-ко-многим. 1:М «ПРОДУКТ относится к ТИПУ ПРОДУКТОВ» К одному и тому же типу продуктов может относиться несколько продуктов, но каждый из продуктов относится только к одному типу. Многие-ко-многим. M:N «ОБОРУДОВАНИЕ используется в ТЕХНОЛОГИЧЕСКОМ ПРОЦЕССЕ» Одно и то же оборудование может быть задействовано в разных технологических процессах. В то же время в одном технологическом процессе может использоваться разное оборудование. Один-к-одному. 1:1 «ПРОДУКТ изготавливается по ТЕХНОЛОГИЧЕСКОМУ ПРОЦЕССУ» Для каждого продукта существует один технологически процесс, по которому он изготавливается. В свою очередь каждый технологический процесс существует для одного продукта.

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

Изображение связей на ER-диаграммах 8 Другой широко известный способ построения ER-диаграмм называется «птичья лапка». Название «птичья лапка» произошло от специфичного вида символа, которым обозначается связь в направлении «многие».

Реляционная модель данных 9 Реляционная модель состоит из трех частей: структурной части; целостной части; манипуляционной части. Структурная часть описывает, какие объекты рассматриваются реляционной моделью. Постулируется, что единственной структурой данных, используемых в реляционной модели, являются нормализованные n-арные отношения. Отношения (relation) в реляционной модели представляются в виде таблиц (создатель реляционной модели Э. Ф. Кодд использовал термин «отношение» как синоним слова «таблица»). Под таблицей понимается двумерная структура, состоящая из строк и столбцов, содержащая некоторые данные. Таблица содержит группу связанных сущностей, т. е. набор сущностей; по этой причине термины набор сущностей и таблица чаще всего означают одно и то же. Табличное представление данных помогает определить связи сущностей, значительно упрощая задачу проектирования БД.

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

Типы и назначение ключей 11 Суперключ - атрибут (или комбинация атрибутов), уникально идентифицирующий каждую сущность в таблице. Потенциальный ключ - минимальный суперключ. Суперключ, который не содержит подмножества атрибутов, которое само по себе является суперключом. Первичный ключ - потенциальный ключ, выбранный для уникальной идентификации всех остальных значений атрибутов в любой строке. НЕ может содержать пустых значений. Альтернативный ключ - потенциальный ключ, который не был выбран в качестве первичного ключа. Вторичный ключ - Атрибут (или комбинация атрибутов), используемый исключительно в целях поиска данных и не требующий уникальности. Внешний ключ - атрибут (или комбинация атрибутов) в одной таблице, значения которого должны или совпадать со значениями первичного ключа в другой таблице, или быть пустыми (null). Ключи обычно используют для достижения следующих целей: 1.исключения дублирования значений в ключевых атрибутах. 2.упорядочения кортежей. Возможно упорядочение по возрастанию или убыванию значений всех ключевых атрибутов, а также смешанное упорядочение (по одним – возрастание, по другим – убывание). 3.ускорения работы с кортежами отношения. 4.организации связывания таблиц

Связывание таблиц 12 Логическое связывание таблиц производится с помощью ключа связи. Ключ связи по аналогии с обычным ключом таблицы, состоит из одного или нескольких полей, которые в данном случае называют полями связи. Суть связывания состоит в установлении соответствия полей связи между двумя таблицами, т.е. связь создается, когда две таблицы совместно используют один атрибут с общим значением. Конкретнее, первичный ключ одной таблицы появляется в качестве внешнего (foreign) ключа в связанной таблице. Связь 1:М имеет место в случае, когда одной записи первой (иногда ее еще называют главной) таблицы соответствует несколько записей второй (подчиненной) таблицы.

Организация связи многие-ко-многим в реляционных СУБД 13 Связь вида М:N возникает в случаях, когда нескольким записям одной таблицы, соответствует несколько записей другой таблицы. При этом каждая сторона отношения выглядит как отношение один-ко-многим. Однако если рассматривать взаимосвязь таблиц с двух сторон, становится очевидным, что ни одна из таблиц не может быть главной и для их связывания необходима третья таблица. Связующая таблица представляет собой промежуточную таблицу, которая служит мостом между двумя таблицами в отношении многие-ко-многим. Ее ключ состоит из ключевых полей этих таблиц, с каждой из которых она связана отношением один- ко-многим. Помимо ключевых полей, связующая таблица может содержать дополнительные поля, которых нет в связываемых таблицах, но которые могут иметь значение для каждой из них. Таким образом, отношение многие-ко-многим складывается из отношений многие-к-одному и один-ко-многим.

Целостная часть реляционной модели 14 Целостность БД есть свойство БД, означающее, что в ней содержится полная, непротиворечивая и адекватно отражающая предметную область информация. База данных не понимает «смысла» хранимых данных. «Смыслом» данных для СУБД является весь набор ограничений целостности. Если все ограничения выполнены, то СУБД считает, что данные корректны. Ограничение целостности - это некоторое утверждение, которое может быть истинным или ложным в зависимости от состояния базы данных. Поддержка ограничений целостности, которые являются следствием реляционной модели данных, как правило является функцией реляционной СУБД.

Виды ограничений целостности Целостность на уровне сущности означает, что по определенным критериям можно однозначно выделить сущность внутри набора сущностей. Как следует из свойств реляционных таблиц таким критерием может являться первичный ключ. Для обеспечения целостности на уровне сущности в первичном ключе недопустимы пустые значения, null (т. е. полное отсутствие данных). Пример: каждый материал имеет уникальный код 2. Целостность на уровне ссылки означает, свойство сущености одного отношения ссылаться на существующую сущность другого отношения. Так как связь между таблицами устанавливается с помощью внешнего ключа, то можно сказать, что внешний ключ должен содержать значения, совпадающие с первичным ключом другого отношения или пустые значения. Пример: продукт должен принадлежать к одному из типов продуктов. 3. Целостность, определяемая пользователем. Пользователь может определить другие ограничения, которые вообще говоря могут являться достаточно произвольными утверждениями, проявляющимися как следствие определенных свойств объектов предметной области и/или их взаимосвязей.

Этапы проектирования информационных систем 16 При проектировании информационных систем можно выделить несколько этапов: 1.Концептуальное (инфологическое) проектирование - построение формализованной модели предметной области без ориентации на какую-либо конкретную СУБД На этом этапе могут быть разработаны следующие виды моделей: функционально-ориентированные (могут быть представлены в виде: IDEF0, IDEF3, DFD); объектно-ориентированные (могут быть представлены в виде: UML-диаграмм, ER-диаграмм).

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

Этапы проектирования информационной системы 18 2.Логическое (даталогическое) проектирование – отображение инфологической модели на модель данных, используемую в конкретной СУБД, например на реляционную модель данных. Для реляционных СУБД даталогическая модель – набор таблиц, обычно с указанием ключевых полей, связей между таблицами.

Этапы проектирования информационной системы 19 3.Физическое проектирование – реализация логической модели средствами конкретной СУБД, а также выбор решений, связанных с физической средой хранения данных: выбор типов данных, определение индексов.

Манипуляционная часть реляционной модели 20 Представлена в виде языка запросов. Запрос представляет собой специальным образом описанное требование, определяющее состав производимых над БД операций по выборке, удалению или модификации хранимых данных. Для подготовки запросов с помощью различных СУБД чаще всего используются два основных языка описания запросов: язык QBE (Query By Example) язык запросов по образцу (пример – конструктор запросов в MS Access); SQL (Structured Query Language) структурированный язык запросов.

Использование оператора SELECT для поиска данных 21 SELECT Tech_Process.Pr_Code, Equip_in_TP.Work_time, Equipment.* FROM Equipment, Equip_in_TP, Tech_Process WHERE Equipment.Inv_num=Equip_in_TP.Inv_num AND Equip_in_TP.Pr_Code=Tech_Process.Pr_Code AND Tech_Process.Pr_Code LIKE %пек% ORDER BY Tech_Process.Pr_Code DESC, Equipment.Inv_num; SELECT указывает что необходимо выбрать данные из указанных столбцов и (если необходимо) выполнить перед выводом их преобразование в соответствии с указанными выражениями и (или) функциями FROM (из) перечисленных таблиц, в которых расположены эти столбцы WHERE (где) строки из указанных таблиц должны удовлетворять указанному перечню условий отбора строк GROUP BY (группируя по) указанному перечню столбцов с тем, чтобы получить для каждой группы единственное агрегированное значение, используя во фразе SELECT SQL-функции HAVING (имея) в результате лишь те группы, которые удовлетворяют указанному перечню условий отбора групп ORDER BY упорядочив результаты выборки по указанному перечню столбцов по возрастанию/убыванию значений

Примеры поисковых запросов 22 Выбрать все записи из таблицы Tech_Process: SELECT * FROM Tech_Process; SELECT Pr_Code, developer, TP_Type FROM Tech_Process; С помощью BETWEEN... AND... (находится в интервале от... до...) можно отобрать строки, в которых значение какого-либо столбца находятся в заданном диапазоне: SELECT * FROM Equipment WHERE Hight BEETWEEN 4 AND 5; Выбрать всю информацию об оборудовании из таблицы Equipment, высота которого находится в интервале между 4 и 5 м.

Примеры поисковых запросов 23 Для столбца текстового типа форма: "имя_столбца LIKE текстовая_константа" позволяет отыскать все значения указанного столбца, соответствующие образцу, заданному "текстовой_константой". Символы этой константы интерпретируются следующим образом: _ (подчеркивание) – заменяет любой одиночный символ; % (процент) – заменяет любую последовательность из n символов (где n может быть нулем), все другие символы означают просто сами себя. SELECT * FROM Product WHERE Pr_Code LIKE %ор%; Ряд СУБД допускают позволяют при поиске не делать различий между малыми и большими буквами.