MySQL VARCHAR size?
MysqlVarcharMysql Problem Overview
If I have a VARCHAR of 200 characters and that I put a string of 100 characters, will it use 200 bytes or it will just use the actual size of the string?
Mysql Solutions
Solution 1 - Mysql
100 characters.
This is the var (variable) in varchar
: you only store what you enter (and an extra 2 bytes to store length upto 65535)
If it was char(200)
then you'd always store 200 characters, padded with 100 spaces
See the docs: "The CHAR and VARCHAR Types"
Solution 2 - Mysql
> VARCHAR means that it's a variable-length character, so it's only > going to take as much space as is necessary. But if you knew something > about the underlying structure, it may make sense to restrict VARCHAR > to some maximum amount. > > For instance, if you were storing comments from the user, you may > limit the comment field to only 4000 characters; if so, it doesn't > really make any sense to make the sql table have a field that's larger > than VARCHAR(4000).
Solution 3 - Mysql
Actually, it will takes 101 bytes.