Типы данных ms sql server: bit (Transact-SQL) — SQL Server

База Данных MySQL типы данных MySQL Server MS Access

❮ Назад
Дальше ❯


Тип данных определяет, какое значение может содержать столбец: целочисленные данные, символьные данные, денежные данные, данные даты и времени, двоичные строки и т. д.


Типы данных SQL

Каждый столбец в таблице базы данных должен иметь имя и тип данных.

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

Примечание: Типы данных могут иметь разные имена в разных базах данных.
И даже если имя такое же, размер и другие детали могут быть разными!
Всегда проверяйте документацию!


Типы данных MySQL

В MySQL есть три основных типа данных: текст, число и дата.

Текстовые типы данных:

Тип данныхОписание
CHAR(size)Содержит строку фиксированной длины (может содержать буквы, цифры и специальные символы). Фиксированный размер указывается в скобках. Может хранить до 255 символов
VARCHAR(size)Содержит строку переменной длины (может содержать буквы, цифры и специальные символы). Максимальный размер указывается в скобках. Может хранить до 255 символов. Примечание: Если поместить большее значение, чем 255, оно будет преобразовано в текстовый тип
TINYTEXTСодержит строку с максимальной длиной 255 символов
TEXTСодержит строку с максимальной длиной 65 535 символов
BLOBДля BLOB-объектов (двоичные большие объекты). Удерживает до 65 535 байт данных
MEDIUMTEXTСодержит строку с максимальной длиной 16 777 215 символов
MEDIUMBLOBДля BLOB-объектов (двоичные большие объекты). Удерживает до 16 777 215 байт данных
LONGTEXTСодержит строку с максимальной длиной 4 294 967 295 символов
LONGBLOBДля BLOB-объектов (двоичные большие объекты). Удерживает до 4 294 967 295 байт данных
ENUM(x,y,z,etc.)Позволяет ввести список возможных значений. В списке Enum можно вывести до 65535 значений. Если вставленное значение отсутствует в списке, будет вставлено пустое значение.

Примечание: Значения сортируются в порядке их ввода.

Вы вводите возможные значения в этом формате: Enum (‘ X ‘, ‘ Y ‘, ‘ Z ‘)

SETАналогично Enum, за исключением того, что набор может содержать до 64 элементов списка и может хранить более одного выбора


Типы данных чисел:

Тип данныхОписание
TINYINT(size)-128 до 127 нормальный. 0 до 255 неподписанный *. Максимальное количество цифр может быть указано в скобках
SMALLINT(size)-32768 до 32767 нормальный. 0 до 65535 неподписанный *. Максимальное количество цифр может быть указано в скобках
MEDIUMINT(size)-8388608 до 8388607 нормальный. 0 до 16777215 неподписанный *. Максимальное количество цифр может быть указано в скобках
INT(size)-2147483648 до 2147483647 нормальный. 0 до 4294967295 неподписанный *. Максимальное количество цифр может быть указано в скобках
BIGINT(size)-9223372036854775808 до 9223372036854775807 в норме. 0 для 18446744073709551615 неподписанных *. Максимальное количество цифр может быть указано в скобках
FLOAT(size,d)Небольшое число с плавающей запятой. Максимальное количество цифр может быть указано в параметре size. Максимальное число цифр справа от десятичной запятой указано в параметре d
DOUBLE(size,d)Большое число с плавающей запятой. Максимальное количество цифр может быть указано в параметре size. Максимальное число цифр справа от десятичной запятой указано в параметре d
DECIMAL(size,d)Значение типа Double, хранящееся в виде строки и допускающее фиксированную десятичную точку. Максимальное количество цифр может быть указано в параметре size. Максимальное число цифр справа от десятичной запятой указано в параметре d

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

Типы данных дат:

Тип данныхОписание
DATE()Свидание. Формат: гггг-мм-DD

Примечание: Поддерживаемый диапазон от ‘ 1000-01-01 ‘ до ‘ 9999-12-31 ‘

DATETIME()* комбинация даты и времени. Формат: гггг-мм-DD HH: MI: SS

Примечание: Поддерживаемый диапазон от ‘ 1000-01-01 00:00:00 ‘ до ‘ 9999-12-31 23:59:59 ‘

TIMESTAMP()* Временная метка. Значения timestamp хранятся в виде количества секунд со времени Unix (‘ 1970-01-01 00:00:00 ‘ UTC). Формат: гггг-мм-DD HH: MI: SS

Примечание: Поддерживаемый диапазон от ‘ 1970-01-01 00:00:01 ‘ UTC до ‘ 2038-01-09 03:14:07 ‘ UTC

TIME()Время. Формат: HH: MI: SS

Примечание: Поддерживаемый диапазон от ‘-838:59:59 ‘ до ‘ 838:59:59 ‘

YEAR()Год в формате с двумя или четырьмя цифрами.

Примечание: Допустимые значения в формате четырех цифр: 1901 до 2155. Допустимые значения в формате с двумя цифрами: 70 до 69, представляющие годы с 1970 по 2069

* даже если DateTime и timestamp возвращаются в том же формате, они работают очень по-разному. В запросе INSERT или Update временная метка автоматически устанавливает текущую дату и время. TIMESTAMP также принимает различные форматы, такие как ииииммддххмисс, ииммддххмисс, ГГГГММДД или YYMMDD.


Типы данных SQL Server

Типы строковых данных:

Тип данныхОписаниеМаксимальный размерХранения
char(n)Фиксированная ширина символьной строки8,000 СимволовОпределенная ширина
varchar(n)Переменная ширина символьная строка8,000 Символов2 байта + количество символов
varchar(max)Переменная ширина символьная строка1,073,741,824 Символов2 байта + количество символов
textПеременная ширина символьная строка2GB of text data4 байта + количество символов
ncharФиксированная ширина строки Юникода4,000 СимволовОпределенная ширина x 2
nvarcharПеременная ширина Юникод строка4,000 Символов 
nvarchar(max)Переменная ширина Юникод строка536,870,912 Символов 
ntextПеременная ширина Юникод строка2GB of text data 
binary(n)Фиксированная ширина двоичной строки8,000 bytes 
varbinaryПеременная ширина двоичная строка8,000 bytes 
varbinary(max)Переменная ширина двоичная строка2GB 
imageПеременная ширина двоичная строка2GB 

Типы данных чисел:

Тип данныхОписаниеХранения
bitЦелое число, которое может быть 0, 1 или null 
tinyintПозволяет целые числа от 0 до 2551 byte
smallintПозволяет целые числа между -32 768 и 32 7672 bytes
intПозволяет целые числа между -2 147 483 648 и 2 147 483 6474 bytes
bigintПозволяет целые числа между -9223372036854775808 и 9 223 372 036 854 775 8078 bytes
decimal(p,s)Fixed precision and scale numbers. 38 – 1.

Параметр p указывает максимальное общее количество цифр, которые могут быть сохранены (как слева, так и справа от десятичной запятой). p должно быть значением от 1 до 38. Значение по умолчанию — 18.

Параметр s указывает максимальное число цифр, хранящихся справа от десятичной запятой. s должно быть значением от 0 до p. значение по умолчанию 0

5-17 bytes
smallmoneyДенежные данные от-214 748,3648 до 214 748,36474 bytes
moneyДенежные данные от-922 337 203 685 477,5808 до 922 337 203 685 477,58078 bytes
float(n)Плавающая точность данных чисел от-1.79 e + 308 до 1.79 e + 308.

Параметр n указывает, должно ли поле содержать 4 или 8 байт. float (24) содержит 4-байтное поле и float (53) содержит 8-байтное поле. Значение по умолчанию n — 53.

4 or 8 bytes
realПлавающие данные о точности чисел от-38 e +4 bytes

Типы данных дат:

