logo

SQL типове данни

Типовете данни се използват за представяне на естеството на данните, които могат да се съхраняват в таблицата на базата данни. Например, в определена колона на таблица, ако искаме да съхраняваме низов тип данни, тогава ще трябва да декларираме низов тип данни на тази колона.

Типовете данни се класифицират главно в три категории за всяка база данни.

  • String Типове данни
  • Числови типове данни
  • Дата и час Типове данни

Типове данни в бази данни MySQL, SQL Server и Oracle

MySQL типове данни

Списък с типове данни, използвани в MySQL база данни. Това е базирано на MySQL 8.0.

MySQL String типове данни

е равно на метод java
CHAR(Размер) Използва се за указване на низ с фиксирана дължина, който може да съдържа цифри, букви и специални знаци. Размерът му може да бъде от 0 до 255 знака. По подразбиране е 1.
VARCHAR(Размер) Използва се за указване на низ с променлива дължина, който може да съдържа цифри, букви и специални знаци. Размерът му може да бъде от 0 до 65535 знака.
ДВОИЧЕН (Размер) Той е равен на CHAR(), но съхранява двоични байтови низове. Параметърът му за размер определя дължината на колоната в байтове. По подразбиране е 1.
VARBINARY (Размер) Той е равен на VARCHAR(), но съхранява двоични байтови низове. Параметърът му за размер определя максималната дължина на колоната в байтове.
Размер на текста) Той съдържа низ, който може да съдържа максимална дължина от 255 знака.
МАЛЪК ТЕКСТ Той съдържа низ с максимална дължина от 255 знака.
СРЕДЕН ТЕКСТ Той съдържа низ с максимална дължина 16 777 215.
ДЪЛЪГ ТЕКСТ Той съдържа низ с максимална дължина от 4 294 967 295 знака.
ENUM(стойност1, стойност2, стойност3,...) Използва се, когато низов обект има само една стойност, избрана от списък с възможни стойности. Той съдържа 65535 стойности в списък ENUM. Ако вмъкнете стойност, която не е в списъка, ще бъде вмъкната празна стойност.
SET (val1,val2,val3,....) Използва се за указване на низ, който може да има 0 или повече стойности, избрани от списък с възможни стойности. Можете да изброите до 64 стойности наведнъж в списък SET.
BLOB (размер) Използва се за BLOB (двоични големи обекти). Може да побере до 65 535 байта.

MySQL числови типове данни

BIT (Размер) Използва се за тип битова стойност. Броят на битовете за стойност е посочен в размера. Размерът му може да бъде от 1 до 64. Стойността по подразбиране е 1.
INT(размер) Използва се за целочислена стойност. Диапазонът му със знак варира от -2147483648 до 2147483647, а диапазонът без знак варира от 0 до 4294967295. Параметърът за размер определя максималната ширина на дисплея, която е 255.
ЦЯЛО ЧИСЛО (размер) Равно е на INT(размер).
FLOAT(размер, d) Използва се за указване на число с плаваща запетая. Параметърът му за размер определя общия брой цифри. Броят на цифрите след десетичната запетая се определя от д параметър.
FLOAT(p) Използва се за указване на число с плаваща запетая. MySQL използва p параметър, за да определи дали да използва FLOAT или DOUBLE. Ако p е между 0 до 24, типът данни става FLOAT (). Ако p е от 25 до 53, типът данни става DOUBLE().
DOUBLE(размер, d) Това е число с плаваща запетая с нормален размер. Параметърът му за размер определя общия брой цифри. Броят на цифрите след десетичната запетая се определя от параметър d.
DECIMAL(размер, d) Използва се за указване на число с фиксирана точка. Параметърът му за размер определя общия брой цифри. Броят на цифрите след десетичния параметър се определя от д параметър. Максималната стойност за размера е 65, а стойността по подразбиране е 10. Максималната стойност за д е 30, а стойността по подразбиране е 0.
DEC(размер, d) Равно е на DECIMAL(размер, d).
BOOL Използва се за определяне на булеви стойности true и false. Нулата се счита за невярна, а ненулевите стойности се считат за верни.

Типове данни за дата и час в MySQL

ДАТА Използва се за указване на формата на датата ГГГГ-ММ-ДД. Поддържаният диапазон е от '1000-01-01' до '9999-12-31'.
DATETIME(fsp) Използва се за указване на комбинация от дата и час. Форматът му е ГГГГ-ММ-ДД чч:мм:сс. Поддържаният диапазон е от '1000-01-01 00:00:00' до 9999-12-31 23:59:59'.
TIMESTAMP(fsp) Използва се за указване на клеймото за време. Стойността му се съхранява като брой секунди от епохата на Unix ('1970-01-01 00:00:00' UTC). Форматът му е ГГГГ-ММ-ДД чч:мм:сс. Поддържаният диапазон е от '1970-01-01 00:00:01' UTC до '2038-01-09 03:14:07' UTC.
ВРЕМЕ (fsp) Използва се за определяне на формата на часа. Форматът му е чч:мм:сс. Поддържаният диапазон е от '-838:59:59' до '838:59:59'
ГОДИНА Използва се за указване на година в четирицифрен формат. Позволени стойности в четирицифрен формат от 1901 до 2155 и 0000.

Типове данни на SQL Server

Тип данни за низ на SQL Server

char(n) Това е тип данни за символен низ с фиксирана ширина. Размерът му може да бъде до 8000 знака.
varchar(n) Това е тип данни от символен низ с променлива ширина. Размерът му може да бъде до 8000 знака.
varchar(макс.) Това са типове данни от символен низ с променлива ширина. Размерът му може да бъде до 1 073 741 824 знака.
текст Това е тип данни от символен низ с променлива ширина. Размерът му може да бъде до 2 GB текстови данни.
нчар Това е низов тип данни Unicode с фиксирана ширина. Размерът му може да бъде до 4000 знака.
nvarchar Това е Unicode низов тип данни с променлива ширина. Размерът му може да бъде до 4000 знака.
ntext Това е Unicode низов тип данни с променлива ширина. Размерът му може да бъде до 2 GB текстови данни.
двоичен (n) Това е тип данни с двоичен низ с фиксирана ширина. Размерът му може да бъде до 8000 байта.
varbinary Това е тип данни с двоичен низ с променлива ширина. Размерът му може да бъде до 8000 байта.
изображение Това също е тип данни с двоичен низ с променлива ширина. Размерът му може да бъде до 2GB.

Цифрови типове данни на SQL Server

малко Това е цяло число, което може да бъде 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.
float(n) Използва се за указване на числови данни с плаваща точност от -1,79E+308 до 1,79E+308. Параметърът n показва дали полето трябва да съдържа 4 или 8 байта. Стойността по подразбиране на n е 53.
истински Това са числови данни с плаваща точност от -3,40E+38 до 3,40E+38.
пари Използва се за указване на парични данни от -922,337,233,685,477.5808 до 922,337,203,685,477.5807.

Тип данни за дата и час на SQL Server

Време за среща Използва се за указване на комбинация от дата и час. Поддържа обхват от 1 януари 1753 г. до 31 декември 9999 г. с точност от 3,33 милисекунди.
датачас2 Използва се за указване на комбинация от дата и час. Поддържа обхват от 1 януари 0001 г. до 31 декември 9999 г. с точност от 100 наносекунди
дата Използва се само за съхраняване на дата. Поддържа диапазон от 1 януари 0001 г. до 31 декември 9999 г
време Той съхранява времето само с точност от 100 наносекунди
клеймо за време Той съхранява уникален номер, когато се създава или модифицира нов ред. Стойността на времевия печат се основава на вътрешен часовник и не съответства на реалното време. Всяка таблица може да съдържа само променлива за еднократен печат.

SQL Server Други типове данни

Sql_variant Използва се за различни типове данни с изключение на текст, клеймо за време и ntext. Той съхранява до 8000 байта данни.
XML Той съхранява XML форматирани данни. Максимум 2GB.
курсор Той съхранява препратка към курсор, използван за операции с база данни.
маса Той съхранява набор от резултати за последваща обработка.
уникален идентификатор Той съхранява GUID (глобален уникален идентификатор).

Типове данни на Oracle

Oracle String типове данни

маркировка html
CHAR(размер) Използва се за съхраняване на символни данни в рамките на предварително зададената дължина. Може да се съхранява до 2000 байта.
NCHAR(размер) Използва се за съхраняване на данни с национални знаци в рамките на предварително зададената дължина. Може да се съхранява до 2000 байта.
VARCHAR2(размер) Използва се за съхраняване на променливи низови данни в рамките на предварително зададената дължина. Може да се съхранява до 4000 байта.
VARCHAR(РАЗМЕР) Това е същото като VARCHAR2(размер). Можете също да използвате VARCHAR(размер), но се препоръчва да използвате VARCHAR2(размер)
NVARCHAR2(размер) Използва се за съхраняване на Unicode низови данни в рамките на предварително зададената дължина. Трябва да посочим размера на типа данни NVARCHAR2. Може да се съхранява до 4000 байта.

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

ЧИСЛО (p, s) Съдържа точност p и мащаб s. Точността p може да варира от 1 до 38, а скалата s може да варира от -84 до 127.
FLOAT(p) Това е подтип на типа данни NUMBER. Точността p може да варира от 1 до 126.
BINARY_FLOAT Използва се за двоична точност (32-битова). Изисква 5 байта, включително байт за дължина.
BINARY_DOUBLE Използва се за двойна двоична точност (64 бита). Изисква 9 байта, включително байт за дължина.

Типове данни за дата и час на Oracle

ДАТА Използва се за съхраняване на валиден формат за дата-час с фиксирана дължина. Диапазонът му варира от 1 януари 4712 г. пр. н. е. до 31 декември 9999 г. сл. н. е.
КЛАПОТО ЗА ЧАС Използва се за съхраняване на валидната дата в ГГГГ-ММ-ДД с час чч:мм:сс формат.

Oracle големи обектни типове данни (LOB типове)

BLOB Използва се за указване на неструктурирани двоични данни. Обхватът му достига до 232-1 байт или 4 GB.
BFILE Използва се за съхраняване на двоични данни във външен файл. Обхватът му достига до 232-1 байт или 4 GB.
CLOB Използва се за еднобайтови символни данни. Обхватът му достига до 232-1 байт или 4 GB.
NCLOB Използва се за указване на еднобайтови или многобайтови национални символни набори (NCHAR) данни с фиксирана дължина. Обхватът му е до 232-1 байт или 4 GB.
RAW(размер) Използва се за указване на необработени двоични данни с променлива дължина. Обхватът му е до 2000 байта на ред. Максималният му размер трябва да бъде посочен.
ДЪЛГО СУРОВО Използва се за указване на необработени двоични данни с променлива дължина. Обхватът му е до 231-1 байта или 2 GB, на ред.