Important note: TINYTEXT/MEDIUMTEXT/LONGTEXT, MEDIUMINT, INT UNSIGNED etc. MySQL-specific/MySQL-style types hain. PostgreSQL/SQL Server me names/sizes thode different ho sakte, but concept same rahega.


1) Data type choose karna = DB design ka “foundation”

Data type decide karta hai:

Simple rule:

“Jitna chhota + accurate type possible ho, utna best — but future growth bhi handle ho.”


2) Main categories (sochne ka shortcut)

A) Text/String

CHAR, VARCHAR, TEXT (TINY/MEDIUM/LONG), BLOB

B) Numbers

Integers: TINYINT/SMALLINT/MEDIUMINT/INT/BIGINT

Decimals: FLOAT/DOUBLE (approx), DECIMAL (exact)

C) Date/Time

DATE, DATETIME, TIMESTAMP, TIME