
- •Информационное обеспечение систем управления
- •Содержание
- •1 Архитектуры обработки данных. 8
- •2 Способы организации данных. 10
- •3 Язык sql как язык работы с реляционными базами. 12
- •4 Данные и взаимосвязи. 13
- •5 Основы методологии idef1x 19
- •Insert into тклиент 46
- •1Архитектуры обработки данных.
- •1.1Архитектура хост/терминал.
- •1.2А рхитектура файл/сервер.
- •1.3Архитектура клиент/сервер.
- •1.4Многозвенная архитектура.
- •2Способы организации данных.
- •2.1Сетевая модель данных
- •2.2Реляционная модель данных.
- •3Язык sql как язык работы с реляционными базами.
- •4Данные и взаимосвязи.
- •4.1Объекты.
- •4.2Первичные ключи. Что выбрать в качестве первичных ключей для каждой из таблиц?
- •4.3Нормализация данных.
- •4.3.1Первая нормальная форма.
- •4.3.2 Вторая нормальная форма.
- •4.3.3Третья нормальная форма.
- •4.4Типы данных.
- •4.4.1Числовые целые типы данных.
- •4.4.2Числовые типы данных с плавающей точкой.
- •4.4.3Символьные типы данных.
- •4.4.4. Типы данных date, time и datetime.
- •4.4.5Специальные типы данных.
- •5Основы методологии idef1x
- •5.1Предназначение idef1x
- •5.2Сущности в idef1x и их атрибуты.
- •5.3Связи между сущностями
- •5.4Идентификация сущностей. Представление о ключах.
- •5.5Классификация сущностей в idef1x. Зависимые и независимые сущности.
- •5.6Типы связей между сущностями. Идентифицирующие и неидентифицирующие связи.
- •5.7Преимущества idef1x
- •5.8Модель «склад» в нотации idef1x
- •6.1Структура запроса, основные ключевые слова и операторы
- •6.1.1 Список основных операторов sql
- •6.1.2 Список основных ключевых слов sql
- •6.2Оператор select
- •6.2.1Предложение select
- •6.2.2Предложение from
- •6.2.2.1Повторяющиеся строки (ключевое слово distinct).
- •6.2.3Предложение where
- •6.2.4Условия поиска.
- •6.2.4.2Составные условия поиска (and, or и not)
- •6.2.4.3Проверка на принадлежность диапазону значений (between)
- •6.2.4.4Проверка на членство в множестве (in)
- •6.2.4.5Проверка на равенство значению null (is null)
- •6.2.4.6Проверка на соответствие шаблону (like)
- •6.2.4.7Подстановочные знаки
- •6.2.5Сортировка результатов запроса (предложение order by)
- •6.2.6 Агрегатные функции
- •6.2.6.1Вычисление суммы столбца (sum)
- •6.2.6.2Вычисление экстремумов (min и max)
- •6.2.6.3Вычисление среднего значения (avg)
- •6.2.6.4Вычисление количества значений в столбце (count)
- •6.2.7Запросы с группировкой (предложение group by)
- •6.2.8Условия поиска групп having
- •6.3Работа с несколькими таблицами
- •6.3.1Объединение при помощи оператора where
- •6.3.2Внутренние и внешние объединения
- •6.4 Вложенные запросы
- •6.4.1Исходная база данных
- •6.4.2Вложение запросов.
- •6.4.3Оператор exists
- •6.5Объединение множества запросов в один
- •6.5.1Когда можно выполнить объединение запросов ?
- •6.5.2Использование union с order by.
- •6.6Команды модификации данных
- •6.6.1Ввод значений (insert)
- •6.6.1.1Вставка пустых указателей (null)
- •6.6.1.2Именование названий столбцов для вставки
- •6.6.1.3Вставка результатов запроса
- •6.6.2Удаление строк из таблиц (delete)
- •6.6.3Изменение значений поля (update)
- •6.6.4Использование подзапросов для команд модификации данных
- •6.6.4.1Использование подзапросов в insert
- •6.6.4.2Использование подзапросов с delete
- •6.7Модификация структуры данных
- •6.7.1Команда сreate table
- •6.7.2Команда alter table.
- •6.7.3Команда drop table
4.3.2 Вторая нормальная форма.
Второе правило нормализации требует, чтобы любой неключевой столбец зависел от всего первичного ключа. Следовательно, представление таблицы во второй нормальной форме требует, чтобы все столбцы, не являющиеся первичными ключами (столбцы, описывающие объект, но однозначно не идентифицирующие его), зависели от всего первичного ключа, а не от его отдельных компонентов.
Вторая нормальная форма напрямую связана с правилом выбора первичного ключа, то есть с определением уникального идентификатора. Если естественный ключ был выбран неправильно, то второе правило нормализации выполняться не будет.
4.3.3Третья нормальная форма.
Третья нормальная форма повышает требования второй нормальной формы: она не ограничивается составными первичными ключами, а требует, чтобы ни один неключевой столбец не зависел от другого неключевого столбца. Любой неключевой столбец должен зависеть только от столбца первичного ключа. Другими словами, любой неключевой столбец зависит только от всего ключа и больше ни от чего, кроме ключа.
Например, если бы Idn_города и его название находились в одной таблице (Клиент), то данная таблица содержала бы два связанных поля. А это не удовлетворяет третьей нормальной форме. Поэтому мы и выделили столбец города в отдельную таблицу.
Заключительные замечания:.
Разработав структуру базы данных, вы должны создать таблицы и заполнить их некоторыми данными. Затем вы должны проверить разработанную структуру, запуская на выполнение запросы и изменяя данные. Эти тесты могут выявить недочеты в исходной структуре данных.
Перед практическим использованием созданной базы данных вам потребуется рассмотреть еще несколько важных вопросов: индексирование, безопасность и целостность. Обеспечение целостности – это одна из главных задач в процессе проектирования базы данных. Вы должны быть уверены, что изменения в одной части данных распространяются на все копии этих данных по всей базе данных.
4.4Типы данных.
Тип данных (datatype) – это первая характеристика, которая задается для столбца таблицы, при этом определяется тип хранящейся в столбце информации. Тип данных задается после имени столбца с помощью соответствующего ключевого слова. Кроме этого может потребоваться ввод некоторых параметров. После определения типа данных столбца таблицы он хранится в виде постоянной характеристики столбца и не может быть изменен. Типы данных можно также использовать для определения других структур хранения данных, таких как параметры и локальные переменные. Параметры и локальные переменные – это структуры, которые хранятся не на диске, а в оперативной памяти. Для определения параметров и переменных имеются ограничения на подмножество типов данных.
Рассмотрим встроенные в систему типы данных, которые можно использовать в SQL Server при определении таблиц и хранимых процедур.
4.4.1Числовые целые типы данных.
Числовые (numeric) целые (integer) типы данных – это первые из нескольких типов данных, которые можно использовать для определения сохраняемых объектов. Эти типы данных можно напрямую (без использования функций) производить арифметические операции. Число, хранящееся как целое, всегда занимает один и то же объем памяти, независимо от значения числа.
Тип int , или integer. Можно хранить отрицательные или положительные целые числа.