Введение

Глава 1. Проектирование реляционных баз данных
Цели и этапы проектирования баз данных
Возможность хранения в БД всех необходимых данных
Исключение избыточности данных
Сведение к минимуму числа таблиц, хранимых в базе данных
Нормализация таблиц
Первая нормальная форма
Вторая нормальная форма
Третья нормальная форма
Сущности и связи
Степень связи
Формирование таблиц из ER-диаграммы
Предварительные таблицы для бинарных связей степени "один-к-одному"
Предварительные таблицы для бинарных связей степени "один-ко-многим"
Предварительные таблицы для бинарных связей степени "многие-ко-многим"

Глава 2. Знакомство с SQL Server
Архитектура SQL Server
Архитектура баз данных
Понятие о реляционных особенностях SQL Server
Базы данных SQL Server 2000
Логические компоненты базы данных
Создание базы данных и журнала транзакции
Удаление баз данных
Таблицы
Создание таблиц
Предопределенные типы данных
Числовые целые типы данных
Числовые типы данных с плавающей точкой
Символьные типы данных
Типы данных datetime и smalldatetime
Специальные типы данных
Типы данных, определяемые пользователем
Создание временных таблиц
Создание и использование условий на значения столбцов
Условие на значение столбца PRIMARY KEY
Условие на значение столбца FOREIGN KEY
Уникальное условие на значение столбца
Проверочное условие на значение столбца
Условие на значение столбца по умолчанию
Добавление данных к таблице

Глава 3. Язык баз данных Transact-SQL
Что такое язык SQL
История создания SQL
Элементы Transact-SQL
Комментарии
Литералы
Идентификаторы
Выражения
Ключевые слова
Операторы
Арифметические операторы
Операторы сравнения
Операторы слияния строковых значений.
Логические операторы
Использование Transact-SQL для работы с базами данных
Создание и удаление базы данных
Создание и удаление таблиц базы данных
Выборка данных
Считывание данных с помощью инструкции SELECT
Задание таблиц, из которых производится выборка
Задание столбцов
Задание строк таблицы
Сортировка результирующего набора
Выборка уникальных значений столбцов
Группировка результатов выборки
Вычисление значений в группе
Использование подзапросов
Модификация операторов сравнения
Задание режимов оптимизатора
Обращение к таблице, с которой работает другой пользователь
Добавление, изменение и удаление данных в таблицах
Добавление строк в таблицу
Изменение данных
Удаление строк
Выполнение реляционных объединений
Объединения "многие-к-одному" и "один-ко-многим"
Объединение "многие-ко-многим"
Внешние объединения
Объединение результатов запроса с помощью предложения UNION
Использование псевдонимов

Глава 4. Функции Transact-SQL
Базовые функции SQL
Функция AVG
Функция COUNT
Ключевое слово DISTINCT в функции COUNT
Функция МАХ
Функция MIN
Функция SUM
Операторы CUBE и ROLLUP
Строковые функции
Функция ASCII
Функция CHAR
Функция SOUNDEX
Функция DIFFERENCE
Функция LOWER
Функция UPPER
Функция LTRIM
Функция RTRIM
Функция CHARINDEX
Функция SUBSTRING
Функция PATINDEX
Функция REPLICATE
Функция REVERSE
Функция RIGHT
Функция SPACE
Функция STUFF
Конкатенация
Арифметические функции
Работа с данными типов text и image
Команда SET TEXTSIZE
Функция TEXTPTR
Инструкция READTEXT
Функция TEXTVALID
Функции преобразования
Функция CONVERT
Функция STR
Функции для работы с датами
Функция DATENAME
Функция DATE PART
Функция GETDATE
Функция DATEADD
Функция DATEDIFF
Системные функции
Функции ISNULL и NULLIF
Функция COALESCE
Ниладические функции

Глава 5. Visual C++ и базы данных
Типы приложений для работы с базами данных
Проект Database Project
Проект New Database Wizard
Проект Extended Stored Proc Wizard
Проект MFC AppWizard

Глава 6. Классы библиотеки MFC для работы с базами данных
Классы для работы с ODBC
Класс СDatabase
Компоненты данных
Создание соединения
Атрибуты данных
Операции
Переопределяемые методы
Класс CRecordset
Компоненты данных
Конструирование
Атрибуты результирующего набора
Операции обновления результирующего набора
Операции перемещения по результирующему набору
Другие операции над результирующим набором
Переопределяемые методы.
Класс СRecordView
Создание объекта
Атрибуты данных
Операции
Класс СFieldExchange
Класс CDBException
Класс CLongBinary
Функции RFX

Глава 7. Настройка приложения на работу с базами данных
Извлечение информации из базы данных
Подготовка формы для отображения данных
Отображение и обновление содержимого базы данных
Добавление и удаление записей в таблице
Добавление записей в таблицу
Удаление записей из таблицы
Сортировка записей
Поиск информации в базе данных

Глава 8. Работа с несколькими таблицами
Выборка и обновление данных п таблицах
Добавление записей в базу данных
Удаление записей из базы данных
Другой способ отображения информации базы данных

Глава 9. Создание приложений для работы со связями "многие-ко-многим"
Создание представления

Глава 10. Настройка приложения на работу с базами данных посредством механизма OLE DB
Извлечение информации из базы данных
Создание проекта
Подготовка формы для отображения данных
Отображение и обновление содержимого базы данных
Добавление и удаление записей в таблице
Добавление записей в таблицу
Удаление записей из таблицы

Заключение

Предметный указатель