Php 如何将包含换行符的.csv文件上载到MySQL数据库
我们正在编写一些php来将数据从Microsoft SQL数据库移动到MySQL数据库。微软的数据包含用户输入的文本,带有换行符和各种古怪的东西 我们的工作流程如下:Php 如何将包含换行符的.csv文件上载到MySQL数据库,php,mysql,database,csv,migration,Php,Mysql,Database,Csv,Migration,我们正在编写一些php来将数据从Microsoft SQL数据库移动到MySQL数据库。微软的数据包含用户输入的文本,带有换行符和各种古怪的东西 我们的工作流程如下: 从Microsoft SQL数据库中选择php数组(工作正常) 通过循环fputcsv()函数将其处理为.csv: fputcsv($delimiter=',',$enclosure='”,$escape\u char=“\\”; (当我用google sheets打开.csv文件时,它看起来不错) 使用以下代码将.csv文件上载
fputcsv($delimiter=',',$enclosure='”,$escape\u char=“\\”;
(当我用google sheets打开.csv文件时,它看起来不错)LOAD DATA LOCAL INFILE 'c:/filename.csv'
INTO TABLE tablename
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS; ```
我注意到MySQL LOAD DATA命令没有将转义字符作为参数,但我似乎找不到一种方法来赋予它。这就是问题所在吗?我们如何才能做到这一点?首先,您是否检查了csv文件的EOL?它是在“\n”还是在“\r\n”中?在Windows server上,
\r\n
需要终止Linux\n代码>工作正常。顺便问一下如何执行加载文件。
如果在concat
中封装,则需要使用\\n
@ooi18退出\n
我不确定如何检查下线,如fputcsv()不将其作为参数,当我使用任何文本编辑器打开它时,它会将新行显示为实际新行。您建议我们如何执行此操作?为了回答您的第二个问题,我们将自行运行LOAD DATA查询