Тип данныхОписаниеХранения
datetimeС 1 января 1753 по 31 декабря 9999 с точностью 3,33 миллисекунд8 bytes
datetime2С 1 января 0001 по 31 декабря 9999 с точностью 100.6-8 bytes
smalldatetimeС 1 января 1900 по 6 июня 2079 с точностью до 1 минуты4 bytes
dateХранить только дату. С 1 января 0001 по 31 декабря 99993 bytes
timeХранить время только для точности 100-ти секунд3-5 bytes
datetimeoffsetТак же, как datetime2 с добавлением смещения часового пояса8-10 bytes
timestampХранит уникальный номер, который обновляется каждый раз при создании или изменении строки. Значение timestamp основывается на внутренних часах и не соответствует реальному времени. Каждая таблица может иметь только одну переменную timestamp 

Другие типы данных:

Тип данныхОписание
sql_variantХранит до 8 000 байт данных различных типов данных, за исключением текста, ntext и отметки времени
uniqueidentifierХранит глобальный уникальный идентификатор (GUID)
xmlХранит XML-форматированные данные. Максимум 2 ГБ
cursorХранит ссылку на курсор, используемый для операций с базой данных
tableХранит результирующий набор для последующей обработки

Типы данных Microsoft Access

Тип данныхОписаниеХранения
TextИспользуется для текста или комбинаций текста и чисел. 255 символов максимум 
MemoMEMO используется для больших объемов текста. Хранит до 65 536 символов. Примечание: Поле MEMO нельзя сортировать. Тем не менее, они доступны для поиска 
ByteПозволяет целые числа от 0 до 2551 byte
IntegerПозволяет целые числа между-32 768 и 32 7672 bytes
LongПозволяет целые числа между-2 147 483 648 и 2 147 483 6474 bytes
SingleОдинарная точность с плавающей запятой. Будет обрабатывать большинство десятичных знаков4 bytes
DoubleДвойная точность с плавающей запятой. Будет обрабатывать большинство десятичных знаков8 bytes
CurrencyИспользовать для валюты. Вмещает до 15 цифр целых долларов, плюс 4 десятичных знака. Совет: Вы можете выбрать валюту страны для использования8 bytes
AutoNumberПоля автонумерации автоматически дают каждой записи свой номер, обычно начиная с 14 bytes
Date/TimeИспользовать для дат и времени8 bytes
Yes/NoЛогическое поле может отображаться как Yes/No, true/false или вкл/выкл. В коде используйте Константы true и false (эквивалентно-1 и 0). Примечание: Значения NULL не разрешены в полях «да/нет»1 bit
Ole ObjectМожет хранить изображения, аудио, видео, или другие BLOB-объекты (двоичные больших объектов)up to 1GB
HyperlinkСодержать ссылки на другие файлы, включая веб-страницы 
Lookup WizardПозволяет ввести список опций, которые затем можно выбрать из раскрывающегося списка4 bytes

❮ Назад
Дальше ❯

Типы данных SQL Server, поддерживаемые в ArcGIS—ArcGIS Pro

При создании таблицы или добавлении столбца в таблицу базы данных вы указываете определенный тип данных для столбца. Типы данных определяются, исходя из следующего:

  • Какие значения можно хранить в столбце
  • Какие операции можно применять к данным этого столбца
  • Как данные этого столбца хранятся в базе данных

ArcGIS работает с определенными типами данных. При осуществлении доступа к таблице базы данных через Подключения к базам данных, слой запроса или веб-сервис, ArcGIS отфильтровывает любые неподдерживаемые типы данных. ArcGIS не отображает неподдерживаемые типы данных, и вы не сможете редактировать их в ArcGIS. Аналогично, если при помощи ArcGIS копировать и вставлять таблицы, содержащие неподдерживаемые типы данных, из одной базы в другую, ArcGIS вставит только те столбцы, которые используют поддерживаемые типы данных.

