- •1)Основные функции системы управления базами данных.
- •2)Виды моделей данных. Примеры.
- •3)Три уровня представления данных в субд (ansi/sparc).
- •4)Архитектурные решения, используемые при реализации многопользовательских субд.
- •5)Классификация бд. Примеры субд
- •6)Основные понятия реляционных баз данных (тип данных, домен, атрибут, отношение, заголовок отношения, кортеж, тело отношения, значение отношения, переменная отношения, первичный ключ). Пример.
- •7)Целостность реляционных данных. Ключи (потенциальные, первичные, альтернативные, внешние)
- •8)Язык sql. Составные части. Разновидностями языка sql. Отличие от процедурных языков программирования.
- •9)Архитектура и принципы физического хранения данных в субд MySql
- •10)Команда create database. Команды выбора бд.
- •11) Команда создания таблиц. Пример для субд MySql. Просмотр структуры таблицы.
- •12)Команда изменения структуры таблицы. Основные преобразования, выполняемые этим оператором. Примеры для субд MySql.
- •13)Три категории типов данных столбцов субд MySql. Сравнить типы данных char и varchar.
- •14)Три категории типов данных столбцов субд MySql. Сравнить типы данных set и enum.
- •15)Три категории типов данных столбцов субд MySql. Сравнить типы данных blob и text.
- •16)Типы данных даты и времени субд MySql.
- •17)Запись данных в таблицу субд MySql. Ввод данных из файла.
- •5.1. Запись данных в таблицы
- •18)Синтаксис оператора select. Выборка данных с помощью условия. Примеры для субд MySql.
- •19)Синтаксис оператора select. Операторы in и between.
- •Операторы in и between
- •20)Агрегатные функции MySql. Примеры для субд MySql.
- •Поиск минимального и максимального значений столбца.
- •21)Синтаксис оператора select. Ограничение количества извлекаемых данных. Упорядочивание данных.
- •Упорядочивание данных order by
- •22)Вложенные запросы. Синтаксис. Изменение записей update.
- •23) Основные функции для работы с датой и временем в MySql (текущая дата, выделение части даты). Представление даты. Примеры.
- •24) Основные функции для работы со строками в MySql. Сравнение строк, длина строки, приведение к нижнему и верхнему регистрам. Примеры.
- •Insert(строка, позиция, длина, новая_строка)
- •25) Компоненты ms sql Server. Системные базы данных.
- •26)Типы данных ms sql Server. Пользовательские типы данных. Пример создания.
- •27)Типы данных ms sql Server. Пространственные и специальные типы данных.
- •28)Конструкции Transact-sql. Переменные.
- •Управляющие конструкции Transact-sql:
- •1.С входным выражением:
- •29) Физическая организация базы данных ms sql Server. Типы файлов баз данных. Файловые группы.
- •30)Физическая структура файлов данных. Экстенты.
- •31)Физическая структура файлов данных. Типы страниц.
- •32) Индексы. Виды индексов ms sql Server.
- •33)В-деревья. Примеры.
- •34) Создание, изменение индекса в ms sql Server. Сравнение кластеризованных и некластеризованных индексов.
- •35) Секционирование таблиц.
- •36)Выборка данных из нескольких таблиц. Конструкция join. Виды соединений.
- •37) Объединение нескольких наборов результатов union. Примеры.
- •38) Виды соединений. Примеры.
- •39)Агрегатные функции. Примеры.
- •40)Подзапросы. Примеры.
- •41) Безопасность в ms sql Server. Роли сервера. Учетные записи для входа.
- •Роли сервера
- •Управление учетными записями для входа
- •42)Безопасность в ms sql Server. Роли базы данных. Предоставление доступа к бд.
- •43)Представления. Примеры.
- •Создание представлений
- •44)Курсор. Виды курсоров. Управление курсорами.
- •Управление курсором в среде ms sql Server
- •45)Пользовательские функции и хранимые процедуры.
- •46)Сценарии и пакеты в ms sql Server. Схемы бд.
- •47)Триггеры.
- •48)Ограничение check.
- •49)Реляционная алгебра Кодда. Основные операторы.
- •Основные операторы реляционной алгебры
- •50)Нормализация бд. Нормальные формы.
- •51) Этапы проектирования бд.
7)Целостность реляционных данных. Ключи (потенциальные, первичные, альтернативные, внешние)
БД нуждается в определении правил целостности, чтобы информировать СУБД об ограничениях реального мира. Ограничения могут быть описаны описанные с помощью специальных конструкций.
Кроме специфических правил существуют общие правила целостности для всех БД. Такие правила связаны с потенциальными, первичными и внешними ключами и будут рассмотрены далее в этой лекции.
Потенциальные ключи
Пусть R – некоторое отношение. Тогда потенциальный ключ K для R – это подмножество атрибутов R, обладающих следующими свойствами:
1) уникальность, т.е. нет двух различных кортежей в текущем значении переменной отношения R с одинаковым значением K;
2) неизбыточность, т.е. никакое из подмножеств K не обладает свойством уникальности.
Отношение может иметь более одного потенциального ключа, но один из них всегда выбирается в качестве первичного, остальные потенциальные ключи будут в этом случае называться альтернативными.
Пусть R2 – отношение. Тогда внешний ключ FK в отношении R2 – это подмножество множества атрибутов R2 такое, что:
1) существует базовое отношение R1 с потенциальным ключом CK;
2) каждое значение FK в текущем значении R2 всегда совпадает со значением CK некоторого кортежа в текущем значении R1.
Отношение R1 называется родительским отношением, отношение R2 называется дочерним отношением.
8)Язык sql. Составные части. Разновидностями языка sql. Отличие от процедурных языков программирования.
Для работы с базами данных разработан и используется подход, основанный на использовании так называемых языков запросов, которые задают не последовательность необходимых действий, а условия, которым должен удовлетворять результат. С этой целью разработан и активно используется во всех базах данных – специальный язык запросов SQL.
Язык SQL (Structured Query Language – структурированный язык запросов) применяется для общения пользователя с реляционной базой данных и состоит из трех частей [8]:
DDL (Data Definition Language) – язык определения данных. Предназначен для создания базы данных (таблиц, индексов и т.д.) и редактирования ее схемы.
DCL (Data Control Language) – язык управления данными. Содержит операторы для разграничения доступа пользователей к объектам базы данных.
DML (Data Manipulation Language) – язык обработки данных. Содержит операторы для внесения изменений в содержимое таблиц базы данных.
В явном виде язык SQL не является универсальным языком программирования в обычном понимании. В нем отсутствуют операторы условного перехода, организации циклов, позволяющие управлять ходом выполнения программы. Поэтому язык SQL относится к классу непроцедурных языков программирования. Это именно язык запросов к базе данных, который служит исключительно для организации базы данных и работы с ней. Для разработки прикладных программ необходимо использовать другие базовые средства программирования, в который операторы языка SQL будут встраиваться.
К настоящему моменту используются следующие технологии (режимы) работы с базой данных на языке SQL (в некоторых источниках эти технологии называют разновидностями языка SQL):
формирование непосредственно пользователем запроса на языке SQL в интерактивном режиме (интерактивный SQL);
формирование запроса на языке SQL в прикладной программе (программный или встроенный SQL:
статическое формирование запроса (статический SQL);
динамическое формирование запроса (динамический SQL);
формирование запроса с помощью библиотек (API – интерфейсы вызова подпрограмм).
В интерактивном режиме работы с базой данных: пользователь работает с базой данных в прямом диалоге: вводит запрос на языке SQL – получает результат, вводит другой запрос – получает другой результат и т.д.
