CREATE TABLE и типы данных
В версии 7.0 поддерживаются следующие типы данных:
BIT — Целое число равное 0 или1. В Delphi возможно обращение к полю этого типа при помощи свойства AsBoolean (1 = True, 0 = False)
INT — 32-битное целое число в диапазоне от -2,147,483,648 до 2,147,483,647.
SMALLINT — 16-битное целое число в диапазоне от 32,768 до 32,767
TINYINT — 8-битное целое число в диапазоне от 0 до 255
DECIMAL[(P[, S])] — NUMERIC, DEC — Десятичное число с фиксированной точностью в диапазоне от - 10^38 -1 до 10^38 – 1 P – максимальное количество знаков в числе S – количество знаков после запятой
MONEY — Денежный тип данных. Целое 64-битное число, младшие 4 разряда которого отведены под дробную часть. Может хранить числа в диапазоне от -922,337,203,685,477.5808 до 922,337,203,685,477.5807. В Delphi соответствует типу данных Currency
SMALLMONEY — Аналогичен Money, но 32-разрядный и ограничен диапазоном от -214,748.3648 до 214,748.3647FLOAT — DOUBLE PRECISION — Число с плавающей точкой в диапазоне от -1.79E + 308 до 1.79E + 308.
REAL — Число с плавающей точкой в диапазоне от -3.40E + 38 до 3.40E + 38
DATETIME — Дата и время в диапазоне от 1 января 1753 г. до 31 декабря 9999 г. с точностью 3.33 миллисекунды
SMALLDATETIME — Дата и время в диапазоне от 1 января 1900 г. до 6 июня 2079 г. с точностью до 1 минуты
TIMESTAMP — Уникальный в пределах БД идентификатор. Этот тип данных НЕ СОДЕРЖИТ времени и гарантирует лишь, что поле этого типа уникально в рамках базы данных.
UNIQUEIDENTIFIER — Глобальный уникальный идентификатор. Статистически уникальное 16-битное значение. Над этим типом данных определены лишь операции =, <>, IS NULL и IS NOT NULL
CHAR[(N)] — CHARACTER, VARYING VARCHAR — Строка фиксированной длины. N – длина строки. Максимальная длина – 8000 символов
VARCHAR[(N)] — CHARACTER VARYING(N) — Строка переменной длины N – длина строки. Максимальная длина – 8000 символов
TEXT — Строка произвольной (до 2,147,483,647 символов) длиныNCHAR[(N)] — NATIONAL CHARACTER, NATIONAL CHAR — Строка фиксированной длины в формате UNICODE. N – длина строки. Максимальная длина – 4000 символов
NVARCHAR[(N)] — NATIONAL CHARACTER VARYING(N), NATIONAL CHAR VARYING(N) — Строка переменной длины в формате UNICODE N – длина строки. Максимальная длина – 4000 символов
NTEXT — NATIONAL TEXT — Строка произвольной (до 1,073,741,823 символов) длины
BINARY[(N)] — VARYING VARBINARY — Двоичные данные фиксированной длины, до 8000 байт N – длина данных
VARBINARY[(N)] — Двоичные данные переменной длины, до 8000 байт N – длина данных
IMAGE — Двоичные данные произвольной (до 2,147,483,647 байт) длиныВ версии SQL 2000 дополнительно появились:
BIGINT — 64-битное целое число
SQL_VARIANT — Может хранить данные произвольного типа
Поддерживается создание вычисляемых полей
CREATE TABLE MyTable ( Direction BIT NOT NULL, Amount MONEY, CASE Direction WHEN 1 THEN Amount ELSE -Amount END AS SignedAmount )
Выражение не должно содержать подзапросов. В версии MSSQL2000 по вычисляемому полю может быть построен индекс.