Ta en titt på dokumentationen av MySQL , där förklaras skillnaderna mellan dessa typer.
Men för att svara på din fråga är VARCHAR ett fält med användardefinierad längd, medan textfälten har en systemdefinierad storlek:
- VarChar [1-whatever (max vid 65535)]
- TinyText 255 (2^8 - 1)
- Text 65535 (2^16 - 1)
- MediumText 16M (2^24 - 1)
- LongText 4G (2^32 - 1)
Så jag använder VarChar när jag behöver ett fält som är mindre än 255.