MySQLປະເພດຂໍ້ມູນທີ່ສະຫນັບສະຫນູນແມ່ນຫຍັງ?MySQLລາຍລະອຽດຂອງປະເພດຂໍ້ມູນໃນ
ປະເພດຂໍ້ມູນ MySQL
ປະເພດຂອງຊ່ອງຂໍ້ມູນທີ່ກໍານົດໄວ້ໃນ MySQL ແມ່ນມີຄວາມສໍາຄັນຫຼາຍຕໍ່ການເພີ່ມປະສິດທິພາບຂອງຖານຂໍ້ມູນຂອງທ່ານ.
MySQL ຮອງຮັບຫຼາກຫຼາຍປະເພດ, ເຊິ່ງສາມາດແບ່ງອອກເປັນສາມປະເພດໄດ້ຄື: ຕົວເລກ, ວັນທີ/ເວລາ, ແລະປະເພດສະຕຣິງ (ຕົວອັກສອນ).
ປະເພດຕົວເລກ
ຖານຂໍ້ມູນ MySQLປະເພດຂໍ້ມູນຕົວເລກ SQL ມາດຕະຖານທັງໝົດແມ່ນຮອງຮັບ.
ປະເພດເຫຼົ່ານີ້ລວມມີປະເພດຂໍ້ມູນຕົວເລກທີ່ເຂັ້ມງວດ (INTEGER, SMALLINT, DECIMAL, ແລະ NUMERIC), ແລະປະເພດຂໍ້ມູນຕົວເລກໂດຍປະມານ (FLOAT, REAL, ແລະ DOUBLE PreCISION).
ຄໍາສໍາຄັນ INT ແມ່ນຄໍາສັບຄ້າຍຄືສໍາລັບ INTEGER ແລະຄໍາສໍາຄັນ DEC ແມ່ນຄໍາສັບຄ້າຍຄື DECIMAL.
ປະເພດຂໍ້ມູນ BIT ຖືຄ່າ bit field ແລະສະຫນັບສະຫນູນຕາຕະລາງ MyISAM, MEMORY, InnoDB, ແລະ BDB.
ໃນຖານະເປັນການຂະຫຍາຍມາດຕະຖານ SQL, MySQL ຍັງສະຫນັບສະຫນູນປະເພດ integer TINYINT, MEDIUMINT, ແລະ BIGINT.ຕາຕະລາງຂ້າງລຸ່ມນີ້ສະແດງໃຫ້ເຫັນການເກັບຮັກສາແລະໄລຍະທີ່ຕ້ອງການສໍາລັບແຕ່ລະປະເພດ integer.
| ປະເພດ | ຂະ ໜາດ | ໄລຍະ (ເຊັນ) | ໄລຍະ (ບໍ່ໄດ້ເຊັນ) | ໃຊ້ |
|---|---|---|---|---|
| TINYINT | 1 ໄບຕ໌ | (-128, 127) | (0, 255) | ຄ່າຈຳນວນເຕັມນ້ອຍ |
| ຍິ້ມ | 2 ໄບຕ໌ | (-32 768, 32 767) | (0, 65 535) | ຄ່າຈຳນວນເຕັມ |
| ການແກ້ໄຂ | 3 ໄບຕ໌ | (-8 388 608, 8 388 607) | (0, 16 777 215) | ຄ່າຈຳນວນເຕັມ |
| INT ຫຼື INTEGE | 4 ໄບຕ໌ | (-2 147 483 648, 2 147 483 647) | (0, 4 294 967 295) | ຄ່າຈຳນວນເຕັມ |
| ໃຫຍ່ | 8 ໄບຕ໌ | (-9 233 372 036 854 775 808, 9 223 372 036 854 775 807) | (0, 18 446 744 073 709 551 615) | ຄ່າຈຳນວນເຕັມທີ່ໃຫຍ່ຫຼາຍ |
| ລູກລອຍ | 4 ໄບຕ໌ | (-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) | ຄວາມແມ່ນຍໍາດຽວ ຄ່າຈຸດລອຍ |
| DOUBLE | 8 ໄບຕ໌ | (-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, 693) . | 0, (2.225 073 858 507 201 4 E-308, 1.797 693 134 862 315 7 E+308) | ຄວາມແມ່ນຍໍາສອງເທົ່າ ຄ່າຈຸດລອຍ |
| ສຸດທ້າຍ | ສຳລັບ DECIMAL(M,D), ຖ້າ M>D, ມັນແມ່ນ M+2 ອື່ນແມ່ນ D+2 | ແມ່ນຂຶ້ນກັບຄ່າຂອງ M ແລະ D | ແມ່ນຂຶ້ນກັບຄ່າຂອງ M ແລະ D | ຄ່າທົດສະນິຍົມ |
ປະເພດວັນທີແລະເວລາ
ປະເພດວັນທີ ແລະເວລາທີ່ສະແດງຄ່າເວລາແມ່ນ DATETIME, DATE, TIMESTAMP, TIME, ແລະ YEAR.
ແຕ່ລະປະເພດເວລາມີຂອບເຂດຂອງຄ່າທີ່ຖືກຕ້ອງແລະຄ່າ "ສູນ", ເຊິ່ງຖືກນໍາໃຊ້ໃນເວລາທີ່ກໍານົດຄ່າທີ່ບໍ່ຖືກຕ້ອງທີ່ MySQL ບໍ່ສາມາດເປັນຕົວແທນໄດ້.
ປະເພດ TIMESTAMP ມີຄຸນສົມບັດການອັບເດດອັດຕະໂນມັດທີ່ເປັນເຈົ້າຂອງເຊິ່ງຈະຖືກອະທິບາຍໃນພາຍຫຼັງ.
| ປະເພດ | ຂະ ໜາດ (ໄບຕ໌) | ຊ່ວງ | ຮູບແບບ | ໃຊ້ |
|---|---|---|---|---|
| DATE | 3 | 1000-01-01/9999-12-31 | YYYY-MM-DD | ຄ່າວັນທີ |
| ເວລາ | 3 | ‘-838:59:59'/'838:59:59' | HH: MM: SS | ຄ່າເວລາຫຼືໄລຍະເວລາ |
| YEAR | 1 | 1901/2155 | ຍອ້ຍ | ມູນຄ່າປີ |
| ວັນທີ | 8 | 1000-01-01 00:00:00/9999-12-31 23:59:59 | YYYY-MM-DD HH: MM: SS | ຄ່າວັນທີ ແລະເວລາປະສົມ |
| TIMESTAMP | 4 | 1970-01-01 00:00:00/2037 年某时 | YYYYMMDDHHMMS | ຄ່າວັນທີ ແລະເວລາປະສົມ, ເວລາ |
ປະເພດສາຍ
ປະເພດສະຕຣິງອ້າງອີງໃສ່ CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM, ແລະ SET.ພາກນີ້ອະທິບາຍວິທີການປະເພດເຫຼົ່ານີ້ເຮັດວຽກແລະວິທີການນໍາໃຊ້ພວກມັນໃນການສອບຖາມ.
| ປະເພດ | ຂະ ໜາດ | ໃຊ້ |
|---|---|---|
| ຖັງ | 0-255 bytes | ສາຍຍາວຄົງທີ່ |
| VARCHAR | 0-65535 ໄບຕ໌ | ຄວາມຍາວຂອງຕົວແປ |
| TINYBLOB | 0-255 bytes | binary string ສູງສຸດ 255 ຕົວອັກສອນ |
| TINYTEXT | 0-255 bytes | ຂໍ້ຄວາມສັ້ນ |
| ບລັອກ | 0-65 535 ໄບຕ໌ | ຂໍ້ມູນຂໍ້ຄວາມຍາວໃນຮູບແບບສອງ |
| ຂໍ້ຄວາມ | 0-65 535 ໄບຕ໌ | ຂໍ້ມູນຂໍ້ຄວາມຍາວ |
| MEDUMBLOB | 0-16 777 215 bytes | ຂໍ້ມູນຂໍ້ຄວາມທີ່ມີຄວາມຍາວປານກາງໃນຮູບແບບຖານສອງ |
| ຂໍ້ຄວາມປານກາງ | 0-16 777 215 bytes | ຂໍ້ມູນຂໍ້ຄວາມຄວາມຍາວປານກາງ |
| ຍາວບລູບ | 0-4 294 967 295 bytes | ຂໍ້ມູນຂໍ້ຄວາມຂະຫນາດໃຫຍ່ຫຼາຍໃນຮູບແບບຖານສອງ |
| LONGTEXT | 0-4 294 967 295 bytes | ຂໍ້ມູນຂໍ້ຄວາມຂະຫນາດໃຫຍ່ຫຼາຍ |
ປະເພດ CHAR ແລະ VARCHAR ແມ່ນຄ້າຍຄືກັນ, ແຕ່ພວກມັນຖືກເກັບໄວ້ ແລະດຶງຂໍ້ມູນແຕກຕ່າງກັນ.ພວກມັນຍັງແຕກຕ່າງກັນໃນແງ່ຂອງຄວາມຍາວສູງສຸດຂອງເຂົາເຈົ້າ ແລະບໍ່ວ່າຈະເປັນບ່ອນຢູ່ຕາມຫຼັງຖືກຮັກສາໄວ້ຫຼືບໍ່.ບໍ່ມີການແປງກໍລະນີໃດຖືກເຮັດໃນລະຫວ່າງການເກັບຮັກສາ ຫຼືການດຶງຂໍ້ມູນ.
ຫ້ອງຮຽນ BINARY ແລະ VARBINARY ແມ່ນຄ້າຍຄືກັນກັບ CHAR ແລະ VARCHAR, ຍົກເວັ້ນວ່າພວກມັນມີ binary strings ແທນທີ່ຈະບໍ່ແມ່ນ binary strings.ນັ້ນແມ່ນ, ພວກມັນປະກອບດ້ວຍສະຕຣິງ byte ແທນທີ່ຈະເປັນສາຍຕົວອັກສອນ.ນີ້ຫມາຍຄວາມວ່າພວກເຂົາບໍ່ມີຊຸດຕົວອັກສອນ, ແລະການຈັດຮຽງແລະການປຽບທຽບແມ່ນອີງໃສ່ຄ່າຕົວເລກຂອງ bytes ຖັນ.
A BLOB ເປັນວັດຖຸຂະຫນາດໃຫຍ່ຖານສອງທີ່ສາມາດຖືຈໍານວນຕົວແປຂອງຂໍ້ມູນ.ມີ 4 ປະເພດ BLOB: TINYBLOB, BLOB, MEDIUMBLOB ແລະ LONGBLOB.ພວກເຂົາພຽງແຕ່ແຕກຕ່າງກັນໃນຄວາມຍາວສູງສຸດຂອງມູນຄ່າທີ່ພວກເຂົາສາມາດຖືໄດ້.
ມີ 4 ປະເພດຂໍ້ຄວາມ: TINYTEXT, TEXT, MEDIUMTEXT ແລະ LONGTEXT.ເຫຼົ່ານີ້ກົງກັນກັບ 4 ປະເພດ BLOB, ມີຄວາມຍາວສູງສຸດດຽວກັນແລະຄວາມຕ້ອງການເກັບຮັກສາ.
ຫວັງ Chen Weiliang Blog ( https://www.chenweiliang.com/ ) shared "ປະເພດຂໍ້ມູນໃດແດ່ທີ່ສະຫນັບສະຫນູນໂດຍ MySQL? ຄໍາອະທິບາຍລາຍລະອຽດຂອງປະເພດຂໍ້ມູນໃນ MySQL" ເພື່ອຊ່ວຍທ່ານ.
ຍິນດີຕ້ອນຮັບແບ່ງປັນການເຊື່ອມຕໍ່ຂອງບົດຄວາມນີ້:https://www.chenweiliang.com/cwl-466.html
