Язык запросов SQL

         

Язык запросов SQL

Введение
Об этой книге

Глава 1 Основы реляционных баз данных
Работа с данными

Что такое база данных
Размер и сложность базы данных
Что такое система управления базами данных
Схема информационной системы работающей на основе СУБД
Плоские файлы
Модели баз данных
Реляционная модель
Внимание


Почему реляционная модель лучше
Компоненты реляционной базы данных

Родственники и таблицы что общего?
Таблица со статистикой игрока
Каждая строка базы данных содержит
Оцените представление
Представление для главного менеджера
В представлении для регионального
Схемы домены и ограничения
Схемы
Домены
Ограничения

Объектная модель бросает вызов реляционной
Объектнореляционная модель
Соображения по поводу проектирования баз данных

Язык запросов SQL

Глава 2 Основы SQL
Чем является SQL и чем он не является
(Очень) Короткая история
Команды SQL
Зарезервированные слова

Типы данных
Точные числовые типы
Тип INTEGER
Тип SMALLINT
Тип BIGINT
Тип NUMERIC
Тип DECIMAL
Приблизительные числовые типы
Тип REAL
Тип DOUBLE PRECISION

Тип FLOAT
Символьные строки
Тип CHARACTER
Тип CHARACTER VARYING
Тип CHARACTER LARGE OBJECT
Типы NATIONAL CHARACTER NATIONAL
Логические данные
Данные типа датывремени
Внимание
Тип DATE

Тип TIME WITHOUT TIME ZONE
Тип TIMESTAMP WITHOUT TIME ZONE
Тип TIME WITH TIME ZONE
Тип TIMESTAMP WITH TIME ZONE
Интервалы
Типы ROW
Типы коллекций
Типы ARRAY
Тип MULTISET
Типы REF

Определяемые пользователем типы
Отдельные типы данных
Структурированные типы
Конструкторы
Мутаторы и наблюдатели
Подтипы и супертипы
Пример структурированного типа
Сводка типов данных
Таблица 2 2 Типы данных
Неопределенные значения

Ограничения
Сервер
Что такое сервер
Что делает сервер
Клиент
Что такое клиент
Что делает клиент
Использование SQL в Intenet/интернет

Язык запросов SQL

Глава 3 Компоненты SQL

Язык определения данных
Создание таблиц
Таблица CUSTOMER которую можно
Место для представления
Однотабличное представление
З 2 Создание представления
Создание многотабличного представления
Таблица 3 1 Таблицы базы данных магазина спорттоваров
Структура базы данных магазина спорттоваров

З 4 Создание многотабличного
Сборка таблиц в схемы
Заказ по каталогу
Иерархическая структура типичной базы данных SQL
Знакомство с командами DDL
CREATE
ALTER
DROP
Язык манипулирования данными
Выражения со значениями

Выражения с числовыми значениями
Выражения со строковыми значениями
Таблица 3 2 Примеры конкатенации строк
Внимание
Выражения со значениями датывремени
Выражения с логическими значениями
Выражения со значениями определяемыми пользователем
Выражения со значениями типа записи
Выражения со значениями типа коллекции
Выражения со значениями типа ссылки

Предикаты
Таблица 3 3 Операторы и предикаты сравнения
Логические связки
Итоговые функции
COUNT
MAX
MIN
SUM
AVG

Подзапросы
Язык управления данными
Транзакции
Пользователи и полномочия
Таблица 3 4 Виды защиты
Ограничения ссылочной целостности угрожают вашим данным
Делегирование ответственности за безопасность

Язык запросов SQL

Глава 4 Создание и поддержка простой базы данных

Создание простой базы данных с помощью RADинструмента
Правдоподобный сценарий
Экран появившийся при создании
Экран проекта дает полный контроль
Диалоговое окно создания таблицы
Значения по умолчанию для свойств
Диалоговое окно создания таблицы
Текстовое поле Имя таблицы в диалоговом окне Сохранить как
Внимание

Диалоговое окно определения первичного ключа
Изменение структуры таблицы
В определение таблицы PowerDesign вставлена новая строка
Переделанное определение таблицы
Определение первичного ключа
Поле ProposalNumber объявлено первичным ключом
Создание индекса
Диалоговое окно Индексы
Определение индексов для полей LastName и HowKnom
Удаление таблицы

Чтобы удалить таблицу выберите
Создание таблицы Power Design с помощью DDL
Использование языка SQL с приложением Microsoft Access
Создание таблицы
Создание индекса
Изменение структуры таблицы
Удаление таблицы
Удаление индекса
Переносимость

Язык запросов SQL

