Sql int тип данных: int, bigint, smallint и tinyint (Transact-SQL) — SQL Server

НОУ ИНТУИТ | Лекция | Определение структуры данных

< Лекция 18 || Лекция 2: 1234

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

Ключевые слова: данные, тип данных, SQL, символьный тип, битовый тип, точное число, округленное число, тип дата/время, EBCDIC, time zone, домен, оператор, пользовательский тип данных, целочисленный тип, выражение, нецелочисленный тип, денежный тип, специальный тип данных, объект базы данных, переменная, параметр хранимой процедуры, преобразование типов, управляющая конструкция, операнд, константы, server, значение, блок операторов, команда, оператор поливариантных ветвлений, условный оператор, оператор цикла, синтаксис, множества, логическая структура, список, ограничения целостности данных, реальная таблица

Типы данных языка SQL, определенные стандартом

intuit.ru/2010/edi»> Данные – это совокупная информация, хранимая в базе данных в виде одного из нескольких различных типов . С помощью типов данных устанавливаются основные правила для данных, содержащихся в конкретном столбце таблицы, в том числе размер выделяемой для них памяти.

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

Таблица
2.1.
Тип данныхОбъявления
Символьный CHAR | VARCHAR
Битовый BIT | BIT VARYING
Точные числа NUMERIC | DECIMAL | INTEGER | SMALLINT
Округленные числа FLOAT | REAL | DOUBLE PRECISION
Дата/время DATE | TIME | TIMESTAMP
ИнтервалINTERVAL
Символьные данные

intuit.ru/2010/edi»> Символьные данные состоят из последовательности символов, входящих в определенный создателями СУБД набор символов. Поскольку наборы символов являются специфическими для различных диалектов языка SQL, перечень символов, которые могут входить в состав значений данных символьного типа, также зависит от конкретной реализации. Чаще всего используются наборы символов ASCII и EBCDIC. Для определения данных символьного типа используется следующий формат:

<символьный_тип>::=
{ CHARACTER [ VARYING][длина] | [CHAR | 
VARCHAR][длина]}

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

Битовые данные

Битовый тип данных используется для определения битовых строк, т.е. последовательности двоичных цифр (битов), каждая из которых может иметь значение либо 0, либо 1 . Данные битового типа определяются при помощи следующего формата:

<битовый_тип>::=
BIT [VARYING][длина]
Точные числа

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

<фиксированный_тип>::=
{NUMERIC[точность[,масштаб]]|{DECIMAL|DEC}
	[точность[, масштаб]]
| {INTEGER |INT}| SMALLINT}

Типы NUMERIC и DECIMAL предназначены для хранения чисел в десятичном формате. По умолчанию длина дробной части равна нулю, а принимаемая по умолчанию точность зависит от реализации. Тип INTEGER ( INT ) используется для хранения больших положительных или отрицательных целых чисел. Тип SMALLINT – для хранения небольших положительных или отрицательных целых чисел; в этом случае расход внешней памяти существенно сокращается.

Округленные числа

Тип округленных чисел применяется для описания данных, которые нельзя точно представить в компьютере, в частности действительных чисел. Округленные числа или числа с плавающей точкой представляются в научной нотации, при которой число записывается с помощью мантиссы, умноженной на определенную степень десяти (порядок), например: 10Е3, +5. 2Е6, -0.2Е-4 . Для определения данных вещественного типа используется формат:

<вещественный_тип>::=
{ FLOAT [точность]| REAL |
	DOUBLE PRECISION}

Параметр точность задает количество значащих цифр мантиссы. Точность типов REAL и DOUBLE PRECISION зависит от конкретной реализации.

Дата и время

Тип данных «дата/время» используется для определения моментов времени с некоторой установленной точностью. Стандарт SQL поддерживает следующий формат:

<тип_даты/времени>::=
{DATE | TIME[точность][WITH TIME ZONE]| 
   TIMESTAMP[точность][WITH TIME ZONE]}

Тип данных DATE используется для хранения календарных дат, включающих поля YEAR (год), MONTH (месяц) и DAY (день). Тип данных TIME – для хранения отметок времени, включающих поля HOUR (часы), MINUTE (минуты) и SECOND (секунды). Тип данных TIMESTAMP – для совместного хранения даты и времени. Параметр точность задает количество дробных десятичных знаков, определяющих точность сохранения значения в поле SECOND. Если этот параметр опускается, по умолчанию его значение для столбцов типа TIME принимается равным нулю (т.е. сохраняются целые секунды), тогда как для полей типа TIMESTAMP он принимается равным 6. Наличие ключевого слова WITH TIME ZONE определяет использование полей TIMEZONE HOUR и TIMEZONE MINUTE, тем самым задаются час и минуты сдвига зонального времени по отношению к универсальному координатному времени (Гринвичскому времени).

