Понятие атрибута. Ключи и ключевые атрибуты
Атрибут – это наименьшая поименованная единица данных, к которой СУБД может адресоваться непосредственно, и с помощью которой выполняется построение всех остальных структур. Атрибут имеет имя и значение.
Первичный ключ – это атрибут или группа атрибутов, однозначно идентифицирующая экземпляр сущности и удовлетворяющий ряду требований. Ключи могут быть сложными (составными, мультиатрибутные)т.е. содержащими несколько атрибутов. В одной сущности могут оказаться несколько атрибутов, претендующих на роль первичного ключа. Их называют потенциальными ключами Например: Сотрудник (Таб.номер, ФИО, Номер паспорта, Должность, Город, Улица, дом,). Пот. ключи: Таб.номер, ФИО, Номер паспорта. Для того чтобы стать первичным, потенциальный ключ должен удовлетворять ряду требований. Уникальность. Два экземпляра не должны иметь одинаковых значений возможного ключа, чтобы однозначно идентифицировать каждую строку таблицы. Компактность. Сложный возможный ключ не должен содержать ни одного атрибута, удаление которого не приводило бы к утрате уникальности (т.е. в состав ключа не нужно вводить дополнительных атрибутов, если существующий набор атрибутов обеспечивает уникальность). При выборе перв. ключа предпочтение отдается ключам, содержащим меньшее количество атрибутов. Обязательное значение. Атрибуты ключа не должны содержать Null значений. Например: если допускается, что сотрудник может не иметь паспорта, то атрибут Номер паспорта не подойдет на роль первичного ключа. Неизменяемость. Значение атрибута ключа не должно изменяться в течении всего существования сущности. Каждая сущность должна иметь, по крайней мере, один потенциальный ключ. Такой ключ становится первичным. Некоторые сущности могут иметь более одного первичного ключа. Тогда один из них становится первичным, а остальными альтернативными ключами. Альтернативный ключ – это потенциальный ключ, не ставший первичным . Роль ключа основана на концепции определяемости. В контексте таблиц БД выражение «А определяет В и С» означает, что зная значение атрибута А можно определить значение атрибутов В и С. (А → В, С) Принцип определяемости очень важен, поскольку он используется при формулировании центральной концепции реляционных баз данных – функциональной зависимости.
(см Нормализацию).
Определение функциональной зависимости должно быть обобщено таким образом, чтобы охватить те случаи, когда значение определяющего атрибута встречается в таблице более одного раза. Тогда функциональную зависимость можно определить так: Атрибут А определяет атрибут В (т.е. В функционально зависит от А), если все строки в таблице совпадающие по значению атрибута А, также совпадают по значению атрибута В. Расширим классификацию ключей. Введем понятие суперключа. Суперключ – это ключ, уникально идентифицирующий каждую сущность т.е. суперключ функционально определяет все атрибуты сущности. Суперключ может быть избыточным. Потенциальный ключ – это суперключ без избыточности. Первичный ключ – потенциальный ключ, удовлетворяющий ряду требований. Внешний ключ – это атрибут, значение которого совпадает со значением первичного ключа в связанной (дочерней) таблице. Вторичный ключ – это ключ, который используется только для поиска данных
9. Технологии и модели «клиент-сервер». Модель взаимодействия компьютеров сети получила название архитектуры «клиент-сервер». Каждый из составляющих эту архитектуру элементов играет свою роль: сервер владеет и распоряжается информационными ресурсами системы (например, БД); клиент имеет возможность пользоваться ими. Для современных СУБД архитектура «клиент-сервер» стала фактическим стандартом. Если предполагается, что проектируемая ИС будет иметь архитектуру «клиент-сервер», то прикладные программы, реализованные в ее рамках, будут иметь распределенный характер, т.е. часть функций будет реализована в программе-клиенте, а другая – в программе-сервере. Основной принцип технологии «клиент-сервер» заключается в разделении функций стандартного интерактивного приложения на четыре группы: 1 функции ввода и отображения данных; 2 прикладные функции, характерные для предметной области (например, открытие счета для банковской системы); 3 фундаментальные функции хранения и управления информационными ресурсами (БД, файловыми системами); 4 служебные функции, играющие роль связок между функциями первых трех групп. Исходя из этого деления любое приложение может состоять из компонентов (таблица 7.1). Таблица 1 – Связь между компонентами и функциями приложения
Различия в реализациях технологии «клиент-сервер» определяются четырьмя факторами: · тем, в какие виды программного обеспечения интегрированы каждый из этих компонентов; · тем, какие механизмы программного обеспечения используются для реализации функций первых 3 групп; · как логические компоненты распределяются между компьютерами в сети; · какие механизмы используются для связи компонентов между собой. Выделяют четыре подхода, реализованных в моделях «клиент-сервер»: · модель файлового сервера (File Server – FS); · модель доступа к удаленным данным (Remote Data Access - RDA); · модель сервера БД (Database Server – DBS); · модель сервера приложений (Application Server - AS).
|