В первом столбце в следующей таблице перечислены типы данных ArcGIS. Во втором столбце перечислены типы данных SQL Server, создаваемые ArcGIS. В третьем столбце показано, какие другие типы данных SQL Server (если они имеются) сопоставляются типам данных ArcGIS при просмотре таблицы, созданной вне ArcGIS (не зарегистрированной в базе геоданных). В последнем столбце при необходимости предоставляется дополнительная информация.

Типы данных ArcGISСозданные типы данных SQL ServerДругие типы данных SQL Server, которые можно просматриватьПримечания

BLOB

varbinary(max)

binary, image, timestamp, varbinary(n)

Date

datetime2(7)

date, datetime2(n), datetime, smalldatetime, time

Double

numeric(p,s)

decimal, float, money, smallmoney

Точность и количество знаков, указанные в ArcGIS, могут повлиять на тип полученных данных, создаваемых в базе данных. Более подробно см. Типы данных полей ArcGIS.

Float

numeric(p,s)

real

Точность и количество знаков, указанные в ArcGIS, могут повлиять на тип полученных данных, создаваемых в базе данных. Более подробно см. Типы данных полей ArcGIS.

Геометрия

  • geometry
  • geography

Укажите, что будет использоваться: GEOMETRY или GEOGRAPHY, – при создании класса пространственных объектов.

ArcGIS не поддерживает следующие подтипы геометрии:

  • CircularString
  • CompoundCurve
  • CurvePolygon
  • GeometryCollection

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

Global ID

uniqueidentifier

Поддерживается только базами геоданных.

GUID

uniqueidentifier

Long integer

int

Raster

BLOB, int

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

В многопользовательских базах геоданных тип создаваемых данных SQL Server зависит от ключевого слова конфигурации, использующегося при создании набора растровых данных или набора данных мозаики. Если параметр RASTER_STORAGE ключевого слова равен RASTERBLOB, создается столбец BLOB, а если он равен BINARY – создается столбец int.

OBJECT ID

int(4) when created in an enterprise geodatabase

integer with identity property when created in a database

В ArcGIS тип ObjectID соответствует столбцу с идентификаторами записей (ID) таблицы (или класса объектов). В таблице может быть только один такой тип.

Short integer

smallint

bit, tinyint

Текст

varchar, nvarchar, varchar(max), nvarchar(max)

char, nchar

Текстовые типы данных

Если вы создаете поле varchar или varchar(max) в базе данных SQL Server, то оно будет сопоставлено с типом данных ArcGIS TEXT при просмотре в ArcGIS. Если вы создаете текстовое поле в базе данных SQL Server из ArcGIS, используется nvarchar или nvarchar(max).

В случае если параметр конфигурации UNICODE_STRING в многопользовательской базе геоданных равен FALSE, а длина текстового поля – 7999 символов и менее, используется VARCHAR.

Если параметр конфигурации UNICODE_STRING имеет значение FALSE, а длина текстового поля больше или равна 8000 символов, используется VARCHAR(MAX).

Если параметр конфигурации UNICODE_STRING имеет значение TRUE, а длина текстового поля меньше или равна 3 999 знаков, используется NVARCHAR.

Если параметр конфигурации UNICODE_STRING имеет значение TRUE, а длина текстового поля больше или равна 4 000 символов, используется NVARCHAR(MAX).

Геометрические типы данных

Как показано в таблице, ArcGIS Pro создает и может работать с двумя типами данных геометрии в SQL Server: SQL Server Geometry и SQL Server Geography.

SQL Server Geometry

Здесь представлено краткое описание типа Microsoft Geometry. Более подробные сведения о типе Geometry и его использовании можно найти в документации к Microsoft SQL Server.

  • Тип Microsoft Geometry поддерживает любую систему координат X/Y.
  • Для отображения и пространственных сравнений используются вычисления на плоскости (Евклидовы) и прямолинейная интерполяция между вершинами.
  • Соответствует спецификации Open Geospatial Consortium (OGC) Simple Features for SQL версии 1.1.9 и совместимо с ISO-стандартом SQL MM.

