ประเภทข้อมูลใน MySQL วันนี้เราจะมาเรียนรู้กันว่าใน MySQL / MariaDB มีประเภทข้อมูลอะไรให้เราใช้บ้าง และความหมายของแต่ละประเภทนั้นคืออะไรกันบ้าง

 

ประเภทแรก คือ Integer ใช้เก็บตัวเลขประเภทจำนวนเต็ม

 

ประเภทความหมาย
TINYINTมีขนาด 1 byte เก็บค่าได้ 28 จำนวน
SMALLINTมีขนาด 2 byte เก็บค่าได้ 216 จำนวน
MEDIUMINTมีขนาด 3 byte เก็บค่าได้ 224 จำนวน
INTมีขนาด 4 byte เก็บค่าได้ 232 จำนวน
BIGINTมีขนาด 8 byte เก็บค่าได้ 264 จำนวน

 

ประเภทที่ 2 คือ  Float และ Double ใช้เก็บตัวเลขที่เป็นทศนิยม

 

ประเภทความหมาย
FLOATจำนวนทศนิยม ระหว่าง 1.18 x 10 -38 – 3.40 x 10 38
DOUBLEจำนวนทศนิยม ระหว่าง 2.23 x 10 -308 – 1.80 x 10 308

 

ประเภทที่ 3 คือ String และ Text ใช้สำหรับเก็บข้อความ และตัวอักษร

 

ประเภทความหมาย
CHARใช้เก็บข้อความแบบกำหนดขนาดคงที่ มีขนาด 255 ตัวอักษร
VARCHARใช้เก็บข้อความแบบกำหนดขนาดได้ มีขนาดสูงสุด 255 ตัวอักษร
TINYTEXTใช้เก็บตัวอักษรได้ 255 ตัวอักษร
TEXTใช้เก็บตัวอักษรได้มากถึง 65,535 ตัวอักษร
MEDIUMTEXTใช้เก็บตัวอักษรได้มากถึง 16,777,215 ตัวอักษร
LONGTEXTใช้เก็บตัวอักษรได้มากถึง 4,294,967,295 ตัวอักษร
BLOBใช้เก็บข้อมูลที่มีลักษณะเป็น ไฟล์รูปภาพ ไฟล์เสียง ใช้พื้นที่ 64 KB
TINYBLOBใช้เก็บข้อมูลที่มีลักษณะเป็น ไฟล์รูปภาพ ไฟล์เสียง ใช้พื้นที่ 1 byte
MEDIUMBLOBใช้เก็บข้อมูลที่มีลักษณะเป็น ไฟล์รูปภาพ ไฟล์เสียง ใช้พื้นที่ 16 MB
LONGBLOBใช้เก็บข้อมูลที่มีลักษณะเป็น ไฟล์รูปภาพ ไฟล์เสียง ใช้พื้นที่ 4 GB
ENUMใช้เก็บข้อมูลที่เป็นตัวเลือก เช่น เก็บเพศชายก็เก็บเป็น ‘m’ เก็บเพศหญิงก็เก็บเป็น ‘f’
SETใช้เก็บข้อมูลที่เป็นประเภท CheckBox ซึ่งเก็บได้หลายค่า เช่น รายการผลไม้ที่ชอบ มะม่วง ทุเรียน เงาะ ซึ่งลูกค้าติ๊กถูกหลายรายการ ที่ส่งมาจากหน้าฟอร์ม

 

ประเภทที่ 4 คือ ประเภท วัน เดือน ปี ต่างๆ

 

ประเภทความหมาย
DATEใช้สำหรับเก็บวันที่ในรูปแบบ YYYY-MM-DD (ปี-เดือน-วัน)
TIMEใช้สำหรับเก็บเวลาในรูปแบบ HH:MM:SS (ชั่วโมง:นาที:วินาที)
DATETIMEใช้สำหรับเก็บวันที่และเวลาในรูปแบบ YYYY-MM-DD HH:MM:SS
YEARใช้สำหรับเก็บปี ซึ่งจะเก็บ 4 หลัก คือ 2019 หรือ เก็บ 2 หลัก คือ 19
TIMESTAMPใช้สำหรับเก็บวันและเวลา ที่มีการเพิ่มข้อมูล กรณีไม่ถ้ามีการเพิ่มข้อมูลเข้ามาจะเป็นค่า null
TIMESTAMP(14)หมายถึงเก็บในรูปแบบ YYYYMMDDHHMMSS
TIMESTAMP(12)หมายถึงเก็บในรูปแบบ YYMMDDHHMMSS
TIMESTAMP(10)หมายถึงเก็บในรูปแบบ YYMMDDHHMM
TIMESTAMP(8)หมายถึงเก็บในรูปแบบ YYYYMMDD
TIMESTAMP(6)หมายถึงเก็บในรูปแบบ YYMMDD
TIMESTAMP(6)หมายถึงเก็บในรูปแบบ YYMM

 

คอร์สเรียนทั้งหมด

อ่านบทความอื่นเพิ่มเติม