3) Данные переменной длинны не эффективно хранить в таблицах, т.к. оно там дробится и частично резервируется, итого занимает больше и работает медленнее.
Tip: There is no performance difference among these three types, apart from increased storage space when using the blank-padded type, and a few extra CPU cycles to check the length when storing into a length-constrained column. While character(n) has performance advantages in some other database systems, there is no such advantage in PostgreSQL; in fact character(n) is usually the slowest of the three because of its additional storage costs. In most situations text or character varying should be used instead.
P.S.: Странно, почему этот старый факт до сих пор остается таким малоизвестным.