Глава 5 Создание многотабличной реляционной базы данных
Проектирование базы данных
Действие 1 определение объектов
Действие 2 определение таблиц и столбцов
Внимание
Действие 3 точное определение таблиц
Таблица 5 1 Таблицы базы данных VetLab
Таблицы и связи базы данных VetLab

Ускорение работы базы данных с помощью ключей
Первичные ключи
Работа с индексами
Что такое индекс
Таблица 5 2 Таблица CLIENT
Таблица 5 3 Индекс по названию клиента для таблицы CLIENT
Зачем нужен индекс
Поддержание индекса
Обеспечение целостности

Смысловая целостность
Доменная целостность
Ссылочная целостность
Области возможных трудностей
Ввод неправильных данных
Ошибка оператора
Механическое повреждение
Злой умысел
Избыточность данных
Превышение технических возможностей базы данных

Ограничения
Ограничения столбцов
Ограничения таблиц
Нормализация базы данных
Эта таблица SALES ведет к аномалиям изменения
Таблица SALES разбита на две другие
Первая нормальная форма
Вторая нормальная форма
В таблице SALESJRACK составной
Третья нормальная форма

Доменноключевая нормальная форма (ДКНФ)
Ненормальная форма

Язык запросов SQL

Глава 6 Манипуляции данными из базы
Получение данных
Создание представлений
Создание представлений из таблиц
Представление ORDERS_BY_STATE
Создание представления с условием выборки

