Нормализация отношений
Важным понятием в теории реляционных БД является нормализация отношений. Так как реляционная модель предполагает различные варианты выбора схем отношений, то от правильного выбора схемы в значительной степени будет зависеть эффективность функционирования базы данных.
Основными проблемами при проектировании логической модели БД являются:
Дублирование информации (избыточность).
Потенциальная противоречивость (аномалии обновления).
Потенциальная возможность потери сведений (аномалии удаления).
Потенциальная возможность невключения информации в базу данных (аномалии включения).
В теории реляционных баз данных существуют формальные методы построения реляционной модели баз данных, в которой отсутствуют избыточность и аномалии обновления, удаления и включения.
Построение рационального варианта схем отношений (обладающего лучшими свойствами при операциях включения, модификации и удаления данных, чем все остальные наборы схем) осуществляется путем нормализации схем отношений, принципы которой можно сформулировать в виде следующих основных правил, используемых при разработке структуры БД
В каждом поле таблицы должен находиться уникальный вид информации, т.е. в одной и той же таблице не должны находиться повторяющиеся поля
В каждой таблице должен быть первичный ключ или уникальный идентификатор, который однозначно определяет данную запись среди множества записей таблицы.
Каждому значению первичного ключа должна соответствовать исчерпывающая информация об объекте таблицы.
Изменение значения любого поля таблицы, не входящего в состав первичного ключа, не должно влиять на информацию в других ее полях.
Нормализация производится в несколько этапов. На начальном этапе схема отношений должна находиться в первой нормальной форме (1 НФ). Далее отношение, представленное в первой нормальной форме, последовательно преобразуется во вторую и третью нормальную формы. При некоторых предположениях о данных третья нормальная форма является искомым наилучшим вариантом.
Если эти предположения не выполняются, то процесс нормализации продолжается дальше, и отношения преобразуются в четвертую и пятую нормальные формы.
2Работа в MS SQL Server
2.1Средства управления базами данных SQL Server
Службы SQL Server
MS SQL Server реализован в виде самостоятельных служб, каждая из которых отвечает за выполнение определенного круга задач:
MSSQLServer - процессор базы данных SQLServer;
SQLSeverAgent - автоматическое выполнение задач администрирования;
MSDTS - управление распределенными транзакциями;
MSSearch - полнотекстовый поиск.
Процессор базы данных MSSQLServer
Процессор баз данных MSSQLServer реализован как служба операционной системы, которая осуществляет большинство основных функций SQL Server:
выполнение хранимых процедур,
управление файлами баз данных и журналами транзакций,
проверку учетных записей пользователей, распределение ресурсов между ними, выполнение запросов и команд Transact-SQL.
MSSQLServer эффективно распределяет ресурсы операционной системы между множеством пользователей, оптимизируя и распараллеливая их запросы для повышения производительности.
MSSQLServer является основной службой СУБД: если он не запущен, то невозможны доступ к базам данных и выполнение задач администрирования.
3Создание новой базы данных
Создание новой базы данных удобнее всего осуществить посредством SQL Server Enterprise Manager. Для этого выбирается Databases в дереве объектов окна SQL Server Enterprise Manager (рис. 3.1). После нажатия правой кнопки мыши на экране появится выпадающее меню. В данном меню выбираем New Database.
Рис 3.1. MS SQL Server Enterprise Manager.
Появляется новое диалоговое окно, в котором необходимо определить некоторые свойства новой базы данных.
Главная вкладка (General) (рис. 3.2) предназначена для определения имени новой базы данных и ограничений (при необходимости) на размеры файлов базы. После ввода логического имени новой базы данных в поле Name в окне Database files появляются предлагаемые по умолчанию параметры: имя созданного файла, путь к файлу базы данных, размер файла базы и принадлежность к группе.
Все эти параметры могут быть изменены. Необходимость использования нескольких файлов базы под одним логическим именем, введенном в поле Name, может потребовать добавления в окне Database files еще файлов.
Примечание. Такая схема размещения файлов может быть полезна в случае сопровождения большой базы данных на нескольких жестких дисках или других носителях ограниченного объема или для удобства группировки различных объектов, хранимых в базе в собственных файлах.
Рис 3.2. Вкладка General
Для каждого определенного в окне файла базы в нижней части вкладки Data Files окна Database Properties (рис. 3.3) автоматически задаются типичные значения некоторых параметров, установленных в MS SQL Server, для файла базы данных. Эти параметры задают начальный размер и методику увеличения размера файла по мере заполнения базы данными.
Рис 3.3. Вкладка Data Files
Установив флажок Automatically grow file, можно задать автоматическое увеличение размера файла в соответствии с ограничениями, которые определяются здесь же. Может быть задан неограниченный рост файла - Unrestricted filegrowth или рост до определенного предела - Restricted filegrowth. Во втором случае необходимо задать максимальный размер файла в мегабайтах. Кроме этого может быть установлен размер автоматического приращения файла при наступлении каждой необходимости его увеличения. Это приращение может быть определено либо в абсолютных значениях (мегабайтах), либо в относительных (процентах).
На следующей вкладке Transaction Log в окне File name (рис 3.4) определяются имя, размещение и размер обязательного файла, входящего в состав базы данных - журнала транзакций. Подробно суть и механизмы поддержки режима транзакций MS SQL Server будут рассмотрены позднее. Структура файлов, входящих в журнал, ограничения на размер файлов журнала транзакций и параметры их приращения при необходимости могут быть установлены аналогично параметрам файла базы данных.
Рис 3.4. Вкладка Transaction_log
Последняя вкладка (рис 3.5) - Options (дополнительные параметры) позволяет определить следующие параметры (в некоторых версиях MS SQL Server данная вкладка доступна после создания базы при изменении ее свойств):
Db_owner, dbcreator or sysadmin - база данных используется только ее владельцем, создателем или системным администратором.
Single User - база данных используется только в монопольном режиме доступа одним пользователем. Одновременная работа с данными нескольких пользователей запрещена.
Read Only - база данных может быть использована только для чтения данных. Модификация данных запрещена.
ANSI NULL Default - разрешение заполнять поля автоматически значением NULL.
Recursive Triggers - разрешение рекурсивного вызова триггеров.
Auto close - автоматическая остановка сервера базы данных при окончании сеанса работы с ней последнего пользователя.
Torn Page Detection - проверка целостности операций ввода/вывода после краха сервера базы данных. Восстановление данных при необходимости из резервной копии.
Если определены все необходимые параметры новой базы данных, необходимо нажать кнопку OK и новая база данных будет создана на устройствах хранения файлов.
Рис 3.5. Вкладка OPTIONS
Необходимо помнить, что создание новой базы данных всегда является копированием модели базы (логическое имя - model, пустая база в каталогах MS SQL Server) в рабочую область и установкой ее параметров, необходимых разработчику, из образца (template). В пустой базе данных изначально содержатся системные таблицы, предназначенные для регистрации и использования сервером информации о вновь создаваемых пользовательских объектах и организации доступа к ним (имена пользователей, таблиц, полей и др.).
|