MySQL ใช้ชนิดข้อมูลหลายอย่าง แบ่งเป็น 3 หมวดหมู่:
- Numeric (ตัวเลข)
- Date and Time (วันที่และเวลา)
- String Types (สตริง)
NUMERIC DATA TYPES
MySQL ใช้ numeric data types มาตรฐาน ANSI SQL ทั้งหมด:
- INT - จำนวนเต็มขนาดปกติ signed หรือ unsigned. Signed: -2147483648 ถึง 2147483647. Unsigned: 0 ถึง 4294967295. ระบุความกว้างได้สูงสุด 11 หลัก
- TINYINT - จำนวนเต็มเล็กมาก signed/unsigned. Signed: -128 ถึง 127. Unsigned: 0 ถึง 255. ความกว้างสูงสุด 4 หลัก
- SMALLINT - จำนวนเต็มเล็ก signed/unsigned. Signed: -32768 ถึง 32767. Unsigned: 0 ถึง 65535. ความกว้างสูงสุด 5 หลัก
- MEDIUMINT - จำนวนเต็มขนาดกลาง signed/unsigned. Signed: -8388608 ถึง 8388607. Unsigned: 0 ถึง 16777215. ความกว้างสูงสุด 9 หลัก
- BIGINT - จำนวนเต็มใหญ่ signed/unsigned. Signed: -9223372036854775808 ถึง 9223372036854775807. Unsigned: 0 ถึง 18446744073709551615. ความกว้างสูงสุด 20 หลัก
- FLOAT(M,D) - จำนวนจุดลอยตัว ไม่สามารถเป็น unsigned ได้. กำหนดความยาวแสดงผล (M) และทศนิยม (D). Default: 10,2
- DOUBLE(M,D) - จำนวนจุดลอยตัวความแม่นยำคู่ ไม่สามารถเป็น unsigned ได้. Default: 16,4
- DECIMAL(M,D) - จำนวนจุดลอยตัวแบบ unpacked ไม่สามารถเป็น unsigned ได้. ต้องกำหนด M และ D. NUMERIC เป็น sinonmy ของ DECIMAL
DATE AND TIME TYPES
- DATE - ช่วง 1000-01-01 ถึง 9999-12-31. รูปแบบ "YYYY-MM-DD"
- DATETIME - วันที่พร้อมเวลา ช่วง 1000-01-01 00:00:00 ถึง 9999-12-31 23:59:59. รูปแบบ "YYYY-MM-DD HH:MM:SS"
- TIMESTAMP - วันที่พร้อมเวลา ช่วง '1970-01-01 00:00:01' ถึง '2038-01-19 08:44:07'
- TIME - เวลาในรูปแบบ HH:MM:SS
- YEAR(M) - ปี 2 หรือ 4 หลัก. YEAR(2): 1970-2069. YEAR(4): 1901-2155. Default: 4
STRING TYPES
- CHAR(M) - สตริงความยาวคงที่ 1-255 ตัวอักษร. เติม space ให้ครบความยาว
- VARCHAR(M) - สตริงความยาวแปรผัน 1-65,535 ตัวอักษร. ต้องกำหนดความยาว
- BLOB/TEXT - สูงสุด 65,535 ตัวอักษร. BLOB ใช้เก็บ binary data. TEXT เก็บข้อความ. BLOB case-sensitive, TEXT ไม่ case-sensitive
- TINYBLOB/TINYTEXT - สูงสุด 255 ตัวอักษร
- MEDIUMBLOB/MEDIUMTEXT - สูงสุด 16,777,215 ตัวอักษร
- LONGBLOB/LONGTEXT - สูงสุด 4,294,967,295 ตัวอักษร
- ENUM - การแจกแจงรายการ ต้องเลือกจากรายการที่กำหนด (หรือ NULL)