MySQLQo'llab-quvvatlanadigan ma'lumotlar turlari qanday?MySQLMa'lumotlar turlarining tafsilotlari
MySQL ma'lumotlar turlari
MySQL-da belgilangan ma'lumotlar maydonlarining turlari ma'lumotlar bazasini optimallashtirish uchun juda muhimdir.
MySQL har xil turlarni qo'llab-quvvatlaydi, ularni taxminan uch toifaga bo'lish mumkin: raqamli, sana/vaqt va qator (belgi) turlari.
Raqamli turi
MySQL ma'lumotlar bazasiBarcha standart SQL raqamli ma'lumotlar turlari qo'llab-quvvatlanadi.
Bu turlarga qat'iy raqamli ma'lumotlar turlari (INTEGER, SMALLINT, DECIMAL va NUMERIC) va taxminiy raqamli ma'lumotlar turlari (FLOAT, REAL va DOUBLE PRECISION) kiradi.
INT kalit so'zi INTEGER so'zining sinonimi va DEC kalit so'zi DECIMAL so'zining sinonimidir.
BIT ma'lumotlar turi bit maydoni qiymatlariga ega va MyISAM, MEMORY, InnoDB va BDB jadvallarini qo'llab-quvvatlaydi.
SQL standartining kengaytmasi sifatida MySQL TINYINT, MEDIUMINT va BIGINT tamsayı turlarini ham qo'llab-quvvatlaydi.Quyidagi jadvalda har bir butun son turi uchun zarur bo'lgan saqlash va diapazon ko'rsatilgan.
Turi | 大小 | diapazon (imzolangan) | diapazon (imzosiz) | Foydalanish |
---|---|---|---|---|
TINYINT | 1 bayt | (-128, 127) | (0, 255) | kichik tamsayı qiymati |
KICHIK | 2 bayt | (-32 768, 32 767) | (0, 65 535) | katta butun son qiymati |
O'RTA | 3 bayt | (-8 388 608, 8 388 607) | (0, 16 777 215) | katta butun son qiymati |
INT yoki INTEGER | 4 bayt | (-2 147 483 648, 2 147 483 647) | (0, 4 294 967 295) | katta butun son qiymati |
BIGINT | 8 bayt | (-9 233 372 036 854 775 808, 9 223 372 036 854 775 807) | (0, 18 446 744 073 709 551 615) | juda katta butun son qiymati |
FLAT | 4 bayt | (-3.402 823 466 E+38, -1.175 494 351 E-38), 0, (1.175 494 351 E-38, 3.402 823 466 351 E+38) | 0, (1.175 494 351 E-38, 3.402 823 466 E+38) | yagona aniqlik suzuvchi nuqta qiymati |
DOUBLE | 8 bayt | (-1.797 693 134 862 315 7 E+308, -2.225 073 858 507 201 4 E-308), 0, (2.225 073 858 507 201 4 E-308, 1.797) E-693, 134. | 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) | ikki tomonlama aniqlik suzuvchi nuqta qiymati |
O'nlik | DECIMAL(M,D) uchun, agar M>D bo'lsa, u M+2, aks holda D+2 bo'ladi | M va D qiymatlariga bog'liq | M va D qiymatlariga bog'liq | kasrli qiymat |
sana va vaqt turi
Vaqt qiymatlarini ifodalovchi sana va vaqt turlari: DATETIME, DATE, TIMESTAMP, TIME va YEAR.
Har bir vaqt turida to'g'ri qiymatlar diapazoni va "nol" qiymati mavjud bo'lib, ular MySQL ifodalay olmaydigan yaroqsiz qiymatni belgilashda foydalaniladi.
TIMESTAMP turi keyinchalik tavsiflanadigan avto-yangilash xususiyatiga ega.
Turi | 大小 (bayt) | oralig'i | Format | Foydalanish |
---|---|---|---|---|
TARIX | 3 | 1000-01-01/9999-12-31 | YYYY-MM-DD | sana qiymati |
TIME | 3 | ‘-838:59:59'/'838:59:59' | HH: MM: SS | vaqt qiymati yoki davomiyligi |
YIL | 1 | 1901/2155 | YYYY | yil qiymati |
sana vaqti | 8 | 1000-01-01 00:00:00/9999-12-31 23:59:59 | YYYY-MM-DD YH: MM: SS | Aralash sana va vaqt qiymatlari |
VAQT BORGASI | 4 | 1970-01-01 00:00:00/2037 年某时 | YYYYMMD HHMMSS | aralash sana va vaqt qiymatlari, vaqt tamg'asi |
String turi
String turlari CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM va SETga tegishli.Ushbu bo'limda ushbu turlar qanday ishlashi va ularni so'rovlarda qanday ishlatish tasvirlangan.
Turi | 大小 | Foydalanish |
---|---|---|
TANK | 0-255 bayt | qattiq uzunlikdagi ip |
VARCHAR | 0-65535 bayt | o'zgaruvchan uzunlikdagi ip |
TINYBLOB | 0-255 bayt | 255 belgigacha bo'lgan ikkilik qator |
TINYTEXT | 0-255 bayt | qisqa matn qatori |
Blob | 0-65 535 bayt | ikkilik shakldagi uzun matnli ma'lumotlar |
TEXT | 0-65 535 bayt | uzun matnli ma'lumotlar |
O'RTA | 0-16 777 215 bayt | Ikkilik shakldagi o'rta uzunlikdagi matnli ma'lumotlar |
OʻRTA MATN | 0-16 777 215 bayt | o'rta uzunlikdagi matnli ma'lumotlar |
LONGBLOB | 0-4 294 967 295 bayt | Ikkilik shakldagi juda katta matnli ma'lumotlar |
LONGTEXT | 0-4 294 967 295 bayt | juda katta matnli ma'lumotlar |
CHAR va VARCHAR turlari bir-biriga o'xshash, ammo ular boshqacha tarzda saqlanadi va olinadi.Ular, shuningdek, maksimal uzunligi va orqadagi bo'shliqlar saqlanib qolganligi jihatidan farq qiladi.Saqlash yoki olish vaqtida hech qanday holat konvertatsiyasi amalga oshirilmaydi.
BINARY va VARBINARY sinflari CHAR va VARCHARga o'xshaydi, faqat ular ikkilik bo'lmagan satrlar o'rniga ikkilik satrlarni o'z ichiga oladi.Ya'ni, ular belgilar qatorlari o'rniga bayt satrlarini o'z ichiga oladi.Bu shuni anglatadiki, ularda belgilar to'plami yo'q va saralash va taqqoslash ustun qiymati baytlarining raqamli qiymatlariga asoslanadi.
BLOB o'zgaruvchan hajmdagi ma'lumotlarni saqlashi mumkin bo'lgan ikkilik katta ob'ektdir.4 ta BLOB turi mavjud: TINYBLOB, BLOB, MEDIUMBLOB va LONGBLOB.Ular faqat ushlab turadigan qiymatning maksimal uzunligida farqlanadi.
Matnning 4 turi mavjud: TINYTEXT, TEXT, MEDIUMTEXT va LONGTEXT.Ular bir xil maksimal uzunlik va saqlash talablari bilan 4 ta BLOB turiga mos keladi.
Umid qilamanki, Chen Veyliang blogi ( https://www.chenweiliang.com/ ) "MySQL tomonidan qo'llab-quvvatlanadigan ma'lumotlar turlari qanday? Sizga yordam berish uchun MySQL-dagi ma'lumotlar turlarini batafsil tushuntirish".
Ushbu maqolaning havolasini baham ko'rish uchun xush kelibsiz:https://www.chenweiliang.com/cwl-466.html
Eng so'nggi yangiliklardan xabardor bo'lish uchun Chen Veyliang blogining Telegram kanaliga xush kelibsiz!
📚 Ushbu qo'llanmada katta ahamiyatga ega, 🌟Bu kamdan-kam imkoniyat, uni qo'ldan boy bermang! ⏰⌛💨
Baham ko'ring va yoqsa like!
Sizning baham ko'rish va yoqtirishlaringiz bizning doimiy motivatsiyamizdir!