That is the very reason for varchar. And the curious behavior of SQL-92 is because there is no varchar in SQL-92.
So you must define your database with char(x) fields and you get the behavior of char(x). Of course.
Re^5: Writing It Myself, DWIM, and Expectations