- •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) Этапы проектирования бд.
Управление курсором в среде ms sql Server
Управление курсором реализуется путем выполнения следующих команд:
DECLARE – создание или объявление курсора;
OPEN – открытие курсора, т.е. наполнение его данными;
FETCH – выборка из курсора и изменение строк данных с помощью курсора;
CLOSE – закрытие курсора;
DEALLOCATE – освобождение курсора, т.е. удаление курсора как объекта.
Объявление курсора
В стандарте SQL для создания курсора предусмотрена следующая команда:
DECLARE имя_курсора
[INSENSITIVE][SCROLL] CURSOR
FOR SELECT_оператор
[FOR { READ_ONLY | UPDATE
[OF имя_столбца[,...n]]}]
45)Пользовательские функции и хранимые процедуры.
Пользовательские функции, возвращающие скалярное значение
Пользовательские функции, возвращающие скалярное значение, больше всего напоминают функции, обычно применяемые в программном обеспечении. Как и большинство собственных встроенных функций SQL Server (таких как GETDATE () или USER ()), пользовательские функции такого типа возвращают в вызывающий их сценарий или процедуру скалярное значение.
Важной отличительной особенностью пользовательских функций является то, что возвращаемые значения могут относиться к любому допустимому типу данных SQL Server (включая определяемые пользователем типы данных!), кроме данных типа BLOB, курсоров и временных отметок. Способ оформления кода в виде пользовательской функции является весьма привлекательным (даже если необходимо обеспечить лишь возврат целочисленного значения) по двум описанным ниже причинам.
В хранимых процедурах возвращаемое значение предназначено для использования в качестве индикатора успеха или неудачи, причем в случае неудачного завершения возвращаемое значение предоставляет некоторую конкретную информацию о характере возникшего нарушения в работе, а в пользовательских функциях, напротив, возвращаемое значение служит исключительно в качестве осмысленного фрагмента данных.
Функции могут вызываться на выполнение как непосредственно встроенные в запрос (например, могут входить в состав оператора SELECT), а хранимые процедуры не предоставляют такой возможности.
Пример:
Нужно определить, какие заказы были введены сегодня.
Для этой цели можно попытаться применить примерно такой оператор:
SELECT * FROM Orders
WHERE OrderDate = GETDATE()
Пользовательские функции, которые возвращают таблицу
Возможности применения пользовательских функций в СУБД SQL Server не ограничиваются лишь возвратом с их помощью скалярных значений. Эти функции обеспечивают возврат гораздо более важных объектов - таблиц. Возвращаемая таблица в большинстве обстоятельств доступна для применения в основном с использованием таких же способов, как и любая другая таблица. Результаты, возвращаемые функцией, можно включать в состав операндов операции JOIN и даже применять к ним условия конструкций WHERE. Благодаря этому открываются действительно заманчивые перспективы.
Пример:
Создадим функцию, в которой выполняется возврат таблицы, состоящей из строк, полученных с помощью оператора SELECT, а также несложное форматирование: конкатенация фамилии и имени, разделенных запятыми:
CREATE FUNCTION dbo.fnContactList()
RETURNS TABLE
RETURN (SELECT ContactID,
LastName + , + FirstName AS Name, EMailAddress AS email FROM Person.Contact)