Данные типа INTERVAL используются для представления периодов времени.

Понятие домена

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

Стандарт SQL позволяет определить домен с помощью следующего оператора:

<определение_домена>::=
	CREATE DOMAIN имя_домена [AS]
		тип_данных
	[ DEFAULT значение]
	[ CHECK (допустимые_значения)]

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

Удаление доменов из базы данных выполняется с помощью оператора:

DROP DOMAIN имя_домена [ RESTRICT |
	CASCADE]

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

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

Дальше >>

< Лекция 18 || Лекция 2: 1234

MySQL типы данных — Java программирование

MySQL типы данных — Java программирование | ExamClouds




  • TINYINT — тип целых чисел. Диапазон значений от -127 до 128 (если может быть отрицательным), либо 0 до 255 (если не может быть отрицательным).
  • SMALLINT — тип целых чисел, В отличие от TINYINT диапазон значений значительно больше: -32 768 до 32 767 (если значение может быть отрицательным), либо от 0 до 65 535.
  • MEDIUMINT — тип целых чисел, однако диапазон значений ещё больше: от -8 388 608 до 8 388 607 (если возможны отрицательные), либо от 0 до 16 777 215.
  • INT — тип целых чисел. Самый распространённый тип данных. Диапазон: от -2 147 483 648 до 2 147 483 647, либо от 0 до 4 294 967 295.
  • BIGINT — ещё один тип целых чисел, с самым широким диапазоном значений. Используется редко, так как подобные масштабы значений бывают задействованы крайне редко. От -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807, либо от 0 до 18 446 744 073 709 551 615.
  • FLOAT — вещественные числа. Точность одинарная. Число знаков после запятой может составлять не более 24-х. Диапазон значений: от -3,402823466E+38 до -1,175494351E-38, 0, и от 1,175494351E-38 до 3,402823466E+38.
  • DOUBLE — вещественный тип данных. Похож на FLOAT, но знаков после запятой больше в два раза. Количество знаков после запятой может составлять до 53-х. Допустимые значения: от -1,7976931348623157E+308 до -2,2250738585072014E-308, 0, и от 2,2250738585072014E-308 до 1,7976931348623157E+308. 
  • DECIMAL — вещественный тип данных, хранится в виде строки. Используется редко. При отсутствии знаков — диапазон значений такой же как у DOUBLE. 
  • TEXT (BLOB) — стандартный строковый тип данных. Максимальная длина 65 535 символов.
  • TINYTEXT (TINYBLOB) — строковый тип. Текст с длиной от 0 до 255 символов.
  • MEDIUMTEXT (MEDIUMBLOB) — строковый тип. Текст с длиной от 0 до 16 777 215 символов.
  • LONGTEXT (LONGBLOB) — строковый тип. Текст с длиной от 0 до 4 294 967 295 символов.
  • VARCHAR — ещё один строковый тип данных, причём строкой переменной длины от 0 до 255 символов. Чаще всего используется для сохранения переменных с логином, паролем и прочими пользовательскими данными.
  • CHAR — строковый тип данных. Длина фиксированная (независимо от количества переданных символов). Диапазон составляет от 0 до 255 символов. При передаче данных меньше 255 символов в конце к данным дописываются пробелы, чтобы длина строки достигла заданного размера. 
  • TINYBLOB — бинарный тип данных. Максимум 255 символов.
  • BLOB — бинарный тип. Максимум 65535 символов.
  • MEDIUMBLOB — бинарный тип данных. Максимум 16 777 215 символов.
  • LONGBLOB — бинарный тип данных. Максимум 4 294 967 295 символов.
  • DATE — тип данных, хранящий дату. Формат следующий: YYYY-MM-DD (год, месяц, день). Например, такое значение будет удовлетворять этому полю: 2011-01-02.
  • DATETIME — тип данных, хранящий дату и время. Формат следующий: YYYY-MM-DD HH:MM:SS (год-месяц-день час-минута-секунда). Например: 2011-01-21 09:41:22 
  • TIMESTAMP — тип данных, хранящий дату и время. Имеет следующие форматы: YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD, YYMMDD.
  • TIME — тип данных, хранящий время. Формат: HH:MM:SS. Например: 09:21:55.
  • YEAR — тип данных, хранящий дату (год). Форматы: YY, YYYY.