SQL Server Geography

Здесь представлено краткое описание типа Microsoft Geography. Более подробные сведения о типе Geography и его использовании можно найти в документации к Microsoft SQL Server.

  • Тип Geography поддерживает многие стандартные географические системы координат, например, широта-долгота GPS.

    Microsoft требует использования SRID и географических систем координат, заданных в словаре данных SQL Server.

  • Для вычислений и пространственных сравнений используются модель эллипсоида (круглая Земля) и интерполяция отрезков линий между вершинами Great Elliptic.
  • Тип Geography использует глобальный (на сфере) экстент слоя.

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

Типы растровых данных

Тип растровых данных, используемый в базах геоданных в SQL Server, — это тип BLOB (rasterblob).


Отзыв по этому разделу?

с плавающей запятой и вещественное число (Transact-SQL) — SQL Server

Редактировать

Твиттер

LinkedIn

Фейсбук

Электронная почта

  • Статья

Применяется к: SQL Server Azure SQL База данных Azure SQL Управляемый экземпляр Azure Synapse Analytics Analytics Platform System (PDW)

Типы данных с приблизительным числом для использования с числовыми данными с плавающей запятой. Данные с плавающей запятой являются приблизительными; поэтому не все значения в диапазоне типов данных могут быть представлены точно. Синоним ISO для реальное равно с плавающей запятой(24) .

Соглашения о синтаксисе Transact-SQL

Синтаксис

float [ ( n ) ]
Где n — количество битов, которые используются для хранения мантиссы числа с плавающей запятой в экспоненциальном представлении и, следовательно, определяют точность и размер хранилища. Если указано n , это должно быть значение между 1 и 53 . Значение по умолчанию н это 53 .

n значение Точность Размер хранилища
1-24 7 цифр 4 байта
25-53 15 цифр 8 байт

Примечание

SQL Server рассматривает n как одно из двух возможных значений. Если 1 <=n<= 24 , n обрабатывается как 24 . Если 25 <=n<= 53 , n обрабатывается как 53 .

Тип данных SQL Server float [ (n) ] соответствует стандарту ISO для всех значений n от 1 до 53 . Синонимом для двойной точности является float(53) .

Примечание

Чтобы просмотреть синтаксис Transact-SQL для SQL Server 2014 и более ранних версий, см. документацию по предыдущим версиям.

Тип данных Диапазон Хранение
поплавок — 1.79E+308 до -2.23E-308, 0 и 2.23E-308 до 1.79E+308 Зависит от значения n
реальный — 3.40E + 38 до -1.18E — 38, 0 и 1.18E — 38 до 3.40E + 38 4 байта

Преобразование вещественных и действительных данных

Значения float усекаются при преобразовании в любой целочисленный тип.

Если вы хотите преобразовать float или real в символьные данные, использование строковой функции STR обычно более полезно, чем CAST(). Это связано с тем, что STR обеспечивает больший контроль над форматированием. Дополнительные сведения см. в разделах STR (Transact-SQL) и Функции (Transact-SQL).

До SQL Server 2016 (13. x) преобразование значений с плавающей запятой в десятичных или числовых ограничен только значениями точности 17 цифр. Любое значение с плавающей запятой меньше 5E-18 (при установке с использованием экспоненциального представления 5E-18 или десятичного представления 0,0000000000000000005) округляется до 0. Это больше не является ограничением, начиная с SQL Server 2016 (13.x). .

См. также

ALTER TABLE (Transact-SQL)
CAST and CONVERT (Transact-SQL)
CREATE TABLE (Transact-SQL)
Преобразование типов данных (Database Engine)
Типы данных (Transact-SQL)
DECLARE @local_variable (Transact-SQL)
SET @local_variable (Transact-SQL)

типов данных SQL Server

