Содержание

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

Уважаемый пользователь! Реклама помогает поддерживать и развивать наш проект, делая его простым и удобным специально для Вас. Если проект интересный и важный для Вас, то отключите на нем блокировщик рекламы. Спасибо, что читаете сайт!

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

Типы данных SQL

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

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

Список типов данных MySQL

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

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

Тип
Описание
CHAR(size)Удерживает строку фиксированной длины (может содержать буквы, цифры и специальные символы). Фиксированный размер указан в скобках. Может хранить до 255 символов
VARCHAR(size)Удерживает строку переменной длины (может содержать буквы, цифры и специальные символы). Максимальный размер указан в скобках. Может хранить до 255 символов. Если вы ставите большее значение, чем 255, оно будет преобразовано в тип TEXT
TINYTEXTУдерживает строку длиной не более 255 символов
TEXTУдерживает строку с максимальной длиной 65535 символов
BLOBДля BLOB (Binary Large OBjects). Сохраняет до 65535 байт данных
MEDIUMTEXTУдерживает строку с максимальной длиной 16,777,215 символов
MEDIUMBLOBДля BLOB (Binary Large OBjects). Удерживает до 16 777 215 байт данных
LONGTEXTУдерживает строку с максимальной длиной 4 294 967 295 символов
LONGBLOBДля BLOB (Binary Large OBjects). Сохраняет до 4 294 967 295 байтов данных
ENUM(a,b,c,etc.)

Позвольте ввести список возможных значений. Вы можете перечислить до 65535 значений в списке ENUM. Если вставлено значение, которое отсутствует в списке, будет добавлено пустое значение.

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

Вы вводите возможные значения в этом формате: ENUM (‘a’, ‘b’, ‘c’)

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

Типы числовых данных

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

 

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

Тип даты

ТипОписание
DATE()Формат даты: YYYY-MM-DD
DATETIME()Формат даты и времени:  YYYY-MM-DD HH:MI:SS
TIMESTAMP()Количество секунд с момента Unix (‘1970-01-01 00:00:00’ UTC). Формат даты: YYYY-MM-DD HH:MI:SS
TIME()Формат времени: HH:MI:SS
YEAR()
Год

Уважаемый пользователь! Реклама помогает поддерживать и развивать наш проект, делая его простым и удобным специально для Вас. Если проект интересный и важный для Вас, то отключите на нем блокировщик рекламы. Спасибо, что читаете сайт!

MS SQL Server и T-SQL

Типы данных T-SQL

Последнее обновление: 12.07.2017

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

Язык T-SQL предоставляет множество различных типов. В зависимости от характера значений все их можно разделить на группы.

Числовые типы данных
  • BIT: хранит значение 0 или 1. Фактически является аналогом булевого типа в языках программирования. Занимает 1 байт.

  • TINYINT: хранит числа от 0 до 255. Занимает 1 байт. Хорошо подходит для хранения небольших чисел.

  • SMALLINT: хранит числа от –32 768 до 32 767. Занимает 2 байта

  • INT: хранит числа от –2 147 483 648 до 2 147 483 647. Занимает 4 байта. Наиболее используемый тип для хранения чисел.

  • BIGINT: хранит очень большие числа от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807, которые занимают в памяти 8 байт.

  • DECIMAL: хранит числа c фиксированной точностью. Занимает от 5 до 17 байт в зависимости от количества чисел после запятой.

    Данный тип может принимать два параметра precision и scale: DECIMAL(precision, scale).

    Параметр precision представляет максимальное количество цифр, которые может хранить число. Это значение должно находиться в диапазоне от 1 до 38. По умолчанию оно равно 18.

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

  • NUMERIC: данный тип аналогичен типу DECIMAL.

  • SMALLMONEY: хранит дробные значения от -214 748.3648 до 214 748.3647. Предназначено для хранения денежных величин. Занимает 4 байта. Эквивалентен типу DECIMAL(10,4).

  • MONEY: хранит дробные значения от -922 337 203 685 477.5808 до 922 337 203 685 477.5807. Представляет денежные величины и занимает 8 байт. Эквивалентен типу DECIMAL(19,4).

  • FLOAT: хранит числа от –1.79E+308 до 1.79E+308. Занимает от 4 до 8 байт в зависимости от дробной части.

    Может иметь форму опредеения в виде FLOAT(n), где n представляет число бит, которые используются для хранения десятичной части числа (мантиссы). По умолчанию n = 53.

  • REAL: хранит числа от –340E+38 to 3.40E+38. Занимает 4 байта. Эквивалентен типу FLOAT(24).

Примеры числовых столбцов:

Salary MONEY,
TotalWeight DECIMAL(9,2),
Age INT,
Surplus FLOAT
Типы данных, представляющие дату и время
  • DATE: хранит даты от 0001-01-01 (1 января 0001 года) до 9999-12-31 (31 декабря 9999 года). Занимает 3 байта.

  • TIME: хранит время в диапазоне от 00:00:00.0000000 до 23:59:59.9999999. Занимает от 3 до 5 байт.

    Может иметь форму TIME(n), где n представляет количество цифр от 0 до 7 в дробной части секунд.

  • DATETIME: хранит даты и время от 01/01/1753 до 31/12/9999. Занимает 8 байт.

  • DATETIME2: хранит даты и время в диапазоне от 01/01/0001 00:00:00.0000000 до 31/12/9999 23:59:59.9999999. Занимает от 6 до 8 байт в зависимости от точности времени.

    Может иметь форму DATETIME2(n), где n представляет количество цифр от 0 до 7 в дробной части секунд.

  • SMALLDATETIME: хранит даты и время в диапазоне от 01/01/1900 до 06/06/2079, то есть ближайшие даты. Занимает от 4 байта.

  • DATETIMEOFFSET: хранит даты и время в диапазоне от 0001-01-01 до 9999-12-31. Сохраняет детальную информацию о времени с точностью до 100 наносекунд. Занимает 10 байт.

Распространенные форматы дат:

  • yyyy-mm-dd2017-07-12

  • dd/mm/yyyy12/07/2017

  • mm-dd-yy07-12-17

    В таком формате двузначные числа от 00 до 49 воспринимаются как даты в диапазоне 2000-2049. А числа от 50 до 99 как диапазон чисел 1950 — 1999.

  • Month dd, yyyyJuly 12, 2017

Распространенные форматы времени:

Строковые типы данных
  • CHAR: хранит строку длиной от 1 до 8 000 символов. На каждый символ выделяет по 1 байту. Не подходит для многих языков, так как хранит символы не в кодировке Unicode.

    Количество символов, которое может хранить столбец, передается в скобках. Например, для столбца с типом CHAR(10) будет выделено 10 байт. И если мы сохраним в столбце строку менее 10 символов, то она будет дополнена пробелами.

  • VARCHAR: хранит строку. На каждый символ выделяется 1 байт. Можно указать конкретную длину для столбца — от 1 до 8 000 символов, например, VARCHAR(10). Если строка должна иметь больше 8000 символов, то задается размер MAX, а на хранение строки может выделяться до 2 Гб: VARCHAR(MAX).

    Не подходит для многих языков, так как хранит символы не в кодировке Unicode.

    В отличие от типа CHAR если в столбец с типом VARCHAR(10) будет сохранена строка в 5 символов, то в столце будет сохранено именно пять символов.

  • NCHAR: хранит строку в кодировке Unicode длиной от 1 до 4 000 символов. На каждый символ выделяется 2 байта. Например, NCHAR(15)

  • NVARCHAR: хранит строку в кодировке Unicode. На каждый символ выделяется 2 байта.Можно задать конкретный размер от 1 до 4 000 символов: . Если строка должна иметь больше 4000 символов, то задается размер MAX, а на хранение строки может выделяться до 2 Гб.

Еще два типа TEXT и NTEXT являются устаревшими и поэтому их не рекомендуется использовать. Вместо них применяются VARCHAR и NVARCHAR соответственно.

Примеры определения строковых столбцов:


Email VARCHAR(30),
Comment NVARCHAR(MAX)
Бинарные типы данных
  • BINARY: хранит бинарные данные в виде последовательности от 1 до 8 000 байт.

  • VARBINARY: хранит бинарные данные в виде последовательности от 1 до 8 000 байт, либо до 2^31–1 байт при использовании значения MAX (VARBINARY(MAX)).

Еще один бинарный тип — тип IMAGE является устаревшим, и вместо него рекомендуется применять тип VARBINARY.

Остальные типы данных
  • UNIQUEIDENTIFIER: уникальный идентификатор GUID (по сути строка с уникальным значением), который занимает 16 байт.

  • TIMESTAMP: некоторое число, которое хранит номер версии строки в таблице. Занимает 8 байт.

  • CURSOR: представляет набор строк.

  • HIERARCHYID: представляет позицию в иерархии.

  • SQL_VARIANT: может хранить данные любого другого типа данных T-SQL.

  • XML: хранит документы XML или фрагменты документов XML. Занимает в памяти до 2 Гб.

  • TABLE: представляет определение таблицы.

  • GEOGRAPHY: хранит географические данные, такие как широта и долгота.

  • GEOMETRY: хранит координаты местонахождения на плоскости.

Data Types SQL Server — Oracle PL/SQL •MySQL •MariaDB •SQL Server •SQLite

В этом учебном пособии приведен список типов данных, доступных в SQL Server (Transact-SQL), который включает в себя строковые, числовые и дата/время.

Cтроковые типы данных

Ниже приведены строковые типы данных в SQL Server (Transact-SQL):

Синтаксис типа данныхМаксимальный размерПояснение
CHAR(size)8000 символовГде size — количество сохраняемых символов. Фиксированная длина. Если сохраняемое значение короче, то дополняется пробелами. Данные не-Unicode.
VARCHAR(size) или VARCHAR(max)8000 или max символовГде size — количество сохраняемых символов. Переменная длина. Если указано max, максимальное количество символов — 2 ГБ. Данные не-Unicode.
TEXT2 ГБПеременная длина. Данные не-Unicode.
NCHAR(size)4000 символовФиксированная длина. Данные Unicode.
NVARCHAR(size) или NVARCHAR(max)4000 символов или max символовГде size — количество сохраняемых символов. Переменная длина. Если указано max, максимальное количество символов — 2 ГБ. Данные Unicode.
NTEXT1 073 741 823 байтаПеременная длина. Данные Unicode.
BINARY(size)8000 символовГде size — количество сохраняемых символов. Фиксированная длина. Пространство дополняется справа на символы одинакового размера. Двоичные данные.
VARBINARY(size) или VARBINARY(max)8000 или max. СимволовГде size — количество сохраняемых символов. Переменная длина. Если указано max, максимальное количество символов — 2 ГБ. Недвоичные данные.
IMAGE2 ГБПеременная длина. Двоичные данные.

Числовые типы данных

Ниже приведены числовые типы данных в SQL Server (Transact-SQL):

Синтаксис типа данныхМаксимальный размерПояснение
BITЦелое число, которое может быть 0, 1 или NULL.
TINYINTОт 0 до 255
SMALLINT-32768 до 32767
INT-2,147,483,648 до 2,147,483,647
BIGINT-9,223,372,036,854,775,808 — 9,223,372,036,854,775,807
DECIMAL(m,d)m по умолчанию — 18, если не указано.
d по умолчанию равно 0, если не указано.
Где m — это суммарное количество цифр, а d — количество цифр после десятичного знака.
DEC(m,d)m по умолчанию — 18, если не указано.
d по умолчанию равно 0, если не указано.
Где m — это суммарное количество цифр, а d — количество цифр после десятичного знака.
Это синоним типа DECIMAL.
NUMERIC(m,d)m по умолчанию — 18, если не указано. d по умолчанию равно 0, если не указано.Где m — это суммарные цифры, а d — количество цифр после десятичного знака.
Это синоним типа DECIMAL.
FLOAT(n)Число с плавающей точкой. n по умолчанию — 53, если не указано.Где n — количество бит, которое должно храниться в научной нотации.
REALЭквивалент FLOAT (24)
SMALLMONEY— 214,748.3648 до 214,748.3647
MONEY-922,337,203,685,477,5808 до 922,337,203,685,477.5807

Типы данных Дата / Время

Ниже приведены типы данных даты и времени в SQL Server (Transact-SQL):

Синтаксис типа данныхМаксимальный размерПояснение
DATEДиапазон значений от ‘0001-01-01’ до ‘9999-12-31’.Отображается как ‘YYYY-MM-DD’
DATETIMEДиапазон значений дат от ‘1753-01-01 00:00:00’ до ‘9999-12-31 23:59:59’. Диапазон значений времени от ’00: 00: 00 ‘до ’23: 59: 59: 997’Отображается как ‘YYYY-MM-DD hh:mm:ss[.mmm]’
DATETIME2Диапазон значений дат от ‘0001-01-01’ до ‘9999-12-31′. Диапазон значений времени от ’00:00:00′ до ’23:59:59:9999999’.Отображается как ‘YYYY-MM-DD hh:mm:ss[.fractional seconds]’
SMALLDATETIMEДиапазон значений дат от ‘1900-01-01’ до ‘2079-06-06′. Диапазон значений времени от ’00:00:00′ до ’23:59:59’.Отображается как ‘YYYY-MM-DD hh:mm:ss’
TIMEДиапазон значений от ’00:00:00.0000000′ до ’23:59:59.9999999′Отображается как ‘YYYY-MM-DD hh:mm:ss[.nnnnnnn]’
DATETIMEOFFSETДиапазон значений дат от ‘0001-01-01’ до ‘9999-12-31′. Диапазон значений времени от ’00:00:00′ до ’23:59:59:9999999’. Диапазон смещения часового пояса от -14:00 до +14:00.Отображается как ‘YYYY-MM-DD hh:mm:ss[.nnnnnnn]’ [{+|-}hh:mm]
Рубрика: Программирование SQL Server | Permalink

SQL (типы данных): таблица

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

Тип данных – что это?

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

SQL Типы данных

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

Классификация типов данных

Группировка данных по их типу возникла давно и была вызвана необходимостью структурирования информации для более удобной обработки. В настоящее время основу существующих типов данных образуют два: символьный и числовой.

Типы данных SQL

На их базе была разработана современная классификация, включающая в себя указатели, логический, целочисленный, числовой с плавающей точкой и строковый типы данных. SQLклассификация полностью охватывает все вышеперечисленное. Однако для некоторых современных СУБД существуют дополнительные надстройки. К ним относятся Oracle и MySQL.

Базовые типы данных

Использующиеся при создании атрибутов таблиц, отвечающих стандартам языка SQL, типы данных подразделяются на 4 класса:

  • строковые значения;
  • дроби;
  • целочиселенные значения;
  • значения даты и времени.

Строковый тип данных

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

Строковые типы данных SQL

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

CHAR (size)

Используется для хранения строк. Параметр в скобках позволяет фиксировать длину хранимой строки. Максимальный размер в байтах, который можно задать для строки, – 255.

VARCHAR (size)

Аналогично предыдущему типу позволяет хранить строки длиной до 255 символов. Однако отличие от CHAR в том, что для хранения значения данного типа выделяется требуемое количество памяти. То есть для строки, состоящей из 5-ти символов, потребуется 6 байт памяти. В первом же случае память для значения будет выделена согласно указанному параметру.

TINY ТЕХТ

Используется для хранения строковых данных размером до 255 символов.

ТЕХТ

Используется для хранения текстовой информации, размер которой не превышает 65 535 букв.

BLOB

Рассматриваемый тип данных аналогичен типу ТЕХТ и позволяет сохранять в базе текстовую информацию, объем которой может достигать 65 535 знаков. Но на практике используется для хранения звуковых данных, рисунков, электронной документации и пр.

MEDIUM ТЕХТ

Был разработан на базе типа ТЕХТ, но позволяет хранить больше данных за счет увеличенного размера до 16 777 215 букв или символов.

MEDIUM BLOB

Используется для сохранения в базе электронных документов, размер которых не превышает отметку в 16 777 215 знаков.

LONG ТЕХТ

Функционально аналогичен предыдущим типам, но с увеличенным объемом памяти до 4 гигабайт.

LONG BLOB

Позволяет помещать в базу данные больших объемов (4 294 967 295 символа).

ENUM (a, b, c, etc.)

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

SET

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

Таблица дробных типов данных

Дробные SQL типы данных используются для хранения чисел с плавающей точкой. На практике, как правило, задают различные финансовые показатели. В зависимости от необходимой точности применяют один из трех представленных:

FLOAT (size, d)

Позволяет содержать дробные числа указываемой точности d.

DOUBLE (size, d)

Используется для хранения дробных чисел с двоичной точностью.

DECIMAL(size, d)

Хранение дробных значений в виде строк.

Например, в банковских расчетах точность дробной части достигает значение в 8-мь или 10-ть знаков. Первые два типа не могут быть задействованы в данной области.

SQL преобразование типов данных

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

Целочисленный тип данных

Целые числа – отдельная группа чисел, образующая один из основных классов. Целочисленные SQL типы данных основываются на использовании базового типа INTEGER с некоторым расширением его свойств.

INT (size)

Хранение целочисленных значений, образующих диапазон [-231; 231-1]

TINYINT (size)

Служит для хранения чисел в диапазоне от -128 до 127

SMALLINT (size)

Характеризуется увеличенным диапазоном хранимых значений в размере от -32 768 до 32 767

MEDIUMINT (size)

Используется для хранения чисел размерностью от -223 до 223-1

BIGINT (size)

Охватывает диапазон целочисленных значений, начиная с -263 и заканчивая 263-1

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

Целочисленные SQL типы данных таблица

Поэтому разработчикам баз данных важно помнить, что использование больших диапазонов для атрибутов влечет увеличение затрат на память. Необходимо четко анализировать решаемые задачи и выявлять случаи, где известен примерный диапазон и определено условие использования чисел со знаком. Если диапазон используемых аргументов невелик, а все числа будут положительными, то будет корректнее использовать беззнаковый тип, образуемый атрибутом UNSIGNED.

Типы данных даты и времени

При изучении основ SQL типы данных даты и времени представляют особый интерес.

microsoft sql Типы данных

Использование нижеуказанных типов предоставляет дополнительные преимущества при разработке систем, работа которых зависит от временных показателей.

DATE

Главное предназначение — хранение даты в формате ГОД-МЕСЯЦ-ДЕНЬ (“ГГГГ-MM-ДД” или «уууу-mm-dd» ). Обычно значения разделены через «-», однако в качестве разделителя может быть задействован любой символ, кроме цифр.

TIME

Позволяет заносить в ячейку таблицы временные значения. Все значения задаются форматом «hh:mm:ss»

DATETIME

Объединяет функции предыдущих двух типов. Формат хранения представлен следующим образом: «уууу-mm-dd hh:mm:ss».

TIMESTAMP

Сохраняет дату и время, исчисляемое количеством секунд, прошедших начиная с полуночи 1.01.1970 года и до заданного значения.

YEAR (M)

Используется для хранения годовых значений в двух- или четырехзначном формате.

Что ещё необходимо знать?

Все эти типы данных детально систематизированы компанией Microsoft. SQL типы данных ею разработаны более подробно.

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

Специальный указатель – NULL

Иногда при заполнении базы данных возникает ситуация, когда при добавлении записи в таблицу необходимость вносить информацию во все столбцы отсутствует. Для этого применяется специальный указатель пустого значения – NULL, который в качестве вспомогательного средства использует язык SQL. Типы данных столбцов, которые не обязательно должны быть заполнены, при создании таблиц указываются с оператором, разрешающим включение пустых значений. В другом случае оператор NULL с дополнительной приставкой NOT может быть задействован для указания обязательного заполнения всех значений.

