- •Н.И. Коваленко
- •Коваленко н.И., Банчук г.Г.
- •Коваленко Надежда Ивановна
- •Тема I. Общие сведения о ms sql Server 2000
- •1. Базы данных типа клиент/сервер
- •Система типа клиент/сервер
- •2. История sql Server
- •Основные количественные показатели системы sql – сервер
- •3. Обзор sql Server 2000
- •4. Стандартные объекты sqlServer
- •ТемаIi. Работа с ms sqlServer2000 и его компонентами
- •1. Запуск, приостановка и завершение работы sqlServer
- •2. SqlServerEnterpriseManager
- •3. Программа sqlServerQueryAnalyzer
- •Панель инструментов утилиты Query Analyzer
- •4. Обслуживание баз данных
- •Файлы операционной системы, используемые sql Server 2000:
- •Структура базы данных
- •5. УстановкаMicrosoftSqlServer2000
- •Ограничения инсталляции sql-сервера
- •ТемаIii. Работа с базой данных создание и использование индексов и ключей
- •1. Базы данных и их свойства
- •Описание ролей, используемых для доступа к базе данных и серверу баз данных
- •Дополнительные опции настройки базы данных
- •Настройка параметров доступа к базе данных
- •2. Таблицы базы данных.
- •3. Типы данных, используемые в sql-сервере
- •Текстовые типы данных
- •Типы данных даты и времени
- •Типы данных для хранения больших объемов информации
- •Типы данных специального назначения:
- •4. Основные операции с базами данных
- •5. Восстановление бд (администрированиеSqlServer2000)
- •6. Создание и использование индексов и ключей в системе sql Server.
- •7. Использование ограничений
- •8. Использование диаграмм для разработки структуры базы данных
- •9. Создание представлений (видов)
- •ТемаIv. Правила и создание значения
- •1. Инструменты контроля целостности данных
- •2. Создание правил и стандартных значений
- •ТемаV. Триггеры в системеSql–сервер
- •1. Понятие триггера. Типы триггеров
- •2. Создание триггеров
- •3. Использование триггеров. Виды триггеров
- •ТемаVi. Оптимизация запросов и основы sql
- •1. Оптимизация запросов
- •2. Основные операторы sql в sql Server 2000
- •3. Объединение таблиц в операторе select
- •From titles
- •4. Использование директив group by иHaving
- •5. Оператор insert
- •6. ОператорUpdate
- •7. ОператорDelete
- •8. ОператорCreatetable
- •ТемаVii. Создание и работа с представлениями
- •1. Основные сведения о представлениях
- •2. Создание представлений. Отображение представлений
- •3. Редактирование представлений. Отображение зависимостей представлений. Создание представлений и представлений
- •4. Переименование столбцов представлений. Переименование представлений. Удаление представлений
- •5. Изменение данных посредством представлений. Обновление данных с помощьюSqlServerEnterpriseManager
- •ТемаViii. Создание и использование курсоров
- •1. Понятие курсора
- •2. Выборка данных из курсора
- •3. Операторы и глобальные переменные для работы с курсорами
- •4. Примеры использования курсоров
- •ТемаIx. Использование хранимых процедур
- •1. Достоинства и недостатки хранимых процедур
- •2.Создание хранимой процедуры
- •3. Операторы языка управления программой. Оператор declare
- •4. Операторы goto, begin…end и if…else
- •5. Операторы waitfor, return, while, break и continue
- •6. Операторы print и raiserror
- •7. Использование параметров в хранимых процедурах
- •8. Глобальные переменные. Отладка хранимых процедур
- •Тема X. Транзакции и блокировки
- •1. Определение транзакции. Ограничения для транзакций. Уровни изоляции транзакций
- •2. Базовая информация о блокировках. Типы блокировок
- •3. Создание транзакций и работа с ними. Точки сохранения
- •4.Отображение информации о блокировках. Явное задание блокировки
- •Описание параметров для явного задания блокировок
- •ТемаXi. Система безопасностиSqlServer2000
- •1. Типы безопасности. Создание и управление бюджетами пользователей
- •Стандартные роли сервера
- •Стандартные роли базы данных
- •2. Добавление новых пользователей. Удаление идентификаторов и пользователей
- •3. Создание ролей. Удаление ролей
- •4. Права доступа. Управление правами доступа
- •ТемаXii. Использование распределенных объектов управления.
- •1.Sql-dmo. Назначение, возможности
- •2. Экспорт данных с помощью команды вср
- •3. Использование объектовSql-dmOв хранимых процедурах
- •ТемаXiii. Основные сведения о хранилищах данных
- •1. Хранилища данных. Системы поддержки принятия решений (dss). Интерактивная аналитическая обработка (olap)
- •Сравнение субд и хранилища данных
- •2. Компоненты хранилища данных. Хранилища данных и магазины данных
- •3. Преобразование данных. Метаданные
- •4. Разработка плана хранилища данных
- •Microsoft Repository
- •С помощью мастера dts можно выполнять также простые преобразования данных, сложные преобразования выполняются с помощью dts Designer.
- •ТемаXiv. Использование служб преобразования данных
- •1. Службы преобразования данных (dts).DtSи хранилища данных
- •2. СредствоDtsDataPump
- •3. МастераDts
- •4. ИспользованиеDtsDesigner
- •Тема XV. Службы olap Microsoft sql Server
- •1.OlaPи многомерные данные
- •2. Хранение данных в бдolap
- •3. Оптимизация базы данныхOlap
- •4. Доступ к многомерным данным
3. Типы данных, используемые в sql-сервере
Одним из основных моментов в процессе создания таблиц является определение типов данных для ее полей. Тип данных поля таблицы определяет тип информации, которая будет размещаться в этом поле. SQL-сервер поддерживает большое число различных типов данных: текстовые, числовые, двоичные и т.д.
Если имеется необходимость в размещении, каких-либо специфических данных в поле таблицы, то в этом случае можно воспользоваться так называемыми пользовательскими типами данных.
Рассмотрим подробней типы данных, используемые в SQL-сервере. Обратите внимание на колонку L P S представленных ниже таблиц. Здесь отображается возможность корректировки (■ - корректировка допустима, □ - корректировка недопустима) значений Length, Precision и Scale в дизайнере таблиц утилиты SQL Server Enterprise Manager. В таблице 8 представлены текстовые типы данных SQL сервер.
Таблица 8
Текстовые типы данных
Название |
LPS |
Описание |
Char |
■□□ |
Текстовый тип данных, при использовании которого задается его размерность, причем для каждого символа выделяется один байт. Размерность: до 8000 символов. |
Nchar |
■□□ |
Аналогичен типу данных Char, за исключением размерности. Размерность: до 4000 символов. |
Varchar |
■□□ |
Используется для хранения текстовой информации переменной длины. Размерность: до 8000 символов. |
Nvarchar |
■□□ |
Аналогичен типу данных Varchar, за исключением размерности. Размерность, до 4000 символов. |
При вводе данных текстового типа, в операторах языка SQL используются одинарные или двойные кавычки. В таблице 8 представлены типы данных, основным отличием которых является их размерность. Так, например, после создания поля типа char(15) или nchar(15) при добавлении в него информации будут автоматически добавляться несколько дополнительных пробелов для доведения размерности вводимых данных до 15 символов.
При этом для каждого символа SQL-сервер отводит один байт. C другой стороны, использование типов данных varchar(15) или nvarchar(15) позволяет определить только максимальную размерность поля, при внесении информации в эти поля будут записываться только данные без каких-либо дополнительных символов; однако, при превышении этой размерности, вся лишняя информация будет утеряна. При указании типа данных для определенного поля с помощью дизайнера таблиц утилиты SQL Server Enterprise Manager размерность представленных текстовых типов данных указывается в колонке Length напротив выбранного поля.
Числовые типы данных SQL-сервер описаны в таблице 9.
Таблица 9
Числовые типы данных:
Название |
LPS |
Описание
|
Int |
□□□ |
Тип данных, позволяющий хранить положительные и отрицательные целые числа, занимающий в памяти 4 байта. Диапазон: от -231до +231. |
Smallint |
□□□ |
Занимает в памяти 2 байта. Аналогичен типу данных Int, за исключением диапазона значений. Диапазон от -32768 до 32767 |
Tinyint |
□□□ |
Тип данных, используемый для хранения положительных целых чисел, занимающий в памяти 1 байт. Диапазон: от 0 до 255. |
Real |
□□□ |
Тип данных, используемый для хранения положительных и отрицательных чисел с плавающей точкой с точностью до 7 цифр; занимает в памяти 4 байта. Диапазон от -3.4Е-38 до +3,4Е+38. |
Float |
□□□ |
Тип данных, используемый для хранения положительных и отрицательных чисел с плавающей точкой с точностью до 15 цифр; занимает в памяти до 8 байт. Диапазон от -1,7Е-308 до -1,7Е+308. |
Decimal |
□■■ |
Тип данных, позволяющий определять точно интервал значений вводимых десятичных чисел, занимает в памяти от 2 до 17 байт. Диапазон от -10Е-38 до +10Е+38. |
Numeric |
□■■ |
Аналогичен типу данных Decimal. |
Money |
□□□ |
Тип данных, используемый для хранения денежных значений, занимающий в памяти до 8 байт. Диапазон от -922 337 203 685 477,58081 до +922 337 203 685 477.5807. |
Smallmoney |
□□□ |
Аналогичен типу данных Money, занимает в памяти до 4 байт. Диапазон от -214,748.3648 до 14,748.3647. |
Числовые типы данных включают две группы типов данных: используемые для хранения 1) целых чисел и 2) чисел с плавающей точкой. Отличие между типами Int, Smallmoney и Tinyint заключается в диапазонах используемых значений. Для хранения чисел с плавающей точкой используют типы данных Real и Float. Отличием в данном случае является формат точности и диапазон представления чисел.
Типы данных Decimal и Numeric позволяют самостоятельно определить формат точности числа с плавающей точкой. В этом случае, при корректировке параметров Precision и Scale в диалоговом окне дизайнера таблиц утилиты SQL Server Enterprise Manager, изменяется формат представления этих чисел и, соответственно, объём памяти, занимаемый данными этого типа. При этом с помощью параметра Precision указывается максимальное количество цифр вводимых данных этого типа. Изменение параметра Length в зависимости от Precision при указании типа данных Decimal и Numeric описано в таблице 10.
Таблица 10
Precision, цифр |
Length, байт |
1 -9 |
5 |
10-19 |
9 |
20-28 |
13 |
29-38 |
17 |
В SQL-сервере имеются два типа данных, ориентированных на хранение денежных значений. Тип данных Money физически записывает информацию в виде двух четырехбайтовых значений - отдельно для целой и дробной части. Данные этого типа сохраняются с точностью до десятичных долей денежной единицы. Для хранения денежных значений чаще используется тип данных Smallmoney. Его структура аналогична структуре Money, однако физически данные этого типа сохраняются в виде двух двухбайтовых значений, что уменьшает занимаемый ими объем в памяти компьютера.
Типы данных даты и времени приведены в таблице 11.
Таблица 11