如何将含逗号姓名列的CSV文件导入MySQL且姓名保持单列
解决CSV含逗号字段导入MySQL时被拆分的问题
方法一:用LOAD DATA INFILE命令指定字段包围符
MySQL的LOAD DATA INFILE支持识别被双引号包裹的字段,即使内部有逗号也不会拆分。执行以下SQL(替换路径、表名):
LOAD DATA INFILE '/绝对路径/你的文件.csv' INTO TABLE 目标表名 FIELDS TERMINATED BY ',' ENCLOSED BY '"' -- 关键:指定双引号作为字段包围符 LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 如果CSV第一行是表头,加上这行跳过
方法二:用MySQL Workbench可视化导入
如果不习惯命令行,用Workbench的导入向导更直观:
- 打开Workbench并连接数据库,右键目标表 → 选择「Table Data Import Wizard」
- 选择要导入的CSV文件,点击下一步
- 在「Configure Import Settings」页面,找到「Fields enclosed by」,输入双引号
" - 确认字段和表列的映射正确,完成导入即可
方法三:预处理CSV文件(确保字段格式正确)
如果CSV里含逗号的字段没被双引号包裹,先预处理:
- 用Excel:选中Name列,设置单元格格式为「文本」,或者用公式
=CHAR(34)&A1&CHAR(34)给每个姓名加上双引号,再复制为值替换原列 - 用文本编辑器(如Notepad++):查找替换,把类似
Braund, Mr. Owen Harris替换为"Braund, Mr. Owen Harris"(注意批量替换时要精准匹配)
内容的提问来源于stack exchange,提问作者shaik azar
相关产品推荐
相关产品推荐