Язык SQL Типы даннх

Указатель NULL не имеет типа, а просто указывает на пустое значение в таблицах баз данных. Поэтому он может быть скомбинированным с любым из вышеперечисленных типов.

Типы данных SQL (справочник по базам данных Access на компьютере)

  • Чтение занимает 2 мин

В этой статье

Область применения: Access 2013, Office 2013Applies to: Access 2013, Office 2013

Типы данных SQL ядра СУБД Microsoft Access состоят из 13 первичных типов данных, определяемых обработчиком баз данных Microsoft Jet и несколькими допустимыми синонимами, подходящими для этих типов данных.The Microsoft Access database engine SQL data types consist of 13 primary data types defined by the Microsoft Jet database engine and several valid synonyms recognized for these data types.

В приведенной ниже таблице перечислены первичные типы данных.The following table lists the primary data types. Синонимы определены в Зарезервированных словах SQL ядра СУБД Microsoft Access.The synonyms are identified in Microsoft Access Database Engine SQL Reserved Words.

Тип данныхData type

Размер хранилищаStorage size

ОписаниеDescription

BINARYBINARY

1 байт на каждый символ1 byte per character

В поле этого типа может храниться любой тип данных.Any type of data may be stored in a field of this type. Нет перевода данных (например, в текст).No translation of the data (for example, to text) is made. То, как данные входят в двоичное поле, определяет, как они будут выглядеть в качестве выходных.How the data is input in a binary field dictates how it will appear as output.

BITBIT

1 байт1 byte

Значения «Да» и «Нет» и поля, содержащие только одно из двух значений.Yes and No values and fields that contain only one of two values.

TINYINTTINYINT

1 байт1 byte

Целое число от 0 до 255.An integer value between 0 and 255.

MONEYMONEY

8 байтов8 bytes

Масштаб целого числа от 922 337 203 685 477,5808 до 922 337 203 685 477,5807.A scaled integer between – 922,337,203,685,477.5808 and 922,337,203,685,477.5807.

DATETIME (см. DOUBLE)DATETIME (See DOUBLE)

8 байтов8 bytes

Значение даты и времени между годами от 100 до 9999.A date or time value between the years 100 and 9999.

UNIQUEIDENTIFIERUNIQUEIDENTIFIER

128 битов128 bits

Уникальный идентификационный номер, используемый с удаленными вызовами процедур.A unique identification number used with remote procedure calls.

REALREAL

4 байта4 bytes

Значение с плавающей запятой одинарной точности с диапазоном от –3,402823E38 до –1,401298E-45 для отрицательных значений, от 1,401298E-45 до 3,402823E38 для положительных значений, а также 0.A single-precision floating-point value with a range of – 3.402823E38 to – 1.401298E-45 for negative values, 1.401298E-45 to 3.402823E38 for positive values, and 0.

FLOATFLOAT

8 байтов8 bytes

Значение с плавающей запятой двойной точности с диапазоном от –1,79769313486232E308 до –4,94065645841247E-324 для отрицательных значений, от 4,94065645841247E-324 до 1,79769313486232E308 для положительных значений, а также 0.A double-precision floating-point value with a range of – 1.79769313486232E308 to – 4.94065645841247E-324 for negative values, 4.94065645841247E-324 to 1.79769313486232E308 for positive values, and 0.

SMALLINTSMALLINT

2 байта2 bytes

Короткое целое число в диапазоне от –32 768 до 32 767.A short integer between – 32,768 and 32,767. (См. «Примечания»)(See Notes)

INTEGERINTEGER

4 байта4 bytes

Длинное целое число в диапазоне от –2 147 483 648 до 2 147 483 647.A long integer between – 2,147,483,648 and 2,147,483,647. (См. «Примечания»)(See Notes)

DECIMALDECIMAL

17 байтов17 bytes

Тип точных числовых данных, содержащих значения от 1028 – 1 до –1028 – 1.An exact numeric data type that holds values from 1028 — 1 through — 1028 — 1. Можно задать два параметра: precision (в диапазоне от 1 до 28) и scale (в диапазоне от 0 до заданного значения параметра precision).You can define both precision (1 — 28) and scale (0 — defined precision). По умолчанию значения параметров precision и scale равны 18 и 0, соответственно.The default precision and scale are 18 and 0, respectively.

TEXTTEXT

2 байта на каждый символ (см. «Примечания»)2 bytes per character (See Notes)

Значение от 0 до 2,14 гигабайт.Zero to a maximum of 2.14 gigabytes.

IMAGEIMAGE

В соответствии с требованиемAs required

Значение от 0 до 2,14 гигабайт.Zero to a maximum of 2.14 gigabytes. Используется для объектов OLE.Used for OLE objects.

CHARACTERCHARACTER

2 байта на каждый символ (см. «Примечания»)2 bytes per character (See Notes)

Значение от 0 до 255 символов.Zero to 255 characters.

Примечание

  • Начальное значение и шаг приращения можно изменить, используя инструкцию ALTER TABLE.Both the seed and the increment can be modified using an ALTER TABLE statement. Добавленные в таблицу строки будут содержать значения, основанные на новом начальном значении и шаге приращения, которые автоматически создаются для столбца.New rows inserted into the table will have values, based on the new seed and increment values, that are automatically generated for the column. Если новое начальное значение и шаг приращения меньше значений, которые соответствуют созданным на основании предыдущего начального значения и шага приращения, создаются повторяющиеся значения.If the new seed and increment can yield values that match values generated based on the preceding seed and increment, duplicates will be generated. Если столбец представляет собой первичный ключ, то вставка новых строк может привести к ошибкам при создании повторяющихся значений.If the column is a primary key, then inserting new rows may result in errors when duplicate values are generated.
  • Для получения последнего значения, которое использовалось для столбца автоприращения, можно использовать инструкцию SELECT @@IDENTITY.To find the last value that was used for an auto-increment column, you can use the following statement: SELECT @@IDENTITY. Невозможно задать имя таблицы.You cannot specify a table name. Возвращаемое значение — значение из последней таблицы, содержащей столбец автоприращения, которая была обновлена.The value returned is from the last table, containing an auto-increment column, that was updated.

Типы данных MySQL — Oracle PL/SQL •MySQL •MariaDB •SQL Server •SQLite

Ниже приведен список типов данных, доступных в MySQL, который включает в себя string, numeric, date/time, и типыданных large (больших объектов).

