Типы данных ms sql server: bit (Transact-SQL) — SQL Server
Содержание
База Данных MySQL типы данных MySQL Server MS Access
❮ Назад
Дальше ❯
Тип данных определяет, какое значение может содержать столбец: целочисленные данные, символьные данные, денежные данные, данные даты и времени, двоичные строки и т. д.
Типы данных SQL
Каждый столбец в таблице базы данных должен иметь имя и тип данных.
Разработчик SQL должен решить, какой тип данных будет храниться в каждом столбце при создании таблицы. Тип данных является ориентиром для SQL, чтобы понять, какой тип данных ожидается внутри каждого столбца, и он также определяет, как SQL будет взаимодействовать с хранимыми данными.
Примечание: Типы данных могут иметь разные имена в разных базах данных.
И даже если имя такое же, размер и другие детали могут быть разными!
Всегда проверяйте документацию!
Типы данных MySQL
В MySQL есть три основных типа данных: текст, число и дата.
Текстовые типы данных:
Тип данных | Описание |
---|---|
CHAR(size) | Содержит строку фиксированной длины (может содержать буквы, цифры и специальные символы).![]() |
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-объектов (двоичные большие объекты).![]() |
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 нормальный.![]() |
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, хранящееся в виде строки и допускающее фиксированную десятичную точку.![]() |
* целочисленные типы имеют дополнительный параметр, называемый неподписанным. Как правило, целое число переходит от отрицательного к положительному значению. Добавление неподписанного атрибута будет перемещаться, что диапазон вверх, поэтому он начинается с нуля, а не отрицательное число.
Типы данных дат:
Тип данных | Описание |
---|---|
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).![]() Примечание: Поддерживаемый диапазон от ‘ 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 data | 4 байта + количество символов |
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 до 255 | 1 byte |
smallint | Позволяет целые числа между -32 768 и 32 767 | 2 bytes |
int | Позволяет целые числа между -2 147 483 648 и 2 147 483 647 | 4 bytes |
bigint | Позволяет целые числа между -9223372036854775808 и 9 223 372 036 854 775 807 | 8 bytes |
decimal(p,s) | Fixed precision and scale numbers.![]() Параметр p указывает максимальное общее количество цифр, которые могут быть сохранены (как слева, так и справа от десятичной запятой). p должно быть значением от 1 до 38. Значение по умолчанию — 18. Параметр s указывает максимальное число цифр, хранящихся справа от десятичной запятой. s должно быть значением от 0 до p. значение по умолчанию 0 | 5-17 bytes |
smallmoney | Денежные данные от-214 748,3648 до 214 748,3647 | 4 bytes |
money | Денежные данные от-922 337 203 685 477,5808 до 922 337 203 685 477,5807 | 8 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 декабря 9999 | 3 bytes |
time | Хранить время только для точности 100-ти секунд | 3-5 bytes |
datetimeoffset | Так же, как datetime2 с добавлением смещения часового пояса | 8-10 bytes |
timestamp | Хранит уникальный номер, который обновляется каждый раз при создании или изменении строки. Значение timestamp основывается на внутренних часах и не соответствует реальному времени. Каждая таблица может иметь только одну переменную timestamp |
Другие типы данных:
Тип данных | Описание |
---|---|
sql_variant | Хранит до 8 000 байт данных различных типов данных, за исключением текста, ntext и отметки времени |
uniqueidentifier | Хранит глобальный уникальный идентификатор (GUID) |
xml | Хранит XML-форматированные данные.![]() |
cursor | Хранит ссылку на курсор, используемый для операций с базой данных |
table | Хранит результирующий набор для последующей обработки |
Типы данных Microsoft Access
Тип данных | Описание | Хранения |
---|---|---|
Text | Используется для текста или комбинаций текста и чисел. 255 символов максимум | |
Memo | MEMO используется для больших объемов текста. Хранит до 65 536 символов. Примечание: Поле MEMO нельзя сортировать. Тем не менее, они доступны для поиска | |
Byte | Позволяет целые числа от 0 до 255 | 1 byte |
Integer | Позволяет целые числа между-32 768 и 32 767 | 2 bytes |
Long | Позволяет целые числа между-2 147 483 648 и 2 147 483 647 | 4 bytes |
Single | Одинарная точность с плавающей запятой.![]() | 4 bytes |
Double | Двойная точность с плавающей запятой. Будет обрабатывать большинство десятичных знаков | 8 bytes |
Currency | Использовать для валюты. Вмещает до 15 цифр целых долларов, плюс 4 десятичных знака. Совет: Вы можете выбрать валюту страны для использования | 8 bytes |
AutoNumber | Поля автонумерации автоматически дают каждой записи свой номер, обычно начиная с 1 | 4 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, могут повлиять на тип полученных данных, создаваемых в базе данных. |
Float |
numeric(p,s) | real | Точность и количество знаков, указанные в ArcGIS, могут повлиять на тип полученных данных, создаваемых в базе данных. Более подробно см. Типы данных полей ArcGIS. |
Геометрия |
| Укажите, что будет использоваться: GEOMETRY или GEOGRAPHY, – при создании класса пространственных объектов. ArcGIS не поддерживает следующие подтипы геометрии:
Вы не можете создавать в 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
Редактировать
Твиттер
Фейсбук
Электронная почта
- Статья
Применяется к: 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, таблица |
Точные цифры
Тип данных | Ценить | Описание |
---|---|---|
кусочек | 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.![]() | 8 байт |
дата и время2 | Дата: с 01.01.01 по 31.12.9999. | Точность < 3 : 6 байт |
маленькая дата и время | с 1 января 1900 г. по 06 июня 2079 г. | 4 байта фиксированные |
смещение даты и времени | Дата: с 01.01.01 по | 10 байт фиксировано |
время | 00:00:00.![]() | фиксировано 5 байт |
Строки символов
Тип данных | Ценить | Описание |
---|---|---|
символ [(n)] | от 1 до 8000 символов | n байт |
varchar[(n)] | от 1 до 8000 | n байтов + 2 байта |
varchar (макс.![]() | 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-данные.![]() |