Previous



Next



Read also:

  • Базы Данных
  • Нормализация БД
  • SQL оператор CREATE
  • SQL оператор SELECT
  • SQL оператор INSERT
  • SQL объединения
  • Изменение таблиц
  • Типы ключей баз данных
  • Функции, используемые в операторах SELECT и WHERE
  • Задания


Trustpilot


Trustpilot


Типы данных SQL — Date Тип даты в SQL

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

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

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

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

  • Что такое тип данных SQL?
  • Различные типы данных в SQL
    • Числовой тип данных в SQL
    • символьный тип данных в SQL
    • Тип данных даты в SQL

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

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

Хотите пройти сертификацию по SQL! Изучайте SQL у лучших экспертов по SQL и преуспейте в своей карьере благодаря сертификации Intellipaat по SQL.

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

Получите 100% повышение!

Осваивайте самые востребованные навыки прямо сейчас!

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

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

Если у вас есть какие-либо сомнения или вопросы, связанные с SQL, проясните их у экспертов по SQL в нашем сообществе SQL!

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

Типы числовых данных хранят все числовые значения или целые значения.

  • Тип данных Bigint помогает хранить «действительно большие» значения.
  • Тип данных

  • Int используется для хранения достаточно больших значений.
  • Тип данных

  • Smallint используется для хранения значений в диапазоне от −32 768 до 32 767.
  • Тип данных Tinyint хранит значения от 0 до 255. Это для относительно небольших чисел.
  • Тип данных Decimal используется для хранения дробных значений в двух аргументах. Первая часть — это размер значения, то есть общее количество цифр, а вторая часть определяет количество цифр (d) после запятой. Допустим, мы хотим сохранить десятичное значение 12,50. Здесь размер будет равен 4, потому что общее количество цифр равно 4, а значение «d» будет равно 2, потому что после запятой 2 цифры.

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

Ознакомьтесь с лучшими вопросами для интервью по SQL, чтобы получить преимущество в своей карьере!

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

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

  • Тип данных Char принимает один аргумент и имеет фиксированную длину. Например, предположим, что размер значения равен 20. Это будет означать, что вы не можете указать значение, содержащее более 20 символов. Имея в виду тот факт, что char имеет фиксированную длину, т. е. если размер значения должен быть 30 символов, но назначенная ему информация имеет 3 символа, то потребляемая память составляет 30 символов.
  • Тип данных Varchar также принимает размер в качестве аргумента. Но здесь это тип данных переменной длины, в отличие от char. Итак, здесь, если размер значения должен составлять 30 символов, а вы указываете только 3 символа, потребляемая память будет составлять только 3 символа.
  • Тип данных Text может содержать строку длиной не более 65 535 символов.

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

Типы данных даты и времени хранят дату или значение даты/времени.

  • Тип данных даты в SQL помогает нам указать дату в формате. Допустим, если мы хотим сохранить дату 2 января 2019 года, то сначала мы укажем год, который будет равен 2 0 1 9, затем месяц, который будет равен 0 1, и, наконец, день, который будет равен 0 2.
  • Тип данных Time помогает нам указать время, представленное в формате. Допустим, мы хотим сохранить время 8:30:23 утра. Итак, сначала мы укажем час, который будет 0 8, затем минуты, которые будут 3 0, и, наконец, секунды, которые будут 2 3,
  • Тип данных Year содержит значения года, такие как 1995 или 2011

Пройдите этот углубленный курс обучения SQL прямо сейчас!

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

Расписание курсов

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

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

INFORMIX-ESQL/C Руководство программиста
Работа с числовыми данными
Типы

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

Целочисленный тип данных SQL Количество байтов Диапазон значений
МАЛЕНЬКИЙ 2 от -32767 до 32767
ЦЕЛОЕ ЧИСЛО, ЦЕЛОЕ ,
СЕРИЙНЫЙ
4 -2 147 483 647 до 2 147 483 647
INT8, СЕРИЙНЫЙ 8 8 -9 223 372 036 854 775 807 до
9 223 372 036 854 775 807

Язык C поддерживает типы данных short int и long int для целых чисел. Размер этих целочисленных типов данных C зависит от аппаратного обеспечения и операционной системы используемого компьютера. Например, long Тип данных может иметь длину 4 байта на 32-разрядной платформе и 8 байтов на 64-разрядной платформе.

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

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

Informix предоставляет следующие типы данных для указания целочисленных переменных хоста определенной длины.

