Типы данных SQL Server с примерами

Что такое тип данных?

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

Как использовать тип данных MS SQL

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

Зачем использовать типы данных?

Давайте возьмем пример простого Страница регистрации веб-приложения. Три поля ввода: имя, фамилия и контактный номер.

Здесь следует отметить, что в реальном времени:

  • "Первый фамилия" всегда будет буквенный.
  • «Контакт» всегда будет числовой.
Типы данных SQL Server
Пример типов данных в MS SQL
  • По картинке выше стоит определить "Первый фамилия" как персонаж и «Контакт» как целое.

Очевидно, что в любом приложении все поля содержат тот или иной тип данных. Например, числовые, буквенные, даты и многое другое.

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

Тип данных, доступный в MS SQL Server

Вот список типов данных сервера MS SQL:

Сервер MS SQL поддержка следующих категорий типов данных:

  • Точное число
  • Примерное числовое значение
  • Дата и время
  • Строки символов
  • Строки символов Юникода
  • Двоичные строки
  • Другие типы данных
Тип данных, доступный в MS SQL Server

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

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

Exact numeric имеет девять типов подтипов данных на сервере SQL.

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

Тип данных Описание Нижний предел Верхний предел Память
BIGINT Он хранит целые числа в заданном диапазоне -2^63 (-9,223,372 036,854,775,808 XNUMX, XNUMX XNUMX XNUMX XNUMX) 2^63−1 (−9,223,372, 036,854,775,807) 8 байт
Int Он хранит целые числа в заданном диапазоне -2^31 (-2,147 483,648 XNUMX, XNUMX XNUMX XNUMX XNUMX) 2^31−1 (−2,147, 483,647) 4 байт
SMALLINT Он хранит целые числа в заданном диапазоне −2^15 (−32,767) 2 ^ 15 (-32,768 XNUMX) 2 байт
TINYINT Он хранит целые числа в заданном диапазоне 0 255 1 байт
бит Он может принимать значения 0, 1 или NULL. 0 1 Столбец 1 байт/8 бит
десятичная дробь Используется для масштабирования и чисел фиксированной точности. −10^38+1 10^381−1 От 5 до 17 байт
числовой Используется для масштабирования и чисел фиксированной точности. −10^38+1 10^381−1 От 5 до 17 байт
деньги Используемые денежные данные -922,337, 203, 685,477.5808 +922,337 203, 685,477.5807, XNUMX XNUMX 8 байт
маленькие деньги Используемые денежные данные -214,478.3648 +214,478.3647 4 байт

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

Запрос:

DECLARE @Datatype_Int INT = 2
PRINT @Datatype_Int

Результат

2

Синтаксис

Десятичный (P,S)

Здесь,

  • P — точность
  • S — масштаб

Запрос:

DECLARE @Datatype_Decimal DECIMAL (3,2) = 2.31
PRINT @Datatype_Decimal

Результат

2.31

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

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

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

Тип данных Описание Нижний предел Верхний предел Память Точность
плавающий (н) Используется для чисел с плавающей точностью. −1.79E+308 1.79E + 308 Зависит от значения n 7 Digit
реальные Используется для чисел с плавающей точностью. −3.40E+38 3.40E + 38 4 байт 15 Digit
Syntax:  FLOAT [(n)]

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

Когда пользователь определяет тип данных, например float, n должно быть значение от 1 до 53.

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

Пример запроса:

DECLARE @Datatype_Float FLOAT(24) = 22.1234
PRINT @Datatype_Float

Результат

22.1234

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

Он хранит данные типа Дата и время.

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