В SQL Server тип данных указывает тип данных, которые могут храниться в столбце таблицы, например целочисленные данные, строковые данные, дата и время, двоичные строки и т. д.

Назначение соответствующего типа данных столбцам в таблице имеет решающее значение при проектировании базы данных. Это влияет на производительность и эффективность базы данных и приложения, использующего базу данных.

SQL Server предоставляет встроенные типы данных для всех типов данных, которые можно использовать в SQL Server. Кроме того, вы также можете определить свой собственный тип данных в T-SQL.

Категории типов данных:

Категория Типы данных
Точные цифры бит, tinyint, smallint, int, bigint, десятичный, числовой, деньги, smallmoney
Приблизительные цифры Вещественный, плавающий
Дата и время дата, малая дата и время, дата и время, дата и время 2, дата и время смещение, время
Строки символов char, varchar, текст
Строки символов Юникода нчар, нварчар, нтекст
Другие типы данных курсор, иерархия, sql_variant, типы пространственной геометрии, типы пространственной географии, версия строки, уникальный идентификатор, xml, таблица

Точные цифры

938−1
Тип данных Ценить Описание
кусочек 0,1 или НУЛЬ Наименьший тип данных с размером хранилища 1 байт
крошечный от 0 до 255 1 байт размер хранилища
малыйинт -32 768 до 32 767 размер хранилища 2 байта
инт −2 147 483 648 4 байта хранения
большойинт −9 223 372 036 854 775 808 8 байт хранения
Числовой тип данных с фиксированной точностью и масштабом.
маленькие деньги -214 748,3648 до 214 748,3647 4 байта
деньги -922 337 203 685 477,5808 до 922 337 203 685 477,5807 8 байт

Приблизительные цифры

Тип данных Ценить Описание
поплавок (сущ. ) — 1.79E+308 до -2.23E-308, 0 Память зависит от значения n.
настоящий — 3.40E + 38 до -1.18E — 38, 0 и 1.18E — 38 до 3.40E + 38 4 байта

Дата и время

Тип данных Ценить Описание
дата 01-01-0001 по 31-12-9999 3 байта
дата и время Дата: с 01. 01.1753 по 31.12.9999. 8 байт
дата и время2 Дата: с 01.01.01 по 31.12.9999. Точность < 3 : 6 байт
маленькая дата и время с 1 января 1900 г. по 06 июня 2079 г. 4 байта фиксированные
смещение даты и времени Дата: с 01.01.01 по 10 байт фиксировано
время 00:00:00. 0000000 до 23:59:59.9999999 фиксировано 5 байт

Строки символов

Тип данных Ценить Описание
символ [(n)] от 1 до 8000 символов n байт
varchar[(n)] от 1 до 8000 n байтов + 2 байта
varchar (макс. 31-1 n байтов + 4 байта
текст от 0 до 2 147 483 647 n байтов + 4 байта

Строки символов Unicode

Тип данных Ценить Описание
nchar[(n)] от 1 до 4000 символов2 раза по n байт
nvarchar[(n|макс. )] от 1 до 4000 2 раза по n байт
текст от 0 до 1 073 741 823 в 2 раза больше длины строки

Двоичные строки

Тип данных Ценить Описание
двоичный [(п)] от 1 до 8000 байт n байт
varbinary[(n|max)] от 1 до 8000 Фактическая длина строки + 2 байта
Изображение от 0 до 2 147 483 647 Двоичные данные переменной длины

Другие типы данных

Тип данных Описание
курсор Тип данных для переменных или хранимых процедур OUTPUT параметров, содержащих ссылку на курсор.
версия строки Он возвращает автоматически сгенерированные уникальные двоичные числа в базе данных.
иерархический идентификатор Это системный тип данных переменной длины.
уникальный идентификатор Является 16-байтовым GUID
sql_вариант Тип данных, в котором хранятся значения различных типов данных, поддерживаемых SQL Server.
XML Он хранит xml-данные.

Imacros | Все права защищены © 2021