将图像URL保存到数据库表

时间:2010-02-13 03:52:15

标签: mysql data-munging

我正在尝试将图片网址保存到MySQL数据库表

列字段足够长。表和数据库使用UTF-8 CI-general collat​​ion(IIRC)

网址看起来像这样:

http://example.com/media/images/47142000/jpg/_47142379_005857853-1.jpg

但他们会像这样得到保存:

http://example.com/media/images/47142000/jpg ...

似乎'_'的出现导致了mySQL问题。在将字符串保存到数据库之前,是否需要对字符串进行urlencode(或对字符串执行一些其他数据)?

1 个答案:

答案 0 :(得分:1)

在字符串中,除非启用NO_BACKSLASH_ESCAPES SQL模式,否则某些序列具有特殊含义。这些序列中的每一个都以反斜杠(“\”)开头,称为转义字符。 MySQL识别以下转义序列。

\ 0 ASCII NUL(0x00)字符。 \'单引号(“'”)字符。 \“双引号(”“”)字符。 \ b退格字符。 \ n换行符(换行符)。 \ r \ n回车符。 \ t标签字符。 \ Z ASCII 26(Control-Z)。请参阅下表后面的注释。 \反斜杠(“\”)字符。 \% 一个人物。请参阅下表后面的注释。 _ 一个人物。见表格后面的注释。

你必须逃避_字符。

有关详细信息,请参阅http://dev.mysql.com/doc/refman/5.0/en/string-syntax.html