String типы данных

Ниже перечислены типы данных String в MySQL:

СинтаксисМаксимальный размерПояснение
CHAR(size)Размер 255 символовГде size — количество сохраняемых символов. Строки с фиксированной длиной. Пространство справа дополнено на равное количество символов.
VARCHAR(size)Размер 255 символовГде size — количество сохраняемых символов. Строка переменной длины.
TINYTEXT(size)Размер 255 символовГде size — количество сохраняемых символов.
TEXT(size)Размер 65535 символовГде size — количество сохраняемых символов.
MEDIUMTEXT(size)Размер 16777215 символов.Где size — количество сохраняемых символов.
LONGTEXT(size)Размер 4Гб или 4294967295 символовГде size — количество сохраняемых символов.
BINARY(size)Размер 255 символовГде size — количество двоичных символов для хранения. Строки с фиксированной длиной. Пространство справа дополнено на равное количество символов. (Представлено в MySQL 4.1.2)
VARBINARY(size)Размер 255 символов.Где size — количество сохраняемых символов. Строка переменной длины. (Представлено в MySQL 4.1.2)

Numeric типы данных

Ниже перечислены числовые типы данных в MySQL:

СинтаксисМаксимальный размерПояснение
BITОчень маленькое целочисленное значение, эквивалентное TINYINT (1). Подписанные значения варьируются от -128 до 127. Беззнаковые значения варьируются от 0 до 255.
TINYINT(m)Очень маленькое целочисленное значение. Подписанные значения варьируются от -128 до 127. Беззнаковые значения варьируются от 0 до 255.
SMALLINT(m)Малое целочисленное значение. Подписанные значения варьируются от -32768 до 32767. Беззнаковые значения варьируются от 0 до 65535.
MEDIUMINT(m)Среднее целочисленное значение. Подписанные значения варьируются от -8388608 до 8388607. Беззнаковые значения варьируются от 0 до 16777215.
INT(m)Стандартное целочисленное значение. Подписанные значения варьируются от -2147483648 до 2147483647. Беззнаковые значения варьируются от 0 до 4294967295.
INTEGER(m)Стандартное целочисленное значение. Подписанные значения варьируются от -2147483648 до 2147483647. Беззнаковые значения варьируются от 0 до 4294967295.Это синоним типа данных INT.
BIGINT(m)Большое целочисленное значение. Подписанные значения варьируются от -9223372036854775808 до 9223372036854775807. Беззнаковые значения варьируются от 0 до 18446744073709551615.
DECIMAL(m,d)Число с фиксированной точкой. m по умолчанию — 10, если не указано. d по умолчанию равно 0, если не указано.Где m — всего цифр, а d — количество цифр после десятичного знака.
DEC(m,d)Число с фиксированной точкой. m по умолчанию — 10, если не указано. d по умолчанию равно 0, если не указано.Где m — всего цифр, а d — количество цифр после десятичного знака. Это синоним типа DECIMAL.
NUMERIC(m,d)Число с фиксированной точкой. m по умолчанию — 10, если не указано. d по умолчанию равно 0, если не указано.Где m — всего цифр, а d — количество цифр после десятичного знака. Это синоним типа DECIMAL.
FIXED(m,d)Число с фиксированной точкой. m по умолчанию — 10, если не указано. d по умолчанию равно 0, если не указано.Где m — всего цифр, а d — количество цифр после десятичного знака. (Представлено в MySQL 4.1) Это синоним типа DECIMAL.
FLOAT(m,d)Число с плавающей точкой с одиночной точностью.Где m — всего цифр, а d — количество цифр после десятичного знака.
DOUBLE(m,d)Число с плавающей точкой с двойной точностью.Где m — всего цифр, а d — количество цифр после десятичного знака. Это синоним типа данных DOUBLE.
DOUBLE PRECISION(m,d)Число с плавающей точкой с двойной точностью.Где m — всего цифр, а d — количество цифр после десятичного знака.
REAL(m,d)Число с плавающей точкой с двойной точностью.Где m — всего цифр, а d — количество цифр после десятичного знака. Это синоним типа данных DOUBLE.
FLOAT(p)Число с плавающей точкой.Где p — точность.
BOOLСинонимы TINYINT (1)Рассматривается как тип данных типа boolean, где значение 0 считается FALSE, а любое другое значение считается TRUE.
BOOLEANСинонимы TINYINT (1)Рассматривается как тип данных типа boolean, где значение 0 считается FALSE, а любое другое значение считается TRUE.

Date/Time типы данных

Ниже приведены типы данных дата / время в MySQL:

СинтаксисМаксимальный размерПояснение
DATEЗначения варьируются от ‘1000-01-01’ до ‘9999-12-31’.Отображается как ‘YYYY-MM-DD’.
DATETIMEЗначения варьируются от ‘1000-01-01 00:00:00’ до ‘9999-12-31 23:59:59’.Отображается как ‘YYYY-MM-DD HH:MM:SS’.
TIMESTAMP(m)Значения варьируются от ‘1970-01-01 00:00:01’ UTC до ‘2038-01-19 03:14:07’ UTC.Отображается как ‘YYYY-MM-DD HH:MM:SS’.
TIMEЗначения варьируются от ‘-838: 59: 59’ до ‘838: 59: 59’.Отображается как ‘HH:MM:SS.
YEAR[(2|4)]Значение года как 2 цифры или 4 цифры.Значение по умолчанию — 4 цифры.

Large Object (LOB) типы данных

Ниже перечислены типы данных большого объекта (LOB) в MySQL:

СинтаксисМаксимальный размерПояснение
TINYBLOBМаксимальный размер 255 байт.
BLOB(size)Максимальный размер 65 535 байт.Где size — количество хранимых символов (размер является необязательным и был введен в MySQL 4.1)
MEDIUMBLOBМаксимальный размер 16 777 215 байт.
LONGTEXTМаксимальный размер 4 ГБ или 4 294 967 295 символов.
Рубрика: Программирование MySQL | Permalink

Руководство по SQL. Типы данных. – PROSELYTE

Тип данных в языке структурированных запросов SQL – это атрибут, которые определяет тип данных любого объекта. Каждая колонка, переменная и выражение должны относится к одному из типов данных SQL.

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

Ниже приведены типы данных языка SQL, разделённые по категориям:

  • целочисленные
  • числа с плавающей точкой
  • время и дата
  • символы
  • символы Unicode
  • бинарные
  • другие

Целочисленные типы данных

