【问题标题】:Inserting data from local infile into MySQL. Changed local_infile but still getting error将本地 infile 中的数据插入 MySQL。更改了 local_infile 但仍然出现错误
【发布时间】:2020-02-05 13:35:34
【问题描述】:

我正在尝试将数据从 CSV 文件插入到 MySQL 表中。这是我正在处理的查询

use classicmodels;
LOAD DATA LOCAL INFILE 'C:\\code\\datasources\\customer.csv'  INTO TABLE customers
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
IGNORE 1 LINES
(customerNumber, customerName, contactLastName, contactFirstName, phone, addressLine1, addressLine2, city, state, postalCode, country, salesRepEmployeeNumber, creditLimit, customerLocation)

当我执行它时,我得到一个错误:

错误代码:3948。加载本地数据已禁用;这必须在客户端和服务器端都启用。

根据我的研究,修复看起来我只需要执行这个命令

SET @@GLOBAL.`local_infile` := 1;

我这样做并验证了 local_infile0 更改为 1,但是我仍然收到相同的错误消息。有没有人解决这个问题?

我使用的是 MySQL 8.0.19。

【问题讨论】:

标签: mysql sql csv


【解决方案1】:

错误消息告诉您确保 1.

  1. 在服务器端启用加载文件
  2. 在客户端启用加载文件

您可以通过以下方式启用从文件服务器端加载:

SET @@GLOBAL.local_infile:= 1;

但您还必须在客户端中启用它。为此,请使用选项 --local-infile=1

调用客户端

见:https://dev.mysql.com/doc/refman/8.0/en/load-data-local.html

【讨论】:

    猜你喜欢
    • 2019-08-15
    • 1970-01-01
    • 2015-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多