我试图将以下值放入mysql表中:
lT~:uc9%7 4M?;~=0=^
所以我:
update table set field='lT~:uc9%7\04M?;~=0=^' where id='1';
当我选择时,我得到:
select * from table where id='1';
结果:
lT~:uc9%7 4M?;~=0=^
我知道这是因为\ 0被解释为空格。我怎么能解决这个问题呢。我需要得到实际值\ 0
答案 0 :(得分:2)
如果您想获得值
lT~:uc9%7\04M?;~=0=^
进入你的领域,你必须使用
UPDATE yourtable SET field='lT~:uc9%7\\04M?;~=0=^' where id='1';
因为反斜杠是MySQL的转义字符,请参阅
Escape Sequence | Character represented by sequence
----------------------------------------------------
\0 | An ASCII NUL (0x00) character
\\ | A backslash (“\”) character.
因此\0
不会被解释为空格。如果要在字符串中使用空格,只需使用空格。