我正在尝试将.mdb文件的内容(从Microsoft Access)导出到MySQL数据库中。
当我从.mdb文件中获取内容并将其回显到页面时,它看起来很好,就像标准文本一样。但是,当我使用PDO将其插入数据库时,出现incorrect string value
错误。字符串在INSERT子句中显示如下:
\x41\x44\x20\x2d\x20\x57\x49\x4c\x44\x20\x42\x45\x41\x4e\x20\x43\x41\x46\xc9
我不完全确定为什么会这样,或者我需要做些什么来纠正它。所有记录都不会发生,只有一些记录。
任何指针都会有所帮助。
解
由于数据来自Microsoft Access数据库,因此它包含在UTF-8中无效的Microsoft Office特殊字符。所以我使用以下函数解析每个字符串。
iconv("cp1252","UTF-8", $str);
答案 0 :(得分:0)
您可能在某些文本字段中包含引号或其他特殊字符。在插入
之前转义文本mysqli_real_escape_string($text)
// or
mysql_real_escape_string($text)
查看实际解决方案