Il existe 3 types de caractère pour PostgreSQL.

  • character varying(n), varchar(n)     Longueur variable avec limite
  • character(n), char(n)     longueur fixe, complété par des espaces
  • text     longueur variable illimitée

Une différence fondamentale entre varchar et char est que le second type complète avec des espaces la chaine de caractères… c’est désagrable de devoir systématiquement trimmer lorsqu’on utilise les char…

if ($_REQUEST['mon_champ']!='NC')

s’écrit donc

if (trim($_REQUEST['champ'])!='NC')

Plus d’info sur http://docs.postgresqlfr.org/8.3/datatype-character.html