MySQL ma’lumot tiplari
MySQL ma’lumot tiplari (8.4-versiya)
Ustunning ma’lumotlar turi ustun qanday qiymatga ega bo‘lishi mumkinligini belgilaydi: butun son, belgi, pul, sana va vaqt, ikkilik va hokazo.
Ma’lumotlar bazasi jadvalidagi har bir ustun nom va ma’lumotlar turiga ega bo‘lishi kerak.
SQL dasturchisi jadval yaratishda har bir ustun ichida qanday turdagi ma’lumotlar saqlanishini hal qilishi kerak. Ma’lumotlar turi SQL uchun har bir ustun ichida qanday turdagi ma’lumotlar kutilishini tushunish uchun ko‘rsatma bo‘lib, SQL saqlangan ma’lumotlar bilan qanday o‘zaro ta’sir qilishini ham aniqlaydi.
MySQL-da uchta asosiy ma’lumotlar turi mavjud: String, Raqamli va Sana va vaqt.
String ma’lumotlar turlari
| Ma’lumotlar turi | Tavsif |
|---|---|
| CHAR(size) | Qat’iy uzunlikdagi string (harflar, raqamlar va maxsus belgilarni o‘z ichiga olishi mumkin). size 0 dan 255 gacha bo‘lgan belgilarda ustun uzunligini belgilaydi. Standart o‘lcham 1 |
| VARCHAR(size) | O‘zgaruvchan uzunlikdagi string (harflar, raqamlar va maxsus belgilarni o‘z ichiga olishi mumkin). size 0 dan 65535 gacha bo‘lgan belgilarda ustunning maksimal uzunligini belgilaydi |
| BINARY(size) | CHAR() ga o‘xshaydi, lekin ikkilik bayt stringlarini saqlaydi. size baytlarda ustun uzunligini belgilaydi. Standart o‘lcham 1 |
| VARBINARY(size) | VARCHAR() ga o‘xshaydi, lekin ikkilik bayt stringlarini saqlaydi. size baytlardagi maksimal ustun uzunligini belgilaydi. |
| BLOB(size) | Maksimal uzunligi 65535 bayt bo‘lgan BLOB ustuni |
| TINYBLOB | Maksimal uzunligi 255 bayt bo‘lgan BLOB ustuni |
| MEDIUMBLOB | Maksimal uzunligi 16777215 bayt bo‘lgan BLOB ustuni |
| LONGBLOB | Maksimal uzunligi 4294967295 yoki 4 GB bayt bo‘lgan BLOB ustuni |
| TEXT(size) | Maksimal uzunligi 65535 bayt bo‘lgan stringni saqlaydi |
| TINYTEXT | Maksimal uzunligi 255 belgidan iborat MATN ustuni |
| MEDIUMTEXT | Maksimal uzunligi 16777215 belgidan iborat MATN ustuni |
| LONGTEXT | Maksimal uzunligi 4294967295 yoki 4 GB bayt bo‘lgan MATN ustuni |
| ENUM(val1, val2, val3, ...) | Mumkin bo‘lgan qiymatlar ro‘yxatidan (val1, val2, val3,..) tanlangan, faqat bitta qiymatga ega bo‘lishi mumkin bo‘lgan string obyekti. Siz 65535 tagacha qiymatni sanab o‘tishingiz mumkin. Agar ro‘yxatda bo‘lmagan qiymat kiritilsa, bo‘sh qiymat kiritiladi |
| SET(val1, val2, val3, ...) | Nol yoki undan ortiq qiymatlarga ega bo‘lishi mumkin bo‘lgan string obyekti, mumkin bo‘lgan qiymatlar ro‘yxatidan tanlangan (val1, val2, val3,..). Siz 64 tagacha qiymatni sanab o‘tishingiz mumkin |
Raqamli ma’lumotlar turlari
| Ma’lumotlar turi | Tavsif |
|---|---|
| BIT(size) | Bit-qiymat turi. o‘lcham 1 dan 64 gacha bo‘lgan bitlar sonini ko‘rsatadi. O‘lcham uchun standart qiymat 1 dir. |
| TINYINT(size) | Juda kichik butun son. Imzolangan diapazon -128 dan 127 gacha. Imzosiz diapazon 0 dan 255 gacha. o‘lcham ekranning minimal kengligini belgilaydi (maksimal displey kengligi 255). |
| BOOL | Nol qiymati noto‘g‘ri, nolga teng bo‘lmagan qiymatlar rost deb hisoblanadi. |
| BOOLEAN | BOOL ga teng |
| SMALLINT(size) | Kichik butun son. Imzolangan diapazon -32768 dan 32767 gacha. Imzosiz diapazon 0 dan 65535 gacha. o‘lcham displeyning minimal kengligini belgilaydi (maksimal displey kengligi 255) |
| MEDIUMINT(size) | O‘rta o‘lchamli butun son. Imzolangan diapazon -8388608 dan 8388607 gacha. Imzosiz diapazon 0 dan 16777215 gacha. o‘lcham displeyning minimal kengligini belgilaydi (maksimal displey kengligi 255). |
| INT(size) | Oddiy o‘lchamli butun son. Imzolangan diapazon -2147483648 dan 2147483647 gacha. Imzosiz diapazon 0 dan 4294967295 gacha. o‘lcham displeyning minimal kengligini belgilaydi (maksimal displey kengligi 255) |
| INTEGER(size) | INT (hajmi) ning sinonimi |
| BIGINT(size) | Katta butun son. Imzolangan diapazon -9223372036854775808 dan 9223372036854775807 gacha. Imzosiz diapazon 0 dan 18446744073709551615 gacha. o‘lcham minimal displey kengligini belgilaydi (maksimal displey kengligi 255) |
| DECIMAL(size, d) | Aniq belgilangan nuqta raqami. o‘lcham raqamlarning umumiy sonini ko‘rsatadi (maksimal 65). d kasrdan keyingi raqamlar sonini bildiradi (maksimal 30). Hajmi uchun standart qiymat 10. d uchun standart qiymat 0. |
| DEC(size, d) | DECIMAL (hajmi, d) ning sinonimi |
| FLOAT(size, d) | Kichik suzuvchi nuqtali raqam. FLOAT(hajmi, d) MySQL 8.0.17 da eskirgan va u MySQLning kelajakdagi versiyalarida olib tashlanadi. |
| FLOAT(p) | Suzuvchi nuqtali raqam. p qiymati olingan ma’lumotlar turi uchun FLOAT yoki DOUBLE dan foydalanishni aniqlaydi. Agar p 0 dan 24 gacha bo‘lsa, ma’lumotlar turi FLOAT bo‘ladi. Agar p 25 dan 53 gacha bo‘lsa, ma’lumotlar turi DOUBLE bo‘ladi |
| DOUBLE(size, d) | Oddiy o‘lchamdagi suzuvchi nuqtali raqam. Ruxsat etilgan qiymatlar -1,7976931348623157E+308 dan -2,2250738585072014E-308, 0 va 2,2250738585072014E-308 dan 1,7976933188E gacha. Raqamlarning umumiy soni o‘lchamda ko‘rsatilgan. O‘nli kasrdan keyingi raqamlar soni d parametrida ko‘rsatilgan |
| DOUBLE PRECISION(size, d) | DOUBLE (hajmi, d) ning sinonimi |
Sana va vaqt ma’lumotlari turlari
| Ma’lumotlar turi | Tavsif |
|---|---|
| DATE | Uchrashuv. Format: YYYY-AA-DD. Qo‘llab-quvvatlanadigan diapazon: "1000-01-01" dan "9999-12-31" gacha |
| DATETIME(fsp) | Sana va vaqt kombinatsiyasi. Format: YYYY-AA-KK hs:dd:ss. Qo‘llab-quvvatlanadigan diapazon “1000-01-01 00:00:00” dan “9999-12-31 23:59:59” gacha. Avtomatik ishga tushirish va joriy sana va vaqtni yangilash uchun ustun ta’rifiga DEFAULT va ON UPDATE ni qo‘shish |
| TIMESTAMP(fsp) | Vaqt tamg‘asi. Format: YYYY-AA-KK hs:dd:ss. TIMESTAMP qiymatlari Unix davridan keyingi soniyalar soni sifatida saqlanadi ('1970-01-01 00:00:00' UTC). Qo‘llab-quvvatlanadigan diapazon: “1970-01-01 00:00:01” UTC dan “2038-01-09 03:14:07” UTC gacha. Avtomatik ishga tushirish va joriy sana va vaqtni yangilash ustun ta’rifida DEFAULT CURRENT_TIMESTAMP va ON UPDATE CURRENT_TIMESTAMP yordamida belgilanishi mumkin. |
| TIME(fsp) | Vaqt. Format: hs:dd:ss. Qo‘llab-quvvatlanadigan diapazon "-838:59:59" dan "838:59:59" gacha |
| YEAR | To‘rt xonali formatda bir yil (YYYY). To‘rt xonali formatda ruxsat etilgan qiymatlar: 1901 dan 2155 gacha va 0000. |
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
