如何使用LOAD DATA INFILE将数据导入特殊字符列名称

时间:2018-10-09 08:12:25

标签: mysql mysql-workbench load-data-infile csv-import

在以下示例我试图将CSV数据导入MySQL表的情况下,

LOAD DATA INFILE 'file1.csv'
INTO TABLE loc_chg_log
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
IGNORE 1 ROWS
(@col1,@col2,@col3,@col4,@col5) set failename=@col1,path=@col2,==blank=@col3,!=blank=@col4,++code=@col5;

MySQL表查询就是这样,

CREATE TABLE `log`.`loc_chg_log` (
  `id` INT NOT NULL AUTO_INCREMENT,
  `filename` VARCHAR(225) NULL,
  `path` VARCHAR(225) NULL,
  `==blank` VARCHAR(45) NULL,
  `!=blank` VARCHAR(125) NULL,
  `++code` VARCHAR(45) NULL
  PRIMARY KEY (`id`));

这些方法都不起作用,因为列名称包含特殊字符,即时错误“字段列表中的“未知列” == blank””

1. '==blank'=@col5
2. ("`!=blank`=@col7")
3. [==blank=@col5]

1 个答案:

答案 0 :(得分:0)

通过'==blank'=@col5将反引号放在列名中,我能够在MySQL数据库中写数据。谢谢