Тип данныхОтДо
bigint-9,223,372,036,854,775,8089,223,372,036,854,775,807
int-2,147,483,6482,147,483,647
smallint-32,76832,767
tinyint0255
bit01
decimal-10^38 +110^38 -1
numeric-10^38 +110^38 -1
money-922,337,203,685,477.5808+922,337,203,685,477.5807
smallmoney-214,748.3648+214,748.3647

Типы данных с плавающей точкой

Тип данныхОтДо
float-1.79E + 3081.79E + 308
real-3.40E + 383.40E + 38

Время и дата

Тип данныхОтДо
datetime1 Января, 175331 Декабря, 9999
smalldatetime1 Января, 19006 Июня, 2079
dateХранит дату в формате May 30, 2016
timeХранит время в формате 15:30 P.M.

Символы

Тип данныхОписание
charМаксимальная длина – 8,000 символов. (Фиксированная длина символов, которые не входят в Unicode)
varcharМаксимальная длина – 8,000 символов. (Изменяющаяся длина данных, не входящих в Unicode).
varchar(max)Максимальная длина – 231characters, Изменяющаяся длина данных, не входящих в Unicode (только для SQL Server 2005).
textИзменяющаяся длина данных, не входящих в Unicode с максимальной длинной – 2,147,483,647 символов.

Символы Unicode

Тип данныхОписание
ncharМаксимальная длина – 4,000 символов.( Фиксированная длина Unicode)
nvarcharМаксимальная длина – 4,000 символов.( Изменяющаяся длина Unicode)
nvarchar(max)Максимальная длина – 231 символ. ( Изменяющаяся длина Unicode, только для SQL Server 2005)
ntextМаксимальная длина – 1,073,741,823 символов. ( Изменяющаяся длина Unicode)

Бинарные типы данных

Тип данныхОписание
binaryМаксимальная длина – 8,000 байтов.( Фиксированная длина бинарных данных)
varbinaryМаксимальная длина – 8,000 байтов.( Изменяющаяся длина бинарных данных)
varbinary(max)Максимальная длина – 231 байт.(Фиксированная длина бинарных данных. Только для SQL Server 2005)
imageМаксимальная длина – 2,147,483,647 байтов. ( Изменяющаяся длина бинарных данных)

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

Тип данныхОписание
sql_variantХранит значения различных типов данных, поддерживаемых сервером SQL, за исключением, text, ntext и timestamp.
timestampХранит уникальное для базы данных значение, которое обновляется при каждом изменении записи.
uniqueidentifierХранит глобальный уникальный идентификатор (GUID)
xmlХранит XML данные. Мы можем хранить экземпляр xml в колонке, либо в переменной ( Только для SQL Server 2005).
cursorХранит ссылку на курсор.
tableХранит результирующее множество для крайней обработки.

На этом мы заканчиваем изучение типов данных.

В следующей статье мы рассмотрим операторы языка структурированных запросов SQL.

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

Здесь мы узнаем, что такое числовые типы данных на сервере sql, а также использование числовых типов данных и различных типов числовых типов данных sql.

Числовые типы данных SQL

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

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

  • Типы точных числовых данных
  • Приблизительные числовые типы данных

Точные числовые типы данных SQL

точных числовых типов данных в sql полезны для хранения целочисленных типов данных. Пожалуйста, проверьте следующую таблицу для получения точных числовых типов данных в sql server.

Тип данных Описание Размер хранилища
бит Это однобитовое целое число, которое может принимать значения 0, 1 или ноль
tinyint Это однобайтовое целое, мы можем хранить значения от 0 до 255 (Minval: 0, Maxval: 255). 1 байт
smallint Это 16-битное целое число, мы можем хранить значения от -2 ^ 15 (-32,768) до 2 ^ 15-1 (32,767) 2 байта
внутренний Это 32-битное целое число, мы можем хранить значения от -2 ^ 15 (-32,768) до 2 ^ 15-1 (32,767) 4 байта
bigint Это 64-битное целое число, мы можем хранить значения от -2 ^ 63 (-9223372036854775808) до 2 ^ 63-1 (9223372036854775807) 8 байт
десятичное Мы можем хранить значения от -10 ^ 38 1 до 10 ^ 38 –1 5-17 байтов
числовой Мы можем хранить значения от -10 ^ 38 1 до 10 ^ 38 –1 5-17 байтов
smallmoney Мы можем хранить денежные значения от — 214 748.С 3648 по 214 748,3647 4 байта
деньги Мы можем хранить денежные значения от -922,337,203,685,477,5808 до 922,337,203,685,477,5807 8 байт

Примерные числовые типы данных SQL

В sql: Приблизительно числовых типов данных используются для хранения числовых данных с плавающей запятой, т.е.данные с плавающей запятой являются приблизительными, поэтому не все значения в диапазоне типов данных могут быть представлены точно.

Тип данных Описание Размер хранилища
Поплавок (n) Мы можем хранить значения от — 1.79E 308 до 1.79E 308 Зависит от значения n
реальный Мы можем хранить значения от — 3.40E 38 до 3.40E 38 4 байта
.

Общие сведения о типах данных SQL — числовых, символьных, двоичных и т. Д.

При таком количестве данных в мире практически невозможно управлять данными без соответствующих баз данных. SQL — это ядро ​​реляционных баз данных, которое предоставляет вам различные варианты работы с данными, поэтому навыки SQL необходимы в большинстве рабочих ролей. В этой статье о типах данных SQL мы собираемся обсудить различные типы данных, используемые в SQL.

В этой статье рассматривается следующее:

Итак, давайте начнем с каждого из них.

Типы данных SQL: числовые типы

В этом разделе статьи речь пойдет о числовых типах данных. Эти типы данных допускают целые числа со знаком и без знака. Я разделил числовые типы данных на следующие два раздела:

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

numeric числовое значение.38-1
Тип данных Описание / диапазон
Хранение
Описание ОТ ДО
бит Целое число, которое может быть 0, 1 или NULL.
tinyint Разрешает целые числа 0 255 1 байт
smallint Разрешает целые числа-32,768 32,767 2 байта
int Допускает целые числа -2 147 483 648 2 147 483 647 4 байта
bigint Допускает целые числа -9 223 372 036 854 775 808 9 223 372 036 854 775807 9 223 372 036 854 775807 8 байт Позволяет 5-17 байт
smallmoney Разрешает данные как валюту -214,748,3648 +214,748,3647 4 байта
деньги Разрешает данные как валюту-93722,337,203,485,47723,6858077 8 байтов

Теперь давайте посмотрим на приблизительные числовые типы данных.

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

