Поделиться через


Типы данных (компонент Database Engine)

С объектом, содержащим данные, связан тип, определяющий виды данных, которые могут храниться в объекте, например символы, целые числа или двоичные данные. Типы данных имеют следующие объекты.

  • Столбцы таблиц и представлений.
  • Параметры хранимых процедур.
  • Переменные.
  • Функции Transact-SQL, возвращающие одно или несколько значений конкретного типа данных.
  • Хранимые процедуры, возвращающие значение. Это значение всегда имеет тип integer.

При назначении типа данных объекту определяются четыре атрибута объекта.

  • Вид данных, содержащихся в объекте.
  • Размер или длина хранимого объектом значения.
  • Точность числа (только в случае численных типов).
  • Масштаб числа (только в случае численных типов).

Сведения о точности, масштабе и длине типов данных см. в разделе Точность, масштаб и длина (Transact-SQL).

Язык Transact-SQL включает следующие типы данных.

bigint

binary

bit

char

cursor

datetime

decimal

float

image

int

money

nchar

ntext

numeric

nvarchar

real

smalldatetime

smallint

smallmoney

sql_variant

table

text

timestamp

tinyint

varbinary

varchar

uniqueidentifier

xml

 

 

Все данные, хранимые в Microsoft SQL Server 2005, должны быть совместимы с одним из этих базовых типов данных. Тип данных cursor является единственным системным типом данных, который не может быть назначен столбцу таблицы. Он может быть назначен только переменным и параметрам хранимых процедур.

Некоторые базовые типы данных имеют синонимы (например, rowversion — это синоним типа timestamp, а national character varying — синоним типа nvarchar). Дополнительные сведения о синонимах см. в разделе Синонимы типов данных (Transact-SQL).

Кроме того, можно создавать два вида пользовательских типов данных.

  • Типы данных псевдонима создаются на основе базовых типов данных. Они позволяют назначить типу данных имя, лучше характеризующее типы значений, которые будут храниться в объекте. Благодаря этому программисту или администратору СУБД будет легче понять, как следует использовать объект, имеющий этот тип. Например:

    -- Create a birthday datetype that allows nulls.
    CREATE TYPE birthday
    FROM datetime NULL
    GO
    -- Create a table using the new data type.
    CREATE TABLE employee (emp_id char(5), emp_first_name char(30), emp_last_name char(40), emp_birthday birthday)
    

    Дополнительные сведения см. в разделе Работа с псевдонимами типов данных.

  • Пользовательские типы данных CLR основаны на типах данных, созданных в управляемом коде и помещенных в сборку SQL Server. Дополнительные сведения см. в разделе Работа с определяемыми пользователем типами данных CLR.

См. также

Основные понятия

Использование двоичных данных
Использование данных типов char и varchar
Использование данных даты и времени
Использование данных в формате целых чисел
Использование типов данных decimal, float и real
Использование денежных данных
Использование типов данных больших значений
Использование типов данных text и image
Использование данных uniqueidentifier
Использование специальных данных
Использование данных в Юникоде
Преобразование типов данных (компонент Database Engine)

Другие ресурсы

CREATE TABLE (Transact-SQL)
CREATE TYPE (Transact-SQL)
Типы данных (Transact-SQL)
Конструирование таблиц
sp_addtype (Transact-SQL)

Справка и поддержка

Получение помощи по SQL Server 2005