- •1.Система. Ранги систем. Свойства систем. Ис.
- •2.Кис. Классификации ис.
- •3.Состав ис.
- •4.Модели данных.
- •5.Жц ис. Модели жц ис
- •6.Проектирование ис. Уровни моделей ис.
- •7.Факторы, влияющие на проектирование ис. Концептуальное проектирование.
- •8.Рмд. Ключи и связи. Ссылочная целостность
- •9.Нормализация данных. Преимущества нормализации.
- •10.Проектирование баз данных. Денормализация.
- •11) Объекты бд. Таблицы и поля. Индексы. Ограничения и правила
- •12) Объекты бд. Представления. Триггеры и хранимые процедуры
- •13) Объекты для генерации первичных ключей. Пользователи и роли.
- •14) Запросы к бд. Системный каталог. Транзакции. Курсоры.
- •15) Расширения sql. Функции, определяемые пользователем
- •17) Характеристики локальных субд
- •19.Требования к современным субд. Субд ведущих производителей.
- •20.Механизмы доступа к данным. Характеристика odbc, ole db и ado.
- •21.Механизмы доступа к данным. Характеристика bde и ado.Net
- •22. История sql. Принцип работы. Стандарты.
- •23.Операторы ddl, dml, tcl, dcl, ccl.
- •24.Системные базы данных. Страницы. Экстенты.
- •25.Файлы ms sql. Секции и таблицы.(добавить)
- •26.Ограничения по первичному ключу. Возможные и внешние ключи.
- •27.Ограничения по условию. Вычисляемые поля. Триггеры.
9.Нормализация данных. Преимущества нормализации.
Нормализация - процесс реорганизации данных путем ликвидации повторяющихся групп и иных противоречий в БД с целью приведения таблиц к виду, позволяющему осуществлять непротиворечивое и корректное изменение данных.
Существует 5 нормальных форм, из которых на практике используются первые 3.
Чтобы таблица соотв. первой форме необходимо, чтобы все значения ее полей были атомарными, а все записи - универсальными. Таблица в такой форме, как правило, содержит избыточные данные. Чтобы таблица соотв. второй форме, она должна соотв. первой и ее не ключевые поля полностью зависят от всех ключевых полей.
Для перехода из первой формы во вторую необходимо: Определить на какие части можно разбить первичный ключ так, чтобы некоторые из не ключевых полей зависели от этих частей. Создать новую таблицу для каждого ключа и группы зависящих от нее полей и переместить их в эту таблицу. Часть бывшего первичного ключа станет при этом первичным ключом новой таблицы. Удалить из исходной таблицы поля, перемещенные в другие таблицы, кроме тех, которые станут внешними ключами.
Чтобы таблица соотв. третьей форме, необходимо чтобы она соотв. второй и все ее не ключевые поля зависели только от первичного ключа.
Зависимость между не ключевыми полями называется транзитивной.
Для перехода от 2 н.ф. к 3 н.ф. необходимо - Определить все поля, от которых зависят другие поля.- Создать новую таблицу для каждого поля и переместить эти поля туда. Поле, от которого зависели все остальные поля станет при этом первичным ключом новой таблицы.- Удалить перемещаемые поля из исходной таблицы. оставив лишь те, которые станут внешними ключами.
Преимущество – устраняет избыточность что позволяет снизить объем хранимых данных, избавиться от аномалий их изменения, таблицу в 3НФ легко читать
10.Проектирование баз данных. Денормализация.
Проектирование баз данных — процесс создания схемы базы данных и определения необходимых ограничений целостности.
Основные задачи проектирования баз данных
Основные задачи:
Обеспечение хранения в БД всей необходимой информации.
Обеспечение возможности получения данных по всем необходимым запросам.
Сокращение избыточности и дублирования данных.
Обеспечение целостности данных (правильности их содержания): исключение противоречий в содержании данных, исключение их потери и т.д.
Основные этапы проектирования баз данных
Концептуальное (инфологическое) проектирование
Концептуальное (инфологическое) проектирование — построение семантической модели предметной области, то есть информационной модели наиболее высокого уровня абстракции. Такая модель создаётся без ориентации на какую-либо конкретную СУБД и модель данных. Термины «семантическая модель», «концептуальная модель» и «инфологическая модель» являются синонимами. Кроме того, в этом контексте равноправно могут использоваться слова «модель базы данных» и «модель предметной области» (например, «концептуальная модель базы данных» и «концептуальная модель предметной области»), поскольку такая модель является как образом реальности, так и образом проектируемой базы данных для этой реальности.
Конкретный вид и содержание концептуальной модели базы данных определяется выбранным для этого формальным аппаратом. Обычно используются графические нотации, подобныеER-диаграммам.
Чаще всего концептуальная модель базы данных включает в себя:
описание информационных объектов, или понятий предметной области и связей между ними.
описание ограничений целостности, т.е. требований к допустимым значениям данных и к связям между ними.
Логическое (даталогическое) проектирование
Логическое (даталогическое) проектирование — создание схемы базы данных на основе конкретной модели данных, например, реляционной модели данных. Для реляционной модели данных даталогическая модель — набор схем отношений, обычно с указанием первичных ключей, а также «связей» между отношениями, представляющих собой внешние ключи.
Преобразование концептуальной модели в логическую модель, как правило, осуществляется по формальным правилам. Этот этап может быть в значительной степени автоматизирован.
На этапе логического проектирования учитывается специфика конкретной модели данных, но может не учитываться специфика конкретной СУБД.
Физическое проектирование
Физическое проектирование — создание схемы базы данных для конкретной СУБД. Специфика конкретной СУБД может включать в себя ограничения на именование объектов базы данных, ограничения на поддерживаемые типы данных и т.п. Кроме того, специфика конкретной СУБД при физическом проектировании включает выбор решений, связанных с физической средой хранения данных (выбор методов управления дисковой памятью, разделение БД по файлам и устройствам, методов доступа к данным), создание индексов и т.д.
Денормализация — намеренное приведение структуры базы данных в состояние, не соответствующее критериям нормализации, обычно проводимое с целью ускорения операций чтения из базы за счет добавления избыточных данных.