Представление REPORTINGJAG (задержка
Создание представления с модифицированным атрибутом
З Представление созданное
Обновление представлений
Добавление новых данных
Добавление данных в виде отдельных записей
Добавление данных только в выбранные столбцы
Добавление в таблицу группы строк
Копирование из внешнего файла данных
Перенос всех строк из одной таблицы в другую

Перенос выбранных столбцов и строк из одной таблицы в другую
Внимание
Обновление имеющихся данных
Таблица 6 1 Таблица CUSTOMER
Таблица 6 2 Таблица CUSTOMER после
Таблица 6 3 Таблица CUSTOMER после
Таблица 6 4 Таблица CUSTOMER после
Перемещение данных
Удаление устаревших данных

Язык запросов SQL

Глава 7 Определение значений
Значения
Значения типа записи
Литеральные значения
Таблица 7 1 Примеры литералов различных типов данных
Переменные
Специальные переменные
Ссылки к столбцам
Выражения со значением

Строковые выражения со значением
Числовые выражения со значением
Выражения со значением датывремени
Интервальные выражения со значением
Условные выражения со значением
Функции
Суммирование с помощью итоговых функций
Таблица 7 2 Питательные компоненты
COUNT
AVG

МАХ
MIN
SUM
Функции значения
Строковые функции
SUBSTRING
UPPER
LOWER
TRIM
TRANSLATE и CONVERT

Числовые функции
POSITION
EXTRACT
CHARACTER_LENGTH
OCTET_LENGTH
CARDINALITY
ABS
MOD
LN...
ЕХР

POWER
SQRT
FLOOR
CEIL или CEILING
WIDTH_BUCKET
Функции значения датывремени

Язык запросов SQL

Глава 8 Сложные выражения со значением
Условные выражения GASC
Использование выражения CASE с условиями поиска
Обновление значений на основе условия

Обход условий вызывающих ошибки
Использование выражения CASE со значениями
Специальное выражение CASE — NULLIF
Еще одно специальное выражение CASE — COALESCE
Преобразование типов данных с помощью выражения CAST
Использование выражения CAST внутри SQLкода
Использование выражения CAST при
Выражения со значением типа записи

Язык запросов SQL

Глава 9 "Пристрелка" к нужным данным
Уточняющие предложения

Таблица 9 1 Уточняющие предложения и их назначение
Предложения From
Предложения WHERE
Предикаты сравнения
Таблица 9 2 Предикаты сравнения языка SQL
SIMILAR
NULL
Внимание
ALL SOME ANY
EXISTS

UNIQUE
DISTINCT
OVERLAPS
MATCH
Правила ссылочной целостности
Логические связки
AND
OR...
NOT

Внимание
Предложения GROUP BY
Результат выбора информации о
Средний уровень продаж по каждому продавцу
Общие продажи по каждому продавцу
Предложение HAVING
Общие продажи по каждому продавцу за исключением Фергюсона

Язык запросов SQL

Глава 10 Реляционные операторы

UNION
Внимание
INTERSECT
EXCEPT
Операторы объединения
Простой оператор объединения
Объединение основанное на равенстве
Перекрестное объединение
Естественное объединение
Условное объединение

Объединение по именам столбцов
Внутреннее объединение
Внешнее объединение
Левое внешнее объединение
Таблица 10 1 LOCATION (представительство)
Таблица 10 2 DEPT (отдел)
Таблица 10 3 EMPLOYEE (сотрудник)
Правое внешнее объединение
Полное внешнее объединение
Объединениеслияние

Таблица 10 4 Таблица EMPLOYEE
Таблица 10 5 Таблица PROJECTS
Таблица 10 6 Таблица SKILLS
Таблица 10 7 Результаты внутреннего объединения
Таблица 10 8 Результат операции union join
Таблица 10 9 Результат применения
Таблица 10 10 Усовершенствованный
ON или WHERE

Язык запросов SQL

Глава 11 Использование вложенных запросов

Зачем использовать подзапрос
Что делают подзапросы
Вложенные подзапросы которые возвращают наборы строк
Таблица 11 1 Таблица PRODUCT
Таблица 11 2 Таблица COMPONENT
Таблица 11 3 Таблица COMPOSED
Подзапросы перед которыми стоит ключевое слово IN
Подзапросы перед которыми стоит ключевое слово NOT IN
Вложенные запросы возвращающие одно значение

Таблица 11 4 Таблица CUSTOMER
Таблица 11 5 Таблица CONTACT
Кванторы ALL SOME и ANY
Вложенные запросы которые являются
EXISTS
NОТ EXISTS
Другие коррелированные подзапросы
Коррелированные подзапросы перед
Коррелированные подзапросы перед
Подзапросы в предложении HAVING

Операторы UPDATE DELETE и INSERT

Язык запросов SQL

Глава 12 Рекурсивные запросы
Что такое рекурсия
Результат вызова spiral(1)
Маленькие трудности
Сбой недопустим
Что такое рекурсивный запрос
Где можно использовать запрос

Таблица 12 1 Авиарейсы компании Vannevar Airlines
Трудный способ
Экономия времени с помощью рекурсивного запроса
Таблица 12 2 Таблица ReachableFrom
Таблица 12 3 Таблица ReachableFrom
Где еще можно использовать рекурсивный запрос

Язык запросов SQL

Глава 13 Обеспечение безопасности базы данных
Язык управления данными как часть SQL

Уровни пользовательского доступа
Администратор базы данных
Владельцы объектов базы данных
"Публика"
Иерархическая структура полномочий доступа
Предоставление полномочий пользователям
Роли
Вставка данных
Просмотр данных
Внимание

Модификация табличных данных
Удаление из таблицы устаревших строк
Ссылки для связанных друг с другом таблиц
Использование доменов наборов
Внимание
Инициирование выполнения операторов SQL
Предоставление полномочий
Аннулирование полномочий

Экономия времени и сил благодаря

Язык запросов SQL

Глава 14 Защита данных

Угрозы целостности данных
Нестабильность платформы
Внимание
Аппаратный сбой
Одновременный доступ
Проблемы взаимодействия транзакций
Последовательное выполнение исключает
Внимание Последовательное выполнение
Использование транзакций SQL Одним
Оператор COMMIT Хотя в SQL 2OO3

Блокирование объектов базы данных

Язык запросов SQL

Глава 15 Использование SQL в приложениях
SQL в приложении
Внимание
Сильные и слабые стороны SQL
Сильные и слабые стороны процедурных языков
Трудности совместного использования SQL с процедурным языком
Противоположные режимы работы

Несовместимость типов данных
SQL код в программе написанной на процедурном языке
Встроенный SQL
Объявление базовых переменных
Преобразование типов данных
Модульный язык
Объявления модулей
Процедуры модуля
Объектноориентированные RADинструменты

Язык запросов SQL

Глава 16 ODBC и JDBC
ODBC
Интерфейс ODBC
Компоненты ODBC
ODBC в среде клиент/сервер
ОDBC и Internet
Система клиент/сервер в сравнении с системой на базе Web
Серверные расширения

Система базы данных на основе Web с серверным расширением
Клиентские расширения
Вспомогательные приложения
Включаемые модули Netscape Navigator
Управляющие элементы ActiveX
Аплеты Java
Webприложение базы данных использующее аплет Java
Сценарии
ODBC и интранет
JDBC

Внимание

Язык запросов SQL

Глава 17 SQL 2003 и XML
Как XML связываемся с SQL
Тип данных XML
Когда используются XMLданные
Когда ХМLданные не используются
Преобразование данных из формата SQL в формат XML и наоборот
Преобразование наборов символов
Преобразование идентификаторов

Преобразование типов данных
Преобразование таблиц
Обработка неопределенных значений
Создание XMLсхемы
Получение XML результатов при использовании операторов SQL
Оператор XMLELEMENT
Оператор XMLFOREST
Оператор XMLGEN
Оператор XMLCONCAT
Оператор XMLAGG

Преобразование не предопределенных типов данных в XML
Домены
Отдельные UDTтипы
Строки
Массивы
Мультимножества