【问题标题】:Keep special characters when importing into mysql from csv从csv导入mysql时保留特殊字符
【发布时间】:2014-02-10 02:51:54
【问题描述】:

我有一个包含特殊字符的 csv 文件。但是,当我将它们导入我的表时,它们不会导入。我有需要包含特殊字符的行设置为 utf8_general_ci

但是,我在 phpmyadmin 导入时丢失了特殊字符。例如,度数符号未导入。我在文本编辑器中查看了我的 csv 文件,它确实包含特殊字符。

请帮忙。

好的,我想出了如何做到这一点。请看下面我的回答。

【问题讨论】:

    标签: mysql csv import


    【解决方案1】:

    上传文件时只需要更改mysql中的字符集。 在我的情况下工作的字符集 windows-1252

    【讨论】:

      【解决方案2】:

      好的,

      对于尝试将导出的 csv 文件保留在 utf8 中同时保留特殊字符时遇到相同问题的任何人,请执行以下操作。

      在 OpenOffice Calc 中打开您的文件。当您准备好将其保存为文本 csv 文件时。导出时会询问您将其保存为什么格式。将其保存为 UTF8 并保存。它不会像 excel 那样转换您的特殊字符。

      希望对其他人有所帮助。

      【讨论】:

      • 谢谢 - 成功了!实际上是用 EmEditor 做到的。打开一个文件,然后将其保存为“UTF-8 without Signature”。
      【解决方案3】:

      Excel 通常将 CSV 输出为 UTF-16,但有一些方法可以使其以 UTF-8 输出,如 here 所述

      如果您使用的是 Windows,您还可以使用标准的记事本文本编辑器来转换文件,方法是在 另存为 对话框中选择 UTF-8 编码,如下所示:

      【讨论】:

        【解决方案4】:

        尝试将 csv 文件的字符集转换为 utf8。 以记事本++为例

        Encoding -> Convert to UTF-8 without BOM
        

        【讨论】:

        • 谢谢我下载了 Notepadd++ 在查看文件时,我看到奇怪的字符替换。然后我转换它,我仍然看到奇怪的字符。但是,在另一个文本编辑器中查看时,我看到了正确的符号。有什么想法吗?
        • 您知道文件的字符集吗?默认情况下,Notepad++ 使用 ANSI 字符集打开文件,可能是您的文件以另一个字符集编码...
        • 它应该是 utf8 但我将它转换为它仍然看到问题
        【解决方案5】:

        也许您必须检查设置为 csv 文件。我认为您的问题始于此文件。检查此项并确保两个编码相同(csv 和 sql 表)

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-06-18
        • 2013-02-17
        • 1970-01-01
        • 2011-05-08
        • 1970-01-01
        相关资源
        最近更新 更多