我有一组不同的 SQL 文件,其中包含法语/西类牙语和其他语言字符。在 Windows 中,我们能够看到特定的语言字符,当它转移到 Linux 时,我看到奇怪的字符。
我知道 Windows 使用不同的字符集,如 WINDOWS-1252、WINDOWS-1258 和 iso-8859-1。
我们如何在Linux中更改类似于Windows的字符集,以便在Linux触发查询时不会在DB中插入奇怪的字符?
提前致谢。
最佳答案
如果我对问题的理解是正确的,那么您可以使用包括非 ASCII 字符的各种 Windows 编码生成 SQL 脚本。您想在 Linux 上执行这些脚本。
我认为您希望将文件无损地转换为您的 linux SQL 解析器可以处理的内容,可能是 unicode UTF-8。这种转换可以用 iconv 完成(命令行实用程序,我相信也有库)。
不过,一个挑战是您是否知道每个文件的原始编码是什么,因为这不一定会被自动检测到……如果您能让脚本文件的作者为脚本提供指定的编码,可能会更好。
关于sql - WINDOWS转Linux字符集问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42006709/