Тип данных Длина
интервал 1 Однобайтовое целое
int2 Двухбайтовое целое
int4 Четырехбайтовое целое
монетный двор Собственный целочисленный тип данных для машины
млонг Собственный целочисленный тип данных long для машины
СКОРОТКА Собственный короткий целочисленный тип данных для машины
МЧАР Собственный тип данных char для машины

Предупреждение: Предыдущие целочисленные типы данных зарезервированы. Ваши программы не должны использовать операторы typedef или $typedef для определения этих типов данных.

Целочисленные типы данных переменных хоста определены в файле ifxtypes.h , который автоматически включается в вашу программу при ее компиляции с помощью сценария esql .

Важно: Многие библиотечные функции INFORMIX-ESQL/C были изменены для объявления целочисленных типов данных Informix, а не машинных типов, таких как int , short и long . Informix рекомендует использовать целочисленные типы Informix при вызове библиотечных функций ESQL/C.

Типы данных SQL INT8 и SERIAL8

ESQL/C поддерживает типы данных SQL INT8 и SERIAL8 с типом данных int8 . Тип данных int8 — это машинно-независимый метод, представляющий числа в диапазоне от -(2 63 -1) до 2 63 -1.

Полное описание типов данных INT8 и SERIAL8 SQL см. в Informix Guide to SQL: Reference 9.0148 . В этом разделе описывается, как работать с типом данных ESQL/C, int8 .

Тип данных int8

Используйте тип данных ESQL/C int8 для объявления переменных хоста для значений базы данных типа INT8 и SERIAL8 . На рис. 5-1 показаны поля структуры ifx_int8_t , которая представляет значение INT8 или SERIAL8 .

Рисунок 5-1
Поля структуры ifx_int8_t

Имя поля Тип поля Назначение
данные беззнаковый 4-байтовый
целое число
[ INT8SIZE ]
Массив целочисленных значений, составляющих 8-байтовое целочисленное значение. Когда константа INT8SIZE определена как 2, этот массив содержит два 4-байтовых целых числа без знака. Фактический тип данных беззнакового 4-байтового целого числа может зависеть от машины.
знак короткое целое Короткое целое число для хранения знака (нулевого, отрицательного или положительного) 8-байтового целого числа. Фактический тип данных 2-байтового целого числа может зависеть от машины.

Заголовочный файл int8.h содержит структуру ifx_int8 и определение типа , называемое ifx_int8_t . Включите этот файл во все исходные файлы C, которые используют любые переменные хоста int8 , как показано в следующем примере:

    EXEC SQL включает int8;

Вы можете объявить переменную хоста int8 одним из следующих способов:

    EXEC SQL BEGIN DECLARE SECTION;
    int8 int8_var1;
    ifx_int8_t int8_var2;
    EXEC SQL BEGIN DECLARE SECTION;

Функции библиотеки int8

Вы должны выполнять все операции с числами типа int8 через библиотечные функции ESQL/C для типа данных int8 . Любые другие операции, модификации или анализы могут привести к непредсказуемым результатам. Библиотека ESQL/C предоставляет функции, позволяющие управлять int8 чисел и конвертировать числа типа int8 в другие типы данных и обратно. В следующей таблице описаны эти функции.

Имя функции Описание Ссылка на страницу
Функции управления
ifx_getserial8() Возвращает вставленное значение SERIAL8 Б-113
ifx_int8add() Добавляет два числа int8 Б-116
ifx_int8cmp() Сравнивает два числа int8 Б-119
ifx_int8copy() Копирует число int8 Б-121
ifx_int8div() Делит два числа int8 Б-135
ifx_int8mul() Умножает два числа int8 Б-137
ifx_int8sub() Вычитает два числа int8 Б-139
Функции преобразования типов
ifx_int8cvasc() Преобразует значение типа C char в значение типа int8 . Б-124
ifx_int8cvdbl() Преобразует значение типа C double в число 9.0146 int8 тип значение Б-124
ifx_int8cvdec() Преобразует значение десятичного типа C в значение типа int8 . Б-126
ifx_int8cvflt() Преобразует значение типа C float в значение типа int8 . Б-129
ifx_int8cvint() Преобразует значение типа C int в значение типа int8 . Б-131
ifx_int8cvlong() Преобразует 4-байтовое значение целочисленного типа C в значение типа int8. Б-133
ifx_int8toasc() Преобразует значение типа int8 в текстовую строку Б-142
ifx_int8todbl() Преобразует значение типа int8 в значение типа C double .

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