Ma'lumot turlari

Jahongir Temirov

SQL Server kelajakdagi versiyasida ntext , text , va image ma'lumotlar turlarini olib tashlaydi. Shuning uchun siz ushbu ma'lumotlar turlaridan foydalanishdan qochishingiz kerak va o'rniga nvarchar(max) , varchar(max) va varbinary(max) ma'lumotlar turlaridan foydalaning

SQL tilida quyidagi ma'lumot turlari bor:

Exact numerics:

  • smallint

  • int

  • bigint

  • tinyint

  • bit

  • decimal

  • money

  • numeric

  • smallmoney

  • tinyint

Approximate numerics:

  • float

  • real

Date and Time:

  • date

  • dateTime

  • dateTime2

  • dateTimeOffSet

  • smallDateTime

  • time

Character strings:

  • char

  • varchar

  • text

Unicode Character strings:

  • nchar

  • nvarchar

  • ntext

Binary strings:

  • binary

  • varbinary

  • image

Other data types:

  • cursor

  • rowversion

  • hierarchyid

  • uniqueidentifier

  • sql_variant

  • xml

  • Spatial Geometry Types

  • Spatial Geography Types

  • table

Exact numerics

Ma'lumotlar bazasida bo'sh joyni tejash uchun barcha mumkin bo'lgan qiymatlarni ishonchli o'z ichiga oladigan eng kichik ma'lumotlar turidan foydalaning. Misol uchun, tinyint insonning yoshi uchun etarli bo'ladi, chunki hech kim 255 yoshdan ortiq yashamaydi. Ammo tinyint binoning yoshi uchun etarli bo'lmaydi, chunki binoning yoshi 255 yildan ortiq bo'lishi mumkin.

  • Bit - 0/1/null oladi. Agar jadvalda 8 yoki undan kam bit ustunlar mavjud bo'lsa, ustunlar 1 bayt sifatida saqlanadi. Agar 9 dan 16 bitgacha bo'lgan ustunlar mavjud bo'lsa, ustunlar 2 bayt sifatida saqlanadi va hokazo. TRUE va FALSE qator qiymatlari bit qiymatlariga aylantirilishi mumkin: TRUE 1 ga, FALSE esa 0 ga aylantiriladi. 0 ga teng bo'lmagan har qanday qiymatni 1 deb oladi.

  • decimal va numeric funksional bir xil (p[,s]) da ishlaydi. Precision(Aniqlik) va Scale(Masshtab). P - saqlanishi kerak bo'lgan o'nlik raqamlar soni, 1 dan 38 gacha, default 18. S - kasrning o'ng tomonida saqlanadigan raqamlar soni. 0 <= s <= p. default 0.

Money va smallmoney ko'proq valyuta qiymatlari uchun ishlatiladi.

Approximate numeric

Taxminiy raqamlar ko'proq ilmiy hisoblarda ishlatiladi.

  • real - float bilan deyarli bir xil. ISO standartida real float(24);

  • float [ ( n ) ] Bu erda n - float raqamining mantissini ilmiy yozuvda saqlash uchun ishlatiladigan bitlar soni va shuning uchun aniqlik va saqlash hajmini belgilaydi. n 1 dan 53 gacha, deafault qiymati 53 dir . [1,24] uchun 24, [25,53] uchun 53 oladi.

Date and Time types

  • date - standart string 'YYYY-MM-DD'. satr uzunligi 10 belgi. Default qiymati 1900-01-01. date faqat sanalatni oladi, vaqtni olmaydi.

Yangi ishlaringizda time, date, datetime2 va datetimeoffset maʼlumotlar turlaridan foydalaning. Ushbu turlar SQL standartiga mos keladi. Ular ko'proq portativdir. time , datetime2 va datetimeoffset ko'proq soniya aniqligini ta'minlaydi. datetimeoffset global o'rnatilgan ilovalar uchun vaqt mintaqasini qo'llab-quvvatlaydi.

  • datetime - standart string yo'q. 1 kun 00:00:00 dan 23:59:59.997 gacha. Default qiymati 1900-01-01 00:00:00. Millisekundlar 001 ga farq qilishi mumkin.

  • datetime2 - kengroq sana diapazoni, kattaroq standart kasr aniqligi va ixtiyoriy foydalanuvchi tomonidan belgilangan aniqlikka ega bo'lgan mavjud sana turining kengaytmasi sifatida ko'rib chiqilishi mumkin . Standart string YYYY-MM-DD hh:mm:ss[.fractional seconds]. 1kun 00:00:00 dan 23:59:59.9999999 gacha. 19 belgidan max 27tagacha. E'lon qilishda millisekundlarni ixtiyoriy belgilashi mumkin. 0 dan 9999999 xonalari soniga qarab. datetime2(7). Xotira: 3 dan kam aniqlik uchun 6 bayt. 3 yoki 4 aniqlik uchun 7 bayt. Boshqa barcha aniqliklar uchun 8 bayt kerak. Default qiymati 1900-01-01 00:00:00.

  • datetimeoffset - Datetime2 kabi 24 soatlik soat asosida kunning vaqti bilan birlashtirilgan sanani belgilaydi va UTC (Umumjahon vaqt koordinatasi yoki Grinvich vaqti) asosida vaqt mintaqasi xabardorligini qo'shadi. Standart string YYYY-MM-DD hs:dd:ss[.nnnnnnn] [{+|-}ss:mm]. 26 belgidan max 34 tagacha.

