我正在使用 MySQL OUTFILE 导出我的数据库的 CSV。我在那里有一个序列化字段,我想知道是否有办法让我使用 MySQL 查询在 CSV 中反序列化它。我难住了!
任何帮助将不胜感激。
你基本上有两个选择:
虽然理论上可以创建一个能够反序列化 PHP 数据的 MySQL 存储过程或自定义服务器扩展,但这比仅使用 PHP 来完成要困难得多。
编写一个小的 PHP 程序来修改 CSV 文件并不难。这是一个向您展示几个示例的答案:parse csv file using php line by line
至于编写代码直接访问数据库,那是在PHP手册中。您可以在此处查看如何直接读取数据库的示例:http ://www.php.net/manual/en/mysqli.quickstart.dual-interface.php
你不能用mysql做到这一点
MySQL 不知道 PHP 序列化是什么。你不能这样做。
您应该对 csv 文件进行 php 序列化
我假设您的意思是您使用 PHP 对其进行了序列化。MySQL不理解PHP序列化,AFAIK,所以它不能。另外,我假设的序列化数据是数组还是对象?这很可能会破坏 CSV 文件。
您最好自己从查询中提取数据,对其进行处理,然后使用 PHP 的内置 CSV 处理程序函数以您想要的方式生成 CSV。