Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции SQL Server.docx
Скачиваний:
49
Добавлен:
24.09.2019
Размер:
4.09 Mб
Скачать

Лекция 2. Создание типов данных и таблиц

Данные в базе хранятся в таблицах. Каждая единица информации базируется на определенном типе данных. В данной лекции рассматриваются предопределенные типы данных и описывается как создать собственные типы данных. Здесь также описывается как создать таблицы, как и для чего использовать секционирование таблиц.

Создание типов данных (Types)

Типы данных определяют набор возможных значений для каждого столбца таблицы БД. SQL Server поддерживает некоторое количество системных типов данных. Необходимо использовать по возможности самые короткие типы данных. Это позволит поместиться большему количеству строк на странице, что обеспечит наилучшую производительность.

В следующей таблице приведены некоторые системные типы данных SQL Server.

Таблица 1. Некоторые системные типы данных

Категория

Тип данных

Описание

Символьные

char

Строка символов с фиксированной длиной (до 8 кб – 8192 символа)

varchar

Строка символов с переменной длиной (до 8 кб)

text

Символьные данные, размер которые может превышать 8 кб

Unicode

nchar

Строка символов Unicode с фиксированной длиной (до 4 кб – 4096 символов)

nvarchar

Строка символов Unicode с переменной длиной (до 4 кб – 4096 символов)

ntext

Символьные данные Unicode, размер которых может превышать 4096 символов

Дата и время

datetime

Даты из диапазона 1.01.1753 г. – 31.12.9999 г.

smalldatetime

Даты из диапазона 1.01.1900 г. – 6.06.2079 г.

Число с фиксиро­ванной запятой

decimal

numeric

Данные до 38 знаков в длину. Этот тип требует задания общей длины числа и точности – числа знаков после запятой

Число с плавающей запятой

float

Числа из интервала от -1,79Е+308 до 1,79Е+308

real

Числа из интервала от -3,40Е+38 до 3,40Е+38

Целочис­ленные

int

Число из интервала от -2147483648 до 2147483647

smallint

Число из интервала от -32768 до 32767

Денежные

money

Суммы от -922337203685477,5808 до 922337203685477,5808

smallmoney

Суммы от -214748,3648 до 214748,3648

XML

xml

0-2Gb

Изображение

image

0-2Gb

Двоичные

binary[(n)]

varbinary[(n)]

varbinary(max)

0-8000b

0-2Gb

Глоб идентиф

uniqueidentifier

16b

Специальные

bit

cursor

timestamp

sysname

table

sql_variant

1b

0-8b

8b

256b

0-8,016b

Можно определить собственный тип данных на основе одного из существующих системных типов. Пользовательский тип данных:

  • Определяется для конкретной базы данных

  • Должен иметь уникальное имя внутри БД

Пользовательский тип данных следует создавать, если необходимо определить элементы данных в различных таблицах с одним и тем же форматом. Например, столбец с кодом страны в соответствии со стандартом ISO – 2 латинских символа: JP – Япония, CH – Швеция, RU – Россия и т.д. Различные таблицы могут содержать столбец, хранящий код страны. Тогда можно определить тип данных CountryCode и использовать его в разных таблицах в качестве типа данных.

Если создать тип данных CountryCode в БД model, то он автоматически будет включаться во все вновь создаваемые БД.

Чтобы создать тип данных, необходимо использовать Object Explorer в SQL Server Management Studio или команду CREATE TYPE языка Transact-SQL. Пример:

CREATE TYPE dbo.CountryCode

FROM char(2)

NULL

Чтобы изменить созданный ранее тип данных используется команда ALTER TYPE. Чтобы удалить – команда DROP TYPE.