SQL加载数据并发infile

时间:2012-07-25 17:43:14

标签: mysql heidisql

我正在尝试运行此查询

LOAD DATA CONCURRENT INFILE 'C:\\Data-API.csv' INTO TABLE pbp_person
FIELDS TERMINATED BY '\t' ENCLOSED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES
(email, first_name, last_name, title, company_name, address, city, state, zip, country, phone, vertical);

但我收到错误说......

SQL Error(29) File 'C:\Data-API.csv' not found (Errcode:2)

该文件位于正确的位置;发生了什么事?

1 个答案:

答案 0 :(得分:1)

服务器中的文件是?因为您尚未指定LOCAL,所以必须在服务器主机上指定该文件。

如果是在客户端,请使用:

LOAD DATA CONCURRENT *LOCAL* INFILE 'C:\\Data-API.csv' INTO TABLE pbp_person
FIELDS TERMINATED BY '\t' ENCLOSED BY '"' LINES TERMINATED BY '\r\n' IGNORE 1 LINES
(email, first_name, last_name, title, company_name, address, city, state, zip, country, phone, vertical);

参考this

  

如果未指定LOCAL,则该文件必须位于服务器主机上,并由服务器直接读取。服务器使用以下规则来查找文件:

     
      
  • 如果文件名是绝对路径名,则服务器将其用作给定的。

  •   
  • 如果文件名是具有一个或多个主要组件的相对路径名,则服务器将搜索相对于该文件的文件   服务器的数据目录。

  •   
  • 如果没有给出没有前导组件的文件名,服务器将在默认的数据库目录中查找该文件
      数据库中。

  •