Xotira:

  • smalldatetime - Kunning vaqti bilan birlashtirilgan sanani belgilaydi. Vaqt 24 soatlik kunga asoslanadi, soniyalar har doim nolga (:00) va kasr soniyalarsiz. Max belgi 19. Standart string yo'q. default 1900-01-01 00:00:00. Size: 4bite.

  • time - Kunning vaqti qismi faqat, sanalar yo'q. Standart string hh:mm:ss[.nnnnnnn]. Default 00:00:00.

Character strings

  • Character strings typelari (char, varchar,text) Unicode bo'lmagan tarzda saqlaydigan datatype hisoblanadi. Ya'ni 1 belgi uchun 1 bayt ajratadi. VAR - VARYING - o'zgaruvchi ma'nosida.

  • CHAR - max uzunligi 1 dan 8000 baytgacha. E'lon qilinishi char(n). Default 1. Agar belgilangan o'lchamdan kam ma'lumot kiritilsa SQL unga bo'sh [" "] qo'shadi. So'raganingizda qaytarishdan oldin ularni olib tashlaydi. Uzun bo'lsa xato beradi.

  • VARCHAR/VARCHAR(max) - max uzunligi 1 dan 8000 baytgacha. VARCHAR(max) uzunligi 2^31-1 bayt(2 GB,2,147,483,647). Xotirada n + 2 olishi mumkin.Bu o'zgaruvchan kenglikdagi belgilar qatori. Dinamic type hisoblanadi. CHAR kabi kam belgiga qo'shilmaydi.

  • TEXT - varchar(max) kabi, xotirada n+ 4 oladi.

Ustun ma'lumotlarining o'lchamlari bir xil bo'lganda char dan foydalaning . Ustun ma'lumotlari yozuvlarining o'lchamlari sezilarli darajada farq qilganda varchar dan foydalaning . Ustun ma'lumotlari yozuvlarining o'lchamlari sezilarli darajada farq qilganda va satr uzunligi 8000 baytdan oshib ketganda varchar(max) dan foydalaning.

Unicode Character Strings

Bu typedagilar (nchar, nvarchar, ntext) saqlashda Unicode tarzda saqlaydi.1ta belgi uchun 2 bayt ajratadi. Belgilar boshidagi n harfi "National" ma'nosini beradi. Asosan boshqa tillar(japan, korea..)dagi belgilarni ham saqlaydi. Shuning uchun 2 baytdan ajratadi. Xotirada ham 2n oladi. Agar sizda bir nechta tillarni qo'llab-quvvatlaydigan saytlar bo'lsa ushbu type lardan foydalanganingiz yaxshi.

  • NCHAR - 1-4000 belgigacha, default 1.

  • NVARCHAR(n)/NTEXT - n 1-4000 belgigacha, max - 2^30-1 byte(1,073,741,823). Default 1.

Binary Strings

binary [ ( n ) ] n bayt boʻlgan qattiq uzunlikdagi ikkilik maʼlumotlar , bu yerda n 1 dan 8000 gacha boʻlgan qiymatdir. Saqlash hajmi n bayt. varbinary [ ( n | max ) ] Oʻzgaruvchan uzunlikdagi ikkilik maʼlumotlar. n 1 dan 8000 gacha bo'lgan qiymat bo'lishi mumkin. max maksimal saqlash hajmi 2^31-1 bayt ekanligini ko'rsatadi. Saqlash hajmi - kiritilgan ma'lumotlarning haqiqiy uzunligi + 2 bayt. Kiritilgan ma'lumotlar uzunligi 0 bayt bo'lishi mumkin. image - 0 dan 2^31-1 (2,147,483,647) baytgacha bo'lgan o'zgaruvchan uzunlikdagi ikkilik ma'lumotlar.

Other data types

Last updated