- •Понятие баз данных. Концепция бд. Преимущества банковской организации данных.
- •Системы управления базами данных. Функции субд.
- •3. Категории пользователей бд. Администратор бд.
- •4. Требования к БнД.
- •5. Компоненты БнД.
- •7. Классификация субд и бд.
- •8. Модели представления данных в субд.
- •Постреляционная, многомерная и объектно-ориентированная модели представления данных
- •11. Oltp и olap системы. Хранилище данных и olap. Назначение. Основные характеристики
- •Olap и oltp. Характеристики и основные отличия
- •Правила Кодда для olap систем
- •Основные элементы и операции olap
- •Типы olap. Преимущества и недостатки
- •Моделирование многомерных кубов на реляционной модели данных
- •Уровни моделей бд.
- •Этапы проектирования бд. Взаимосвязь этапов проектирования.
- •19. Реляционная модель данных. Основные понятия и определения. Базовые понятия реляционных баз данных
- •1.1. Тип данных
- •1.2. Домен
- •1.3. Схема отношения, схема базы данных
- •1.4. Кортеж, отношение
- •23. Объекты реляционных баз данных: таблицы, индексы, представления, хранимые процедуры, триггеры и др.
- •25. Понятие функциональной зависимости. Нормализация таблиц. Метод нормальных форм. 1нф, 2нф, 3нф. Основной пример
- •1Нф (Первая Нормальная Форма)
- •Аномалии обновления
- •Аномалии вставки (insert)
- •Аномалии обновления (update)
- •Аномалии удаления (delete)
- •Функциональные зависимости
- •Определение функциональной зависимости
- •Функциональные зависимости отношений и математическое понятие функциональной зависимости
- •2Нф (Вторая Нормальная Форма)
- •Анализ декомпозированных отношений
- •Оставшиеся аномалии вставки (insert)
- •Оставшиеся аномалии обновления (update)
- •Оставшиеся аномалии удаления (delete)
- •3Нф (Третья Нормальная Форма)
- •Алгоритм нормализации (приведение к 3нф)
- •Анализ критериев для нормализованных и ненормализованных моделей данных Сравнение нормализованных и ненормализованных моделей
- •27. Структурированный язык запросов sql. Общая характеристика. Методы использования.
- •28. Состав языка sql. Язык sql
- •Состав языка sql
- •Язык sql
- •4.6.1.Типы данных sql.
- •Язык определения данных (ddl). Ddl: Операторы создания схемы базы данных.
- •Операторы базы данных
- •Создание и удаление таблиц
- •4.6.3.Ddl: Операторы создания индексов.
- •30. Язык манипулирования данными (dml). Dml: Команды модификации данных.
- •Добавить новую запись в таблицу:
- •Модификация записей:
- •Удаление записей
- •4.6.6.Dml: Выборка данных.
- •4.6.7.Dml: Выборка из нескольких таблиц.
- •4.6.8.Dml: Вычисления внутри sеlесt.
- •4.6.9.Dml: Групировка данных.
- •4.6.10.Dml: Сортировка данных.
- •4.6.11.Dml: Операция объединения.
- •4.6.12.Использование представлений.
- •4.6.13.Другие возможности sql.
- •31. Язык управления данными (dcl).
- •4.6.4.Dсl: Операторы управления правами доступа.
- •33. Субд в архитектуре клиент-сервер. Двухзвенная и трехзвенная архитектура. Технология "клиент – сервер"
- •34. Защита информации в бд. Методы и средства защиты. Защита информации в базах данных
Анализ критериев для нормализованных и ненормализованных моделей данных Сравнение нормализованных и ненормализованных моделей
Соберем воедино результаты анализа критериев, по которым мы хотели оценить влияние логического моделирования данных на качество физических моделей данных и производительность базы данных:
Критерий |
Отношения слабо нормализованы (1НФ, 2НФ) |
Отношения сильно нормализованы (3НФ) |
Адекватность базы данных предметной области |
ХУЖЕ (-) |
ЛУЧШЕ (+) |
Легкость разработки и сопровождения базы данных |
СЛОЖНЕЕ (-) |
ЛЕГЧЕ (+) |
Скорость выполнения вставки, обновления, удаления |
МЕДЛЕННЕЕ (-) |
БЫСТРЕЕ (+) |
Скорость выполнения выборки данных |
БЫСТРЕЕ (+) |
МЕДЛЕННЕЕ (-) |
Как видно из таблицы, более сильно нормализованные отношения оказываются лучше спроектированы (три плюса, один минус). Они больше соответствуют предметной области, легче в разработке, для них быстрее выполняются операции модификации базы данных. Правда, это достигается ценой некоторого замедления выполнения операций выборки данных.
У слабо нормализованных отношений единственное преимущество - если к базе данных обращаться только с запросами на выборку данных, то для слабо нормализованных отношений такие запросы выполняются быстрее. Это связано с тем, что в таких отношениях уже как бы произведено соединение отношений и на это не тратится время при выборке данных.
Таким образом, выбор степени нормализации отношений зависит от характера запросов, с которыми чаще всего обращаются к базе данных.
27. Структурированный язык запросов sql. Общая характеристика. Методы использования.
Структурированный язык запросов SQL
Структурированный язык запросов SQL основан на реляционном исчислении с переменными кортежами. Язык имеет несколько стандартов, наиболее распространенными из которых являются SQL-89 и SQL-92.
Общая характеристика языка
Язык SQL предназначен для выполнения операций над таблицами (создание, удаление, изменение структуры) и над данными таблиц (выборка, изменение, добавление и удаление), а также некоторых сопутствующих операций. SQL является непроцедурным языком и не содержит операторов управления, организации подпрограмм, ввода- вывода и т.п. В связи с этим SQL автономно не используется, обычно он погружен в среду встроенного языка программирования СУБД (например, FoxPro СУБД Visual FoxPro, ObjectPAL СУБД Paradox, Visual Basic for Applications СУБД Access).
В современных СУБД с интерактивным интерфейсом можно создавать запросы, используя другие средства, например QBE. Однако применение SQL зачастую позволяет повысить эффективность обработки данных в базе. Например, при подготовке запроса в среде Access можно перейти из окна Конструктора запросов (формулировки запроса по образцу на языке QBE) в окно с эквивалентным оператором SQL. Подготовку нового запроса путем редактирования уже имеющегося в ряде случае проще выполнить путем изменения оператора SQL. В различных СУБД состав операторов SQL может несколько отличаться.
Язык SQL не обладает функциями полноценного языка разработки, а ориентирован на доступ к данным, поэтому его включают в состав средств разработки программ. В этом случае его называют встроенным SQL.
Стандарт языка SQL поддерживают современные реализации следующих языков программирования: PL/1, Ada, С, COBOL, Fortran, MUMPS и Pascal.
В специализированных системах разработки приложений типа клиент-сервер среда программирования, кроме того, обычно дополнена коммуникационными средствами (установление и разъединение соединений с серверами БД, обнаружение и обработка возникающих в сети ошибок и т.д.), средствами разработки пользовательских интерфейсов, средствами проектирования и отладки.
Различают два основных метода использования встроенного SQL: статический и динамический.
При статическом использовании языка (статический SQL) в тексте программы имеются вызовы функций языка SQL, которые жестко включаются в выполняемый модуль после компиляции. Изменения в вызываемых функциях могут быть на уровне отдельных параметров
вызовов с помощью переменных языка программирования. При динамическом использовании языка (динамический SQL) предполагается динамическое построение вызовов SQL-функций и
интерпретация этих вызовов, например, обращение к данным удаленной базы, в ходе выполнения программы. Динамический метод обычно применяется в случаях, когда в приложении заранее неизвестен вид SQL- вызова и он строится в диалоге с пользователем.
Основным назначением языка SQL (как и других языков для работы с базами данных) является подготовка и выполнение запросов.