Тип данных Описание / диапазон
Хранение
Описание ОТ ДО
float (n) Позволяет числовые данные с плавающей точкой -1.79E + 308 1.79E + 308 4 или 8 байтов
вещественное Разрешает числовые данные с плавающей точностью -3,40E + 38 3,40E + 38 4 байта

Далее В этой статье давайте рассмотрим типы данных символьных строк, используемые в SQL.

Типы данных SQL: Типы данных символьной строки

В этом разделе статьи речь пойдет о символьных типах данных. Эти типы данных позволяют использовать символы фиксированной и переменной длины.См. Таблицу ниже.

Тип данных Описание / Максимальный размер
Хранение
Описание Максимальный размер
текст Позволяет переменную длина символьной строки 2 ГБ текстовых данных 4 байта + количество символов
varchar (max) Разрешает символьную строку переменной длины 2E + 31 символ 2 байта + количество символов
varchar Допускает символьную строку переменной длины 8000 символов 2 байта + количество символов
char Допускает символьную строку фиксированной длины 8000 символов Заданная ширина

ПРИМЕЧАНИЕ :

Вопрос: Почему мы не можем объявить значение больше VARCHAR (8000)? Ответ: VARCHAR (n) отвечает за хранение данных на строковой странице.Поскольку на каждой странице заголовок страницы занимает первые 96 байтов, и только 8096 байтов данных (8192 -96) доступны для служебных данных и смещений строки, вы не можете объявить значение больше, чем VARCHAR (8000).

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

Строки символов Unicode Типы данных

Тип данных Описание / Максимальный размер
Хранение
Описание Максимальный размер
ntext Допускает строку Unicode переменной длины 2 ГБ текстовых данных 4 байта + количество символов
nvarchar (макс.) Допускает строку Unicode переменной длины 2E + 31 символ 2 байта + количество символов
nvarchar Допускает строку Unicode переменной длины 4000 символов 2 байта + количество символов
nchar Допускает строку Unicode фиксированной длины 4000 символов Определенная ширина * 2

Далее, В этой статье давайте рассмотрим двоичные типы данных, используемые в SQL.

Типы данных SQL: Типы двоичных данных

В этом разделе статьи речь пойдет о двоичных типах данных. Эти типы данных допускают двоичные значения фиксированной и переменной длины. См. Таблицу ниже.

Тип данных Описание / Максимальный размер
Описание Максимальный размер
изображение Позволяет двоичные данные переменной длины 2 147 483 647 байтов
varbinary (макс.) Разрешает двоичные данные переменной длины 2E + 31 байт
varbinary Разрешает двоичные данные переменной длины 8000 байт
двоичных Позволяет фиксированное длина двоичных данных 8000 байт

Далее в этой статье давайте рассмотрим типы данных даты и времени, используемые в SQL.

Типы данных SQL: Дата и время Типы данных

В этом разделе статьи речь пойдет о типах данных даты и времени. Эти типы данных допускают разные форматы даты и времени. См. Таблицу ниже.

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

Далее в этой статье давайте рассмотрим различные типы данных, доступные в SQL.

Типы данных SQL: другие Типы данных

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

Тип данных Описание
таблица Этот тип данных хранит набор результатов для последующей обработки.
xml Этот тип данных хранит данные в формате XML.
курсор Этот тип данных предоставляет ссылку на объект курсора.
uniqueidentifier Этот тип данных хранит глобальный уникальный идентификатор (GUID).
sql_variant
Этот тип данных хранит значения различных типов данных, поддерживаемых SQL, за исключением текста, ntext и временной метки.

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

  1. Что такое MySQL?
  2. Типы данных MySQL
  3. MySQL Workbench
  4. Spark SQL
  5. Вопросы для собеседования по SQL

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

Есть к нам вопрос? Пожалуйста, укажите это в комментариях к этой статье, и я вернусь к вам.

.

Типы данных SQL

SQL Data Types SQL Data Types

Резюме : в этом руководстве вы узнаете о наиболее часто используемых типах данных SQL, включая типы данных символьных строк, числовые типы данных и типы данных даты и времени.

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

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

Тип данных символьной строки

Тип данных символьной строки представляет собой символьный тип данных, включая типы символов фиксированной и переменной длины.

Символьный тип данных фиксированной длины

Символьный тип данных фиксированной длины хранит символьные строки фиксированной длины. Ниже показан символьный тип данных SQL с фиксированной длиной:

 

CHARACTER (n)

В этом синтаксисе n представляет количество символов, которое может хранить столбец.Параметр n является необязательным. Если вы его пропустите, система баз данных будет использовать его по умолчанию.

Итак, следующая декларация:

 

СИМВОЛ

эквивалентно следующему:

 

СИМВОЛ (1)

Максимальное значение n зависит от реализации системы баз данных.

Большинство систем баз данных используют CHAR вместо CHARACTER для представления символьного типа данных фиксированной длины:

 

CHAR (n)

Следующее определяет столбец с символьным типом данных фиксированной длины, который может хранить до пяти символов:

 

имя_столбца CHARACTER (5)

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

Примером использования символьного типа данных фиксированной длины является хранение сокращений состояний, поскольку все сокращения состояний состоят из двух символов, например CA, NY и TX.

Символ переменной длины или VARCHAR

Для хранения строк переменной длины в столбце используется символьный тип данных переменной длины. Ниже показан синтаксис символа переменной длины SQL:

 

CHARACTER VARYING (n)

В этом синтаксисе n представляет максимальное количество символов, которое может хранить столбец.Некоторые системы баз данных позволяют указать количество байтов, которое может хранить столбец.

Большинство систем баз данных используют VARCHAR для представления символьных типов данных переменной длины, таких как MySQL и Microsoft SQL Server. Oracle использует как VARCHAR2 , так и VARCHAR .

В следующем примере определяется столбец с типом данных VARCHAR :

 

first_name VARCHAR (50)

Если вы сохраняете значение длиной 20 в столбце first_name , система базы данных сохраняет это значение без дополнительных пробелов.

Однако, если вы сохраняете значение, длина которого больше 50, система базы данных может выдать ошибку.

Числовые типы

Числовые значения хранятся в столбцах с типом чисел, обычно обозначаемым как NUMBER , INTEGER , REAL и DECIMAL .

Ниже приведены числовые типы данных SQL:

  • BIT (n)
  • BIT VARYING (n)
  • DECIMAL (p, s)
  • INTEGER
  • SMALLINT
  • BIGINT
  • , s FLOAT (p, s FLOAT)
  • DOUBLE PRECISION (p, s)
  • REAL (s)

Десятичные типы

Тип данных DECIMAL используется для хранения точных числовых значений в базе данных e.г., денежные ценности.

Следующее определяет столбец с типом данных DECIMAL :

 

