Data Types in MySQL

Text Types

CHAR( ) A fixed section from 0 to 255 characters long Use when the data is not going to vary in length.
VARCHAR( ) A variable section from 0 to 255 characters long Use when the data is going to vary little in length.
TINYTEXT A string with a maximum length of 255 characters Used to store small amounts of text
TEXT A string with a maximum length of 65535 characters Used to store larger amounts of text

BLOB

A string with a maximum length of 65535 characters Binary Large OBject. Can be used to store binary data such as grapic images
MEDIUMTEXT A string with a maximum length of 16777215 characters Used to store large amounts of text
MEDIUMBLOB A string with a maximum length of 16777215 characters Binary Large OBject. Can be used to store binary data such as grapic images
LONGTEXT A string with a maximum length of 4294967295 characters Used to store very large amounts of text
LONGBLOB A string with a maximum length of 4294967295 characters Binary Large OBject. Can be used to store binary data such as grapic images

Numeric Types

TINYINT( ) -128 to 127 normal
0 to 255 UNSIGNED
SMALLINT( ) -32768 to 32767 normal
0 to 65535 UNSIGNED
MEDIUMINT( ) -8388608 to 8388607 normal
0 to 16777215 UNSIGNED
INT( ) -2147483648 to 2147483647 normal
0 to 4294967295 UNSIGNED
BIGINT( ) -9223372036854775808 to 9223372036854775807 normal
0 to 18446744073709551615 UNSIGNED
FLOAT A small number with a floating decimal point
DOUBLE( , ) A large number with a floating decimal point
DECIMAL( , ) A DOUBLE stored as a string , allowing for a fixed decimal point

UNSIGNED simply means that negative numbers aren't allowed.

Date Types

DATE YYYY-MM-DD 2004-10-15
TIME HH:MM:SS 18:30:00
DATETIME YYYY-MM-DD HH:MM:SS 2004-10-15 18:30:00
TIMESTAMP YYYYMMDDHHMMSS 20041015183000