- •Лекция №1 Информационные системы
- •Лекция № 2 Базы данных и стория появления бд
- •Основная концепция технологии бд:
- •Основные понятия курса (определения):
- •Характеристики субд
- •Основные свойства бд:
- •Лекция №3 Этапы проектирования бд Обобщенная архитектура субд
- •Этапы проектирования бд
- •Лекция №4 Модели данных
- •Реляционная модель данных (рмд)
- •Лекция №5
- •Рмд: языки манипулирования данными (ямд)
- •Лекция №6
- •Нормализация отношений
- •Определение фз
- •Лекция №7 Нормализация отношений (продолжение)
- •Лекция № 8 Платформа sql Server
- •Выпуски sql Server
- •Компоненты sql Server
- •Экземпляры sql Server
- •Системные базы данных
- •Лекция № 9 Файлы и файловые группы
- •Файловая группа по умолчанию
- •Физическая структура файлов данных
- •Страницы
- •Поддержка больших строк
- •Экстенты
- •Журнал транзакций и восстановление
- •Физическая архитектура журнала транзакций
- •Лекция № 10 Опции базы данных
- •Параметры сортировки (collation)
- •Модель восстановления (recovery)
- •Уровень совместимости (compatibility_level)
- •Автоматические
- •Восстановление
- •Состояние
- •Лекция № 11
- •Изменение настроек базы данных
- •Удаление базы данных
- •Лекция № 12 Типы данных Microsoft sql Server
- •Точные числа
- •Приблизительные числа
- •Двоичные данные
- •Пространственные типы данных
- •Специальные типы данных
- •Устаревшие типы данных
- •Пользовательские типы данных
- •Обозреватель объектов sql Server Management Studio
- •Представления каталога
- •Создание таблиц
- •Изменение таблиц
- •Удаление таблиц
- •Системные функции
- •Строковые функции
- •Функции даты (времени)
- •Обновление данных
- •Лекция № 14 Создание индексов и управление индексами Структура хранения данных
- •Структуры кластеризованного индекса
- •Структуры некластеризованного индекса
- •Оптимизация индексов
- •Источники информации об индексах
- •Создание индексов
- •Вычисляемые столбцы
- •Изменение индексов
- •Восстановление индексов
- •Удаление индексов
- •Лекция № 15 Ограничения целостности данных Назначение
- •Типы ограничений целостности данных
- •Определение default значений
- •Ограничение not null
- •Ограничения check
- •Ограничения unique
- •Ограничения primary key
- •Ограничения foreign key
- •Ссылочная целостность
- •Индексирование ограничений foreign key
- •Количество ограничений foreign key в таблице
- •Ограничения столбцов и таблиц
- •Применение триггеров
- •Программирование триггеров
- •Создание триггеров
- •Изменение триггеров
- •Удаление триггеров
- •Лекция № 16 Представления Что такое представление?
- •Использование представлений
- •Источники информации о представлениях Обозреватель объектов sql Server Management Studio
- •Функции динамического управления
- •Создание предавлений
- •Изменение представлений
- •Удаление представлений
- •Обновление данных в представлении
- •Типы представлений Стандартные представления
- •Индексированные представления
- •Секционированные представления
- •Секционированные представления
- •Создание таблиц-элементов
- •Определение распределенных секционированных представлений
- •Правила таблиц
- •Правила столбцов
- •Правила столбцов секционирования
- •Индексированные представления
- •Создание индексированных представлений
- •Лекция № 17 Хранимые процедуры и функции Преимущества хранимых процедур
- •Источники информации о хранимых процедурах Обозреватель объектов sql Server Management Studio
- •Представления каталога
- •Функции динамического управления
- •Создание хранимых процедур
- •Вызов хранимых процедур
- •Перекомпиляция хранимых процедур
- •Преимущества определяемых пользователем функций
- •Источники информации о пользовательских функциях Обозреватель объектов sql Server Management Studio
- •Представления каталога
- •Функции динамического управления
- •Типы определяемых пользователем функции
- •Возвращающие табличное значение определяемые пользователем функции
- •Определяемые пользователем встроенные функции
- •Концепция транзакций
- •Эффекты одновременного доступа
- •Блокировки и управление версиями строк
- •Типы управления одновременным доступом
- •Режимы блокировки
- •Взаимоблокировка
- •Отображение сведений о блокировках
- •Режимы транзакций
- •Автоматическая фиксация транзакций
- •Явные транзакции
- •Неявные транзакции
- •Распределенные транзакции
- •Уровни изоляции в ядре субд
Устаревшие типы данных
Типы данных ntext, text, image и timestamp в будущей версии Microsoft SQL Server будут удалены. Следует избегать их использования при разработке новых приложений и запланировать изменение приложений, в которых эти типы в данное время используются. Вместо этих типов данных следует использовать типы nvarchar(max), varchar(max), varbinary(max) и rowversion соответственно.
ntext
Этот тип данных представляет символьные данные в Юникоде переменной длины, включающие до 2^30 – 1 (1 073 741 823) символов. Объем занимаемого этим типом пространства (в байтах) в два раза превышает число символов.
text
Этот тип данных представляет данные, отличные от данных Юникод, представленные с использованием кодовой страницы сервера. Максимальная длина данных — 2^31 – 1 (2 147 483 647) символов. Если в кодовой странице сервера используются двухбайтовые символы, объем занимаемого типом пространства все равно не превышает 2 147 483 647 байт.
image
Этот тип представляет двоичные данные переменной длины, включающие от 0 до 2^31 – 1 (2 147 483 647) байт.
timestamp
Тип данных timestamp является синонимом типа данных rowversion.
Пользовательские типы данных
Пользовательские типы данных, также именуемые как псевдонимы типов данных, позволяют расширить базовые типы данных SQL Server (например, varchar) содержательным именем и форматом, который можно приспособить для конкретного использования.
Создание пользовательского типа данных осуществляется вызовом команды CREATE TYPE:
CREATE TYPE type_name
{
FROM base_type
[ ( precision [ , scale ] ) ]
[ NULL | NOT NULL ]
}
type_name
Имя псевдонима типа данных или определяемого пользователем типа данных.
base_type
Предоставляемый SQL Server тип данных, на основе которого формируется псевдоним.
precision
Для типа decimal или numeric является неотрицательным целым числом, которое указывает на максимальное общее число подлежащих сохранению десятичных знаков как слева, так и справа от десятичного разделителя, отделяющего десятичную дробь от целого числа.
scale
Для типа decimal или numeric является неотрицательным целым числом, которое указывает на максимальное общее число подлежащих сохранению десятичных знаков справа от разделителя, отделяющего десятичную дробь от целого числа. Значение должно быть меньше или равно заданной степени точности.
NULL | NOT NULL
Указывает, может ли данный тип иметь значение NULL. Если не указано иное, по умолчанию принимается значение NULL.
Пример:
Следующая инструкция создает определяемый пользователем тип данных birthday, основанный на типе данных datetime, допускающий значения NULL.
CREATE TYPE birthday FROM datetime NULL ;
Источники информации о таблицах
Обозреватель объектов sql Server Management Studio
Представления каталога
Представление каталога |
Отображение сведений о |
sys.tables |
Информация обо всех таблицах в базе данных |
sys.columns |
Информация о столбцах таблиц, типе данных столбцов |
sys.types |
Информация о системных и пользовательских типах данных |