имя_столбца DECIMAL (p, s)

В этом синтаксисе:

  • p — точность, которая представляет количество значащих цифр.
  • с — это шкала, которая представляет количество цифр после десятичной точки.

Максимальные значения p и s зависят от реализации каждой системы баз данных.

Следующее определяет столбец зарплаты с 12 цифрами, которые включают 4 цифры после запятой:

 

зарплата DECIMAL (12,4)

В столбце зарплаты может храниться число со значением до 99,999,999,9999

Целое число

Целочисленный тип данных хранит целые числа, как положительные, так и отрицательные. Примеры целых чисел: 10, 0, -10 и 2010.

Большинство систем баз данных используют INT для представления целочисленного типа:

 

INT

Некоторые варианты целочисленных типов данных: BIGINT и SMALLINT .

Типы данных с плавающей запятой

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

Ниже приведены примеры типа данных FLOAT :

 

FLOAT ПОПЛАВКА (10) Поплавок (50)

Типы даты и времени

Типы данных даты и времени используются для хранения информации, связанной с датами и временем.SQL поддерживает следующие типы данных даты и времени:

Тип данных DATE

Тип данных DATE представляет значения даты, которые включают три части: год, месяц и день. Обычно диапазон типа данных DATE составляет от 0001-01-01 до 9999-12-31 .

Значение даты обычно указывается в форме:

 

'ГГГГ-ДД-ММ'

Например, следующее значение DATE : 31 декабря 2020 г. :

 

'2020-12-31'

Тип данных TIME

Тип данных TIME хранит значения, представляющие время дня в часах, минутах и ​​секундах.

Значения ВРЕМЯ должны быть указаны в следующей форме:

 

'ЧЧ: ММ: СС'

Дополнительное дробное значение может использоваться для хранения наносекунд, например:

 

'10: 59: 30.9999 '

Тип данных TIMESTAMP

Тип данных TIMESTAMP представляет значения временной метки, которые включают в себя значения DATE и TIME .

Значения TIMESTAMP указываются в следующей форме:

 

TIMESTAMP 'ГГГГ-ММ-ДД ЧЧ: ММ: СС'

Обратите внимание, что между датой и временем стоит пробел.

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

  • Было ли это руководство полезным?
  • Да Нет
.

Типы данных SQL — JournalDev

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

Типы данных SQL

Типы данных SQL можно условно разделить на следующие категории.

  1. Числовые типы данных, такие как int, tinyint, bigint, float, real и т. Д.
  2. Типы данных даты и времени, такие как Date, Time, Datetime и т. Д.
  3. Символьные и строковые типы данных, такие как char, varchar, text и т. Д.
  4. Типы данных символьной строки Unicode, например nchar, nvarchar, ntext и т. Д.
  5. Типы двоичных данных, такие как binary, varbinary и т. Д.
  6. Различные типы данных — clob, blob, xml, cursor, table и т. Д.

sql data types

Важные моменты типов данных SQL

  • Не все типы данных поддерживаются всеми поставщиками реляционных баз данных. Например, база данных Oracle не поддерживает DATETIME, а MySQL не поддерживает тип данных CLOB.Поэтому при разработке схемы базы данных и написании sql-запросов обязательно проверьте, поддерживаются ли типы данных или нет.
  • Перечисленные здесь типы данных включают не все типы данных, это наиболее часто используемые типы данных. Некоторые поставщики реляционных баз данных имеют свои собственные типы данных, которые могут не быть здесь перечислены. Например, Microsoft SQL Server имеет типы данных money и smallmoney , но, поскольку он не поддерживается другими популярными поставщиками баз данных, он здесь не указан.
  • У каждого поставщика реляционных баз данных есть собственный предел максимального размера для разных типов данных, вам не нужно запоминать его. Идея состоит в том, чтобы знать, какой тип данных будет использоваться в конкретном сценарии.

Давайте подробно рассмотрим различные категории типов данных sql.

Числовые типы данных SQL

Тип данных От до
бит 0 1
tinyint 0 255
smallint-32,768 32,767
внутренний -2,147,483,648 2,147,483,647
bigint -9,223,372,036, 854,775,808 9,223,372,036, 854,775,807
в десятичном виде ^ ^
числовой-10 ^ 38 +1 10 ^ 38-1
с плавающей запятой-1.79E + 308 1.79E + 308
реальный -3.40E + 38 3.40E + 38

Типы данных даты и времени SQL

Тип данных Описание
ДАТА Сохраняет дату в формате YYYY-MM-DD
TIME Сохраняет время в формате HH: MI: SS
DATETIME Сохраняет информацию о дате и времени в формате YYYY-MM- DD HH: MI: SS
TIMESTAMP Сохраняет количество секунд, прошедших с эпохи Unix (‘1970-01-01 00:00:00’ UTC)
YEAR Сохраняет год в виде двух цифр или 4-значный формат.Диапазон от 1901 до 2155 в 4-значном формате. Диапазон от 70 до 69, что соответствует 1970-2069 гг.

Типы данных символов и строк SQL

Тип данных Описание
CHAR Фиксированная длина с максимальной длиной 8000 символов
VARCHAR Хранилище переменной длины с максимальной длиной 8000 символов
VARCHAR (макс.) Хранилище переменной длины с указанным максимальным количеством символов, не поддерживается в MySQL
TEXT Хранилище переменной длины с максимальным размером данных 2 ГБ

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

Символьные и строковые типы данных SQL Unicode

Тип данных Описание
NCHAR Фиксированная длина с максимальной длиной 4000 символов
NVARCHAR Хранение переменной длины с максимальной длиной 4000 символов
NVARCHAR (макс.) Хранилище переменной длины с предоставленным максимальным количеством символов
NTEXT Хранилище переменной длины с максимальным размером данных 1 ГБ

Обратите внимание, что указанные выше типы данных не поддерживаются в базе данных MySQL.

Типы двоичных данных SQL

Тип данных Описание
BINARY Фиксированная длина с максимальной длиной 8000 байт
VARBINARY Хранение переменной длины с максимальной длиной 8000 байт
VARBINARY (max) Хранилище переменной длины с предоставленным максимальным количеством байтов
IMAGE Хранилище переменной длины с максимальным размером двоичных данных 2 ГБ

Разные типы данных SQL

Тип данных Описание
CLOB Символьные большие объекты, которые могут содержать до 2 ГБ
BLOB Для больших двоичных объектов
XML для хранения данных xml
JSON для хранения данных JSON

Вот и все для быстрого обзор типов данных SQL.

Ссылка: Типы данных Oracle Database, типы данных mySQL

.