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

标签 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`));

这些方法都不起作用,因为列名包含特殊字符,我收到错误“字段列表中的未知列'==空白'”

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

最佳答案

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

关于mysql - 如何使用 LOAD DATA INFILE 将数据导入特殊字符列名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52716265/

相关文章:

php - 加载数据infile问题

mysql - 将 Mysql CASE select 语句结果存储在一个变量中

mysql - mysql 如何执行或解释子查询?

MySql 授予错误 : 'Select' is not valid at this position

java - 无法使用 SpringMVC 通过 Hibernate 将 ItemDetail 列表 ie.List<ItemDetail> (OBJECT) 插入 MySQL 数据库字段

MySQL LOAD DATA LOCAL INFILE 避免重复

mysql - SQL 强制左连接打印不匹配项

php - 如何直接通过 PHP 将 Base64 字符串导出到服务器端的文件,而不将其保存在 Web 服务器中?

mysql - 尝试在 Node js 中运行简单程序时出错

mysql - 从命令行 Mysql 创建表时出现问题