Andreas Steichardt <[EMAIL PROTECTED]> wrote on 24/10/2005 10:34:08:

> Hi!
> 
> I just hit something really strange which is either a bug in MySQL or a 
> dumbness bug of me.
> 
> I am trying to insert a string ending with a simple space and i really 
want 
> this space at the end of my string ;). Unfortunately MySQL kills this 
> whitespace when inserting into normal (var)char columns:
> 
> mysql> create table test_strings (foo_1 varchar(255),foo_2 
char(255),foo_3 
> text,foo_4 blob);
> Query OK, 0 rows affected (0.00 sec)
> 
> mysql> insert into test_strings set foo_1=' test ',foo_2=' test ',
> foo_3=' test 
> ',foo_4=' test ';
> Query OK, 1 row affected (0.00 sec)
> 
> mysql> select length(foo_1),length(foo_2),length(foo_3),length(foo_4) 
from 
> test_strings;
> +---------------+---------------+---------------+---------------+
> | length(foo_1) | length(foo_2) | length(foo_3) | length(foo_4) |
> +---------------+---------------+---------------+---------------+
> |             5 |             5 |             6 |             6 |
> +---------------+---------------+---------------+---------------+
> 1 row in set (0.00 sec)
> 
> Is this a feature or am i missing something. text would do it for mebut 
it is 
> a total waste of space.
> 
> Any ideas?

This is a "feature" of VARCHAR in MySQL V4 and before. It is fixed in 
5.0.3. The Manual ( http://dev.mysql.com/doc/refman/5.0/en/char.html ) 
suggests using BLOB or TEXT instead of VARCHAR to avoid this behaviour in 
earlier versions.

        Alec




-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to