
- •Введение
- •Часть 1
- •Глава 1 модели данных
- •Уровни моделей данных
- •1 Инфологические модели данных
- •1.1 Диаграмма Бахмана
- •1.2 Модель «сущность-связь»(er)
- •Нотация Мартина
- •Нотация idef1x
- •Нотация Баркера
- •2. Даталогические модели
- •2.1. Документальные модели
- •2.1.1. Ориентированные на формат документа
- •2.1.2. Дескрипторные модели
- •2.1.3. Тезаурусные модели
- •2.2. Фактографические модели
- •2.2.1. Теоретико-графовая модель
- •2.2.1.1. Иерархическая модель
- •2.2.1.2. Сетевая модель
- •2.2.2. Теоретико-множественные модели
- •2.2.2.1. Реляционная модель
- •Правила Теда Кодда
- •2.2.2.2. Бинарных ассоциаций
- •2.2.3. Объектно-ориентированные модели
- •3. Физические модели
- •3.1. Модели, основанные на файловых структурах
- •3.2. Модели, основанные на странично-сегментной организации
- •Известные сетевые субд:
- •Глава 2. Проектирование баз данных
- •1.1. Избыточность данных и аномалии обновления
- •1.2. Функциональные зависимости
- •1.3. Нормальные формы и схемы выполнения нормализации
- •1) 1Нф.
- •2) 2Нф.
- •3) 3Нф.
- •4) Нфбк (нормальная форма Бойса-Кодда).
- •5) 4Нф.
- •6) 5Нф.
- •1.4 Синтез реляционных баз данных
- •1.5 Пример синтеза
- •1.6 Пример декомпозиции
- •Часть 2
- •Реляционная алгебра
- •Введение
- •Стандартные реляционные операции
- •Свойства стандартных операций
- •Специальные операции
- •Язык sql как стандартный язык баз данных
- •Введение в sql
- •2.1.1 Функциональные возможности sql
- •2.2 Создание баз данных
- •2.2.1 Оператор create database
- •2.3 Удаление баз данных
- •2.4.3 Размер поля
- •2.4.4 Тип поля
- •2.5 Удаление таблиц
- •2.5.1 Оператор drop table
- •2.6. Данные и записи данных
- •2.6.1 Оператор select
- •2.6.2 Оператор distinct
- •2.6.3 Оператор from { таблица [ псевдоним ] } [,...]
- •2.6.4 Оператор where (условие)
- •2.6.5 Оператор group by { поле | Integer } [,...]
- •2.6.6 Оператор having( условие)
- •2.6.7 Оператор order by { поле | Integer [ asc|desc ] } [,...]
- •2.6.8 Оператор union [all] select-команда
- •2.6.9 Оператор intersect [all] select-команда
- •2.6.10 Оператор except [all] select-команда
- •2.6.11 Into { temp | scratch } таблица
- •2.6.12 Insert - добавлять данные
- •2.6.13 Values ( константа [,...] )
- •2.6.18 Unload - выгрузить данные в текстовый файл
- •2.7 Операторы
- •2.7.3 Арифметические операторы
- •2.7.4 Приоритеты операторов
- •2.8 Функции
- •2.8.3 Текстовые функции
- •2.8.4 Функции работы с временем и датами
- •2.8.5 Вспомогательные функции
- •2.9 Виды на таблицы данных (Просмотры)
- •2.9.1Create view - создать новый вид на таблицу данных
- •2.9.2 Drop view - удалить вид на таблицу данных
- •2.10 Пользовательские процедуры
- •2.10.1 Create procedure - создать пользовательскую процедуру
- •2.10.2 Dba
- •2.10.3 References { byte | text }
- •2.10.4 Default { Wert | null }
- •2.10.5 Returning { Feldtyp | references { byte | text } }
- •2.10.6 Drop procedure - удалить процедуру
- •2.12.2 Нормальный текст
- •1999 - Sql-99, sql-3 (iso/iec 9075:1999(e) Information technology - Database languages - sql)
- •2003 - Sql-2003
- •4. Виды систем баз данных
- •4.1.Oracle
- •4.1.1 Типы данных
- •4.1.1.1.Символьные типы
- •4.1.1.2.Числовые типы
- •Даты, временные метки и интервалы
- •4.1.1.3.Логические типы
- •Двоичные данные
- •4.1.1.4.Типы данных для сети Интернет
- •4.1.1.5.Типы данных «Any»
- •4.2. Mysql
- •4.2.1 Типы данных.
- •4.2.1.1.Character String (строковый)
- •4.2.1.2.National Character String (национальный строковый)
- •4.2.1.3.Binary Large Object String (двоичный)
- •4.2.1.4.Numeric (числовой)
- •4.2.1.5.Datetime (дата/время)
- •4.2.1.6.Interval (интервальный)
- •4.2.1.7.Типы enum и set
- •4.2.2Использование типов столбцов их других систем управления базами данных
- •4.3. Postgresql
- •4.3.1 Типы данных
- •4.3.1.1Числовые типы
- •4.3.1.1.Целочисленные типы
- •4.3.1.2.Числа с заданной точностью
- •4.3.1.3.Типы с плавающей точкой
- •4.3.1.4.Серийные типы
- •4.3.1.5.Денежные типы
- •4.3.1.6.Символьные типы
- •4.3.1.7.Двоичные типы данных
- •4.3.1.8.Типы дата/времени
- •4.3.1.9.Логический тип
- •4.3.1.10.Перечисления
- •5. Использованные в пример таблицы данных
- •Символьные
- •Числовые типы данных
- •Двоичные типы данных
- •Типы данных времени, даты, интервалы
- •Логические типы данных
- •Список литературы
- •Оглавление
- •Часть 1………………………………………………………….…………………………….………… 4
- •Глава 1 модели данных………………………….………………….……………….…........…. 4
- •Глава 2 проектирование баз данных…………..……………………………………...… 40
- •1.4 Синтез реляционных баз …...………………………………………………………… 44
- •Часть 2……...…...………………………………………………………………………………….… 52
4.2.2Использование типов столбцов их других систем управления базами данных
Чтобы облегчить использование кода, написанного в других реализациях SQL, от других поставщиков, MySQL отображает типы столбцов друг на друга, как показано в таблице. Это отображение упрощает импорт определений таблиц из других СУБД в MySQL:
Отображение типов столбцов
Тип в других СУБД |
Тип MySQL |
BINARY(M)
|
CHAR(M) BINARY
|
CHAR VARYING(M)
|
VARCHAR(M)
|
FLOAT4
|
FLOAT
|
FLOAT8
|
DOUBLE
|
INT1
|
TINYINT
|
INT2
|
SMALLINT
|
INT3
|
MEDIUMINT
|
INT4
|
INT
|
INT8
|
BIGINT
|
LONG VARBINARY
|
MEDIUMBLOB
|
LONG VARCHAR
|
MEDIUMTEXT
|
LONG
|
MEDIUMTEXT (MySQL 4.1.0)
|
MIDDLEINT
|
MEDIUMINT
|
VARBINARY(M) |
VARCHAR(M) BINARY |
Отображение типов столбцов происходит при создании таблиц, после чего исходная спецификация типа отбрасывается. Если вы создаете таблицу с типами, используемыми в продуктах других поставщиков, а затем выполняете оператор DESCRIBE имя_таблицы, MySQL показывает структуру в терминах эквивалентных типов MySQL.
4.3. Postgresql
PostgreSQL - это объектно-реляционная система управления базами данных (ORDBMS) (по-русски ОРСУБД или просто СУБД) основанная на POSTGRES, версии 4.2, которая была разработана в Научном Компьютерном Департаменте Беркли Калифорнийского Университета. POSTGRES является пионером во многих аспектах, которые стали доступны в некоторых коммерческих СУБД много позже.
PostgreSQL - это продукт с открытым исходным кодом, который является потомком оригинального кода, написанного в Беркли. PostgreSQL поддерживает большую часть стандарта SQL и предлагает множество современных возможностей:
комплексные запросы
внешние ключи
триггеры
представления (views)
транзакционная целостность
многоверсионное управление параллельным доступом
Также, возможности PostgreSQL могут быть расширены пользователем путём добавления новых
типов данных
функций
операторов
агрегатных функций
индексных методов
процедурных языков
Поскольку СУБД PostgreSQL выпускается под либеральной лицензией, её можно бесплатно использовать, модифицировать и распространять для любых целей, включая личные, коммерческие или академические.
4.3.1 Типы данных
4.3.1.1Числовые типы
Числовые типы представлены двух, четырёх и восьми байтовыми целыми числами, четырёх и восьми байтовыми числами с плавающей точкой и числами с выбираемой точностью (количеством знаков после точки). В таблице перечислены доступные типы.
Числовые типы
Имя |
Размер хранения |
Описание |
Диапазон |
smallint |
2 байта |
целые числа малого диапазона |
от -32768 до +32767 |
integer |
4 байта |
обычные целые числа |
от -2147483648 до +2147483647 |
bigint |
8 байт |
целые числа большого диапазона |
от -9223372036854775808 до 9223372036854775807 |
decimal |
переменный |
числа с точностью, указываемой пользователем, точное число |
без ограничений |
numeric |
переменный |
числа с точностью, указываемой пользователем, точное число |
без ограничений |
real |
4 байта |
переменная точность, неточное число |
точность 6 десятичных разрядов |
double precision |
8 байт |
переменная точность, неточное число |
точность 15 десятичных разрядов |
serial |
4 байта |
целое число с автоувеличением |
от 1 до 2147483647 |
bigserial |
8 байт |
большое целое число с автоувеличением |
от 1 до 9223372036854775807 |