Название: Базы данных. Концепция баз данных, реляционная модель данных, языки SQL и XML (Токмаков Г. П.)

Жанр: Информационные системы и технологии

Просмотров: 1403


1.2.2.  целостность  данных

 

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

Эти особенности заключаются в том, что теперь система должна «знать»,

что она работает с двумя информационно связанными файлами (это шаг в сто-

рону схемы базы данных), должна иметь информацию о структуре и смысле каждого поля. Например, системе должно быть известно, что у полей СЛЖ_ ОТД_НОМЕР в файле СЛУЖАЩИЕ и ОТД_НОМЕР в файле ОТДЕЛЫ один и тот же смысл – номер отдела.

Кроме того, система должна учитывать, что в ряде случаев изменение дан-

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

на работу принимается новый служащий, то нужно добавить запись в файл СЛУ‐ ЖАЩИЕ, а также должным образом изменить поля ОТД_СЛЖ_ЗАРП и ОТД_ЧИСЛ в за-

писи файла ОТДЕЛЫ, соответствующей отделу этого служащего.

Более точно, система должна руководствоваться следующими правилами:

1. Если в файле СЛУЖАЩИЕ содержится запись со значением поля СЛЖ_ОТД_ НОМЕР = n, то и в файле ОТДЕЛЫ должна содержаться запись со значением поля ОТД_НОМЕР = n;

2. Если в файле ОТДЕЛЫ содержится запись со значением поля ОТД_РУК = m,

то и в файле СЛУЖАЩИЕ должна содержаться запись со значением поля СЛЖ_НОМЕР =

m; далее мы увидим, что правила (1) и (2) являются частными случаями общего правила ссылочной целостности: поле СЛЖ_ОТД_НОМЕР содержит «ссылки» на за- писи таблицы  ОТДЕЛЫ, а поле  ОТД_РУК содержит «ссылки» на записи таблицы СЛУЖАЩИЕ;

3. Значение поля ОТД_СЛЖ_ЗАРП записи файла ОТДЕЛЫ, для которой значение поля  ОТД_НОМЕР = n, должно быть равно сумме значений полей СЛЖ_ЗАРП тех за-

писей файла СЛУЖАЩИЕ, в которых значение поля СЛЖ_ОТД_НОМЕР = n;

4. Значение поля ОТД_ЧИСЛ записи файла ОТДЕЛЫ, для которой значение поля

ОТД_НОМЕР = n, должно быть равно числу записей файла СЛУЖАЩИЕ, в которых зна- чение поля СЛЖ_ОТД_НОМЕР = n; далее мы увидим, что правила (3) и (4) представ- ляют собой примеры общих ограничений целостности базы данных.

Понятие согласованности, или целостности, данных является ключевым понятием баз данных. Фактически, если информационная система (даже такая простая, как в нашем примере) поддерживает согласованное хранение данных в

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