繁体   English   中英

在MySQL中存储XML的最佳方法

[英]Best Way to Store XML in MySQL

我正在获取XML API响应,解析我需要的数据,但想在MySQL中存储完整的XML响应,以供以后添加数据。

我最初将XML存储在BLOB中,但发现有时值中的特殊字符会破坏INSERT。

因此,我首先将具有htmlentities的XML转换为BLOB,以保持原始API响应数据的完整性。 是这样做的好方法,还是有更好的方法?

正确转义,任何数据可以被INSERTed到一个BLOB htmlentities 不是这样。 对于mysqli API,请使用mysqli :: real_escape_string。 对于PDO,请使用绑定。

如果您在Windows上运行,请确保以二进制模式获取数据,否则在读取过程中CR / LF可能会被“修复”。

理论上XML应该是UTF-8,因此只需将TEXT CHARACTER SET utf8mb4代替BLOB

如果所有其他方法均失败,请考虑(在客户端中)将Blob转换为Base64。 它将大4/3。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM