LINUX.ORG.RU

MySQL: не вставляется в ячейку один пробел


0

0

CREATE TABLE `test` (
`string` CHAR( 5 ) NOT NULL 
) TYPE = MYISAM ;

insert into test (string) values (' ');

select concat('->',string,'<-'),length(string) from test ;

+--------------------------+----------------+
| concat('->',string,'<-') | length(string) |
+--------------------------+----------------+
| -><-                     |              0 |
+--------------------------+----------------+

То бишь, пробел при вставке игнорируется. Экранирование слэшем ничего не дает, 
в доке и гугле ниче не нашел. 
Оно, мот, так и нужно? 
Как тогда обойти? Мне, в частности, нужно хранить формат вывода валюты, т.е. пара переменных типа thousand_delimiter, decimal_delimiter. 
Использовать для этого локаль не предлагать. Нужна именно такая функциональность.

★★★★★
Ответ на: комментарий от AngryElf

Мда.. Похоже, это ограничение mysql. В char/varchar не вставляются вообще пустые строки, trim'аются на вводе, похоже. Помогло использование tinyblob.

AngryElf ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.