SQLを勉強していく中で、CHARとVARCHARの違いを理解したのでそれをまとめようと思います。
CHAR
例えば、CHAR(10)と指定された場合、格納される列は常にちょうど10バイトとなります。
たとえ10バイトに満たなくても、ちょうど10バイトになるように調整されるんです。
VARCHAR
CHAR型とは違って、格納される列数は調整されないんです。
例えば、VARCHAR(10)とされた場合、10バイトに満たなかった場合、10バイトになるようには調整されず、5バイトなり7バイトなりに調整されるんです。
短いですが、以上です。何か間違いがございましたら、ご教示いただけますと幸いです。
【参考資料】