Тип данных Описание Размер хранилища точность Нижний диапазон Верхний диапазон
DateTime Используется для указания даты и времени с 1 января 1753 года по 31 декабря 9999 года. Точность составляет 3.33 миллисекунды. 8 байт Округлено с шагом 000, 003, 007. 1753-01-01 9999-12-31
маленькая дата и время Используется для указания даты и времени с 1 января 0001 года по 31 декабря 9999 года. Имеет точность 100 наносекунд. 4 байта, фиксированный 1 минут 1900-01-01 2079-06-06
даты Используется для хранения только дат с 1 января 0001 г. по 31 декабря 9999 г. 3 байта, фиксированный 1 день 0001-01-01 9999-12-31
время Используется для хранения только значений времени с точностью до 100 наносекунд. 5 байт 100 наносекунд 00:00:00.0000000 23:59:59.9999999
смещение даты и времени Похож на datatime, но имеет смещение часового пояса. 10 байт 100 наносекунд 0001-01-01 9999-12-31
дата и время2 Используется для указания даты и времени с 1 января 0001 года по 31 декабря 9999 года. 6 байт 100 наносекунд 0001-01-01 9999-12-31

Пример запроса:

DECLARE @Datatype_Date DATE = '2030-01-01'
PRINT @Datatype_Date

Результат

'2030-01-01'

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

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

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

Тип данных Описание Нижний предел Верхний предел Память
колесница Это строка символов фиксированной ширины. Он хранит максимум 8,000 символов. 0 символов 8000 символов n байт
варчар Это строка символов переменной ширины. 0 символов 8000 символов n байт + 2 байта
варчар (макс.) Это строка символов переменной ширины. Он хранит максимум 1,073,741,824 XNUMX XNUMX XNUMX символа. 0 символов 2^31 символ n байт + 2 байта
текст Это строка символов переменной ширины. Он хранит максимум 2 ГБ текстовых данных. 0 символов 2,147,483,647 символов n байт + 4 байта

Пример запроса:

DECLARE @Datatype_Char VARCHAR(30) = 'This is Character Datatype'
PRINT @Datatype_Char

Результат

Это символьный тип данных

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

В этой категории хранится полный спектр символов Юникода, использующих кодировку символов UTF-16.

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

Тип данных Описание Нижний предел Верхний предел Память
нчар Это строка Unicode фиксированной ширины. 0 символов 4000 символов 2 раза n байт
нварчар Это строка Юникода переменной ширины. 0 символов 4000 символов 2 раза n байт + 2 байта
текст Это строка Юникода переменной ширины. 0 символов 1,073,741,823 знаков в 2 раза больше длины строки

Пример запроса:

DECLARE @Datatype_nChar VARCHAR(30) = 'This is nCharacter Datatype'
PRINT @Datatype_nChar

Результат

Это тип данных nCharacter

Типы данных двоичной строки в SQL

Эта категория содержит двоичную строку фиксированной и переменной длины.

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

Тип данных Описание Нижний предел Верхний предел Память
двоичный Это двоичная строка фиксированной ширины. Он хранит максимум 8,000 байт. 0 байт 8000 байт n байт
варбинарный Это двоичная строка переменной ширины. Он хранит максимум 8,000 байт. 0 байт 8000 байт Фактическая длина введенных данных + 2 байта
изображение Это двоичная строка переменной ширины. Он хранит максимум 2 ГБ. 0 байт 2,147,483,647 байт

Пример запроса:

DECLARE @Datatype_Binary BINARY(2) = 12;
PRINT @Datatype_Binary

Результат

0x000C

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

Это другие типы данных SQL-сервера, описание которых приведено ниже:

Тип данных Описание
Курсор Его вывод представляет собой столбец sp_cursor_list и sp_describe_cursor.
Он возвращает имя курсорной переменной.
Версия строки Эта версия штампует строки таблицы.
Иерархия Этот тип данных представляет позицию в иерархии.
Уникальный идентификатор Преобразование из символьного выражения.
Sql_variant Он хранит значения типов данных, поддерживаемых SQL-сервером.
XML Он хранит данные XML в столбце.
Тип пространственной геометрии Он представляет данные в плоской системе координат.
Тип пространственной географии Он представляет данные в круглоземной системе координат.
(см. таблицу ниже) Он сохраняет набор результатов для последующей обработки.

Интересные факты!

  • Тип данных CHAR быстрее, чем тип данных SQL VARCHAR при получении данных.

Итого

  • Каждый столбец в таблицах определяется своим типом данных во время создания таблицы.
  • Существует шесть основных категорий и еще одна дополнительная категория. Прочее разное имеет девять подкатегорий. SQL сервер доступные типы и размеры данных.