Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Ключевые поля таблиц. Понятия первичного и внешнего ключа
Ключ – это столбец (может быть несколько столбцов), добавляемый к таблице и позволяющий установить связь с записями в другой таблице. Существуют ключи двух типов: первичные и вторичные или внешние. Первичный ключ – это одно или несколько полей (столбцов), комбинация значений которых однозначно определяет каждую запись в таблице. Первичный ключ не допускает значений Null и всегда должен иметь уникальный индекс. Первичный ключ используется для связывания таблицы с внешними ключами в других таблицах. Внешний (вторичный) ключ - это одно или несколько полей (столбцов) в таблице, содержащих ссылку на поле или поля первичного ключа в другой таблице. Внешний ключ определяет способ объединения таблиц. Из двух логически связанных таблиц одну называют таблицей первичного ключа или главной таблицей, а другую таблицей вторичного (внешнего) ключа или подчиненной таблицей. СУБД позволяют сопоставить родственные записи из обеих таблиц и совместно вывести их в форме, отчете или запросе. Существует три типа первичных ключей: ключевые поля счетчика (счетчик), простой ключ и составной ключ. Поле счетчика (Тип данных «Счетчик»). Тип данных поля в базе данных, в котором для каждой добавляемой в таблицу записи в поле автоматически заносится уникальное числовое значение. Простой ключ. Если поле содержит уникальные значения, такие как коды или инвентарные номера, то это поле можно определить как первичный ключ. В качестве ключа можно определить любое поле, содержащее данные, если это поле не содержит повторяющиеся значения или значения Null. Составной ключ. В случаях, когда невозможно гарантировать уникальность значений каждого поля, существует возможность создать ключ, состоящий из нескольких полей. Чаще всего такая ситуация возникает для таблицы, используемой для связывания двух таблиц многие - ко - многим. Необходимо еще раз отметить, что в поле первичного ключа должны быть только уникальные значения в каждой строке таблицы, т.е. совпадение не допускается, а в поле вторичного или внешнего ключа совпадение значений в строках таблицы допускается. Если возникают затруднения с выбором подходящего типа первичного ключа, то в качестве ключа целесообразно выбрать поле счетчика
19. Типы связей между таблицами, практические примеры создания связей. Одним из важнейших достоинств реляционных баз данных состоит в том, что можно хранить логически сгруппированные данные в разных таблицах и задавать связи между ними, объединяя в единую базу. Для задания связи таблицы должны иметь поля с одинаковым типом данных. Связь между таблицами устанавливает отношение между совпадающими значениями в этих полях. Такая организация позволяет уменьшить избыточность хранимых данных, упрощает их ввод, удаление, поиск Данные об объектах в базе связаны между собой. Эти связи принято изображать следующим образом: A F(x)↔G(x) B где
Функции F(x) и G(x) могут принимать значения 1 – единичная и M – множественная связь. Обычно рассматривают три вида связей. Связь один к одному (1:1): означает, что каждому элементу объекта А может соответствовать только один элемент объекта В и наоборот, например:
Связь один ко многим (1:М): означает, что могут существовать экземпляры объекта А, которым соответствует более одного экземпляра объекта В. Но при этом каждому экземпляру объекта В может соответствовать только один экземпляр объекта А, например:
Связь многие ко многим (M: M): означает, что может существовать экземпляр объекта А, которому соответствует несколько экземпляров объекта В и наоборот. Например:
Одной записи в таблице Клиенты может соответствовать много записей в таблице Заказы. ОШИБКА (НЕ N, А М!) У одной книги может быть несколько авторов, а каждого автора может быть несколько книг.
Т акую связь реализовать невозможно. Такая связь реализуется только при помощи третьей таблицы – таблицы связки, имеющей составной ключ
Внимание! Связь многие ко многим преобразуется в две связи один ко многим при помощи таблицы связки.
Понятие СУБД.
Файловые информационные системы разрабатывались на основе позадачного принципа. Суть его в том, что для каждой задачи создавался свой набор данных и разрабатывалась своя прикладная программа, которая решала поставленную задачу. Схематически это можно представить так:
При создании по этому принципу сложных информационных систем специалисты и пользователи столкнулись с проблемами, которые заложены в самой сути этого принципа, а именно:
Эти проблемы привели специалистов по автоматизации информационных систем к пониманию того, что нужен иной подход к организации и обработке данных, который позволил бы:
Выполнение этих требований привело к созданию единой базы логически связанных данных для всех задач конкретной предметной области и разработке одной общей программы, которая позволяет создать базу и манипулировать ее данными и которая получила название СУБД – система управления базой данных. Схематически эта идея представлена так:
Концепция СУБД была разработана в 1972г. в США фирмой IBM. Первые СУБД создавались для больших и мини-ЭВМ. Впоследствии были созданы СУБД и для персональных компьютеров. Система управления базами данных – это совокупность программных и языковых средств, предназначенных для управления данными, ведения базы данных и обеспечения взаимодействия с прикладными программами (ГОСТ 20886-85). Кроме того, в комплекс программных средств СУБД входят программы защиты от несанкционированного доступа, контроля достоверности данных и др. Таким образом, в целом система управления базой данных представляет собой универсальное программное средство, предназначенное для:
К причинам, вызвавшим появление СУБД, относят следующие: растущие объемы обрабатываемой информации, сложные структуры организации данных, необходимость коллективного доступа к данным, высокие требования к скорости обработки и достоверности получения результата и др.
Система управления базами данных включает в себя: средства создания базы данных, средства работы с базой данных, сервисные средства. Средства создания базы данных – это язык описания данных, язык манипулирования данными, дополнительные средства. Связь пользователя с базой данных осуществляется двумя видами языков: языка описания данных и языка манипулирования данными. Язык описания данных – это высокоуровневый непроцедурный язык декларативного типа, предназначенный для описания логической структуры данных. Человек-проектировщик базы использует его для перевода логической структуры базы данных в ее физическую структуру.Он содержит средства для обозначения файлов и их записей, полей записей, указания типов данных. Он позволяет указать количество записей в файле, порядок их расположения, порядок расположения полей записей, длину записей, длину полей и диапазон допустимых значений данных. Языкманипулирования данными представляет собой совокупность конструкций, обеспечивающих выполнение основных операций по модификации данных: ввод, удаление, редактирование и выборку данных из базы. Этот язык содержит набор команд, позволяющих включать новые данные в базу, заменять старые данные новыми, удалять ненужные данные, осуществлять поиск, выборку и другие действия. Дополнительные средства – это обычно визуальные средства, используемые для удобства и упрощения работы с базой, а также программа отладчик, предназначенная для тестирования приложений в процессе их разработки. Средства работы с базой данных позволяют создавать удобный интерфейс, а также необходимую конфигурацию экранного представления вводимой и выводимой информации: окна, свет, цветность и т.п. Они состоят из средств конфигурации и средств операций с данными. Сервисные средства позволяют использовать другие системы в процессе проектирования и работы с базой, например, можно взять информацию из Microsoft Word или Microsoft Excel и перенести ее в Microsoft Access. СУБД позволяет решать широкий класс экономических задач, в том числе и те, что решает табличный процессор, но обратное не всегда справедливо, так как СУБД обладает в этом смысле более широкими возможностями. Поэтому при решении любой задачи надо вначале рассмотреть возможность ее решения более простыми средствами (типа Excel) и лишь в сложных случаях пользоваться СУБД. Существует следующие принципиальные отличия между системами управления реляционными базами данных и табличными процессорами:
1. Все реляционные базы данных разрабатываются с целью обеспечения эффективной обработки больших объемов информации, намного превышающих те, которые ориентированы на электронные таблицы. Реляционные базы данных минимизируют общий объем базы данных. Для этого таблицы, содержащие повторяющиеся данные, разбиваются на несколько связанных таблиц. 2. Реляционная база данных может легко связать несколько таблиц так, что для пользователя они будут представляться единой таблицей. Реализовать такую возможность в системах управления электронными таблицами сложно, а иногда просто невозможно. 3. Когда имеется необходимость в использовании одних и тех же данных разными специалистами и их вводом и анализом занимаются разные люди. Если данные находятся в электронной таблице, то вносить изменение может только один человек, что касается базы данных, то взаимодействовать с ней могут несколько пользователей одновременно, модифицируя содержимое одной и той же таблицы. 4. Если необходимо обеспечить защиту данных от несанкционированного доступа, контролировать их значения, поддерживать целостность данных, то это можно сделать только средствами СУБД. Архитектура СУБД. Современные СУБД различаются по своим характеристикам и выполняемым ими функциям. Однако практически во всех из них логически можно выделить три компоненты:
Подсистема средств проектирования представляет собой набор инструментов, обеспечивающих проектирование и реализацию баз данных и их приложений. Обычно этот набор включает в себя средства для создания таблиц, форм, запросов и отчетов и других объектов. Подсистема обработки обеспечивает работу с компонентами, созданными с помощью средств проектирования. Это – процессор форм, процессор запросов, генератор отчетов, средства обработки, основанные на процедурных языках. Так, в Access в имеется компонент, реализующий построение формы и связывающий элементы формы с данными таблиц. · Ядросистемы выполняет функцию посредника между подсистемами проектирования и обработки и данными. Ядро СУБД получает запросы от двух других компонентов, выраженные в терминах таблиц, строк и столбцов, и преобразует эти запросы в команды операционной системы, выполняющие запись и чтение данных с физического устройства. Кроме того, ядро участвует в управлении транзакциями, блокировке, резервном копировании и вос · Функции этих трех компонентов в СУБД взаимосвязаны, и для обеспечения корректной работы СУБД они должны взаимодействовать друг с другом и с операционной системой по соответствующим протоколам. Взаимодействие этих компонент позволяет СУБД управлять базой данных; вести разработку, отладку и выполнение прикладных программ и выполнять ряд вспомогательных операций (сервис).
22.Функциональные возможности СУБД
Функциональные возможности СУБД были сформулированы Э. Коддом в 1982 году в виде восьми основных функций. 1. Хранение, извлечение и обновление данных – это самая фундаментальная функция СУБД. 2. Наличие доступного конечным пользователям каталога, в котором хранится описание элементов данных. Ключевой особенностью идеологии ANSI/SPARC является наличие интегрированного системного каталога с данными о схемах, пользователях, приложениях и т.д. Он называется еще словарем данных и является хранилищем информации, описывающей данные в базе, то есть это данные о данных, или метаданные. Обычно в этом каталоге хранятся такие сведения: имена, типы и размеры элементов данных; имена связей; накладываемые на данные ограничения поддержки целостности; имена санкционированных пользователей; статистические данные и др. 3. Поддержка механизма транзакций. Транзакция представляет собой набор действий, выполняемых отдельным пользователем или прикладной программой для доступа или изменения содержимого базы. Если во время выполнения транзакции произошел сбой, то база данных попадает в противоречивое состояние, так как некоторые изменения будут внесены, а другие – нет. Поэтому все частичные изменения должны быть отменены для возвращения базы в непротиворечивое состояние. Механизм транзакций гарантирует выполнение либо всех операций обновления данной транзакции, либо ни одной из них. 4. Поддержка механизма, гарантирующего корректное обновление данных при параллельном выполнении операций обновления многими пользователями. Параллельный доступ сравнительно просто организовать, если все пользователи выполняют только чтение данных, поскольку в этом случае они не могут помешать друг другу. Однако, когда два или больше пользователей одновременно получают доступ к базе данных на обновление, легко может возникнуть конфликт с нежелательными последствиями. 5. Поддержка средств восстановления базы при ее повреждении или разрушении. Сбой может произойти в результате выхода из строя системы или запоминающего устройства, ошибки аппаратного или программного обеспечения, которые могут привести к останову СУБД. Кроме того, пользователь может обнаружить ошибку во время выполнения транзакции и потребовать ее отмены. Во всех этих случаях СУБД должна иметь механизм восстановления базы данных и возврата ее к непротиворечивому состоянию. 6. Гарантия доступа к базе только санкционированным пользователям. Обеспечение безопасности данных за счет их шифрования, защиты паролем, разграничения уровней доступа. 7. Способность к интеграции с коммуникационным программным обеспечением для осуществления обмена данными с терминалами, за которыми работают пользователи. 8. Обеспечение целостности данных, т.е. наличие средств, позволяющих удостовериться, что содержимое базы всегда остается полным и корректным. Целостность базы данных означает, что в базе содержится полная, непротиворечивая и адекватно отражающая предметную область информация: объекты базы данных и их взаимосвязи. Поддержание целостности включает проверку и восстановление в случае обнаружения противоречий в базе данных. Целостное состояние базы описывается с помощью ограничений целостности в виде условий, которым должны удовлетворять хранимые в базе данные, например, диапазон возможных ограничений атрибутов. Производительностьсовременных СУБД оценивается по следующим параметрам:
На производительность СУБД оказывают влияние и такие факторы, как:
Классификация СУБД. Основой разработки и функционирования любой СУБД является модель данных, в которой находит отражение предметная область. Поэтому основным признаком классификации СУБД является тип поддерживаемой моделиданных. Согласно этому признаку СУБД делят на иерархические, сетевые, реляционные и др. В 1970г. Э. Кодд опубликовал статью о реляционной модели данных. Определение реляционной СУБД дано в монографии К.Дейта «Руководство по реляционной СУБД DB2». Пер. с англ.-М.:Финансы и статистика, 1988.С-320: «… будем называть систему реляционной, если она поддерживает, по крайней мере, реляционные базы данных, т.е. базы данных, которые могут восприниматься пользователем как таблицы, и только как таблицы; операции селекции, проекции и соединения реляционной алгебры, не требуя при этом, чтобы каким-либо образом были предопределены физические пути доступа для поддержки этих операций». Первые коммерческие реляционные СУБД появились в начале 80-х годов ХХ века. Это были разработки компаний IBM, Oracle Corporation, General Technology Inc. и др. Реляционные СУБД просты в использовании, повышают производительность программистов при разработке прикладных программ, хорошо приспособлены для работы в архитектуре клиент-сервер, позволяют параллельную обработку базы данных, хорошо приспособлены к графическим пользовательским интерфейсам. Скоростные характеристики этих СУБД поддерживаются специальными средствами ускоренного доступа к информации – индексированием баз данных. Реляционные СУБД продолжают совершенствоваться, предоставляя пользователю возможность решать все более сложные задачи. Однако реляционные СУБД не являются последним словом в развитии СУБД. Сегодня уже речь идет об объектно-ориентированных, объектно-реляционных, многомерных и других моделях. По степени универсальности различают два класса СУБД: системы общего назначения и специализированные системы.
По режиму работы современные СУБД делят на однопользовательские (настольные) и многопользовательские. Настольные обычно обеспечивают возможность создания персональных баз данных и недорогих приложений, работающих с ними. Следующим шагом в развитии настольных СУБД было появление их сетевых многопользовательских версий, которые обеспечивали одновременную работу нескольких пользователей с централизованной базой, размещаемой на сервере сети. По каждому запросу пользователя к базе все данные из нее пересылаются на его компьютер. В результате на компьютере пользователя создается локальная копия базы данных. Затем СУБД пользователя выполняет запрос. На сервере может располагаться также и СУБД, которая в этом случае запускается с компьютера пользователя. Наиболее эффективная работа с централизованной базой данных обеспечивается при архитектуре клиент-сервер. На сервере сети размещается база и устанавливается мощная серверная СУБД – сервер баз данных, представляющий собой программный комплекс, обеспечивающий хранение больших объёмов информации, ее обработку и предоставление пользователям в сетевом режиме. На компьютере-клиенте приложение формирует запрос к базе. Серверная СУБД обеспечивает интерпретацию запроса, его выполнение, формирование результата запроса и пересылку его по сети на клиентский компьютер, который интерпретирует его необходимым образом и предоставляет пользователю. Клиентское приложение может также посылать запрос на обновление базы – и серверная СУБД вносит необходимые изменения. В архитектуре клиент-сервер функции клиентского приложения и серверной СУБД разделены. В этом случае уменьшается сетевой трафик, так как через сеть передаются только результаты запросов. Груз файловых операций ложится в основном на сервер, который мощнее клиентов и поэтому способен быстрее обслуживать запросы. Как следствие этого, уменьшается потребность клиентских приложений в оперативной памяти. Поскольку серверы способны хранить большое количество данных, то на компьютерах-клиентах освобождается значительный объём дискового пространства для других приложений. Существенно повышается степень безопасности базы данных, так как правила целостности данных определяются в серверной СУБД и являются едиными для всех приложений, использующих эту базу. На рынке серверных СУБД лидируют следующие СУБД: Oracle 8, Microsoft SQL Server 2000, Informix, Sybase, DB2. По способу распределения данных выделяют централизованные и децентрализованные СУБД. Централизованная СУБД – это такая, когда база данных находится на одном сервере. Децентрализованная – осуществляет работу с базой данных, разбитых на несколько, физически распределенных по сети. Имеются и другие признаки классификации:
|
||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2022-09-03; просмотров: 83; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.220.64.128 (0.035 с.) |