我试图在MySQL上将一个大的.csv文件上传到数据库(不在服务器上,只在我的本地计算机上供我使用)。我一直在使用错误代码:1290。MySQL服务器正在运行--secure-file-priv选项,因此无法执行此语句错误。
我将.csv文件放入指定的' safe'在' my'中指定的文件夹(C:/ ProgramData / MySQL / MySQL Server 5.7 / Uploads)文件,但它一直给我同样的错误。我见过的每个解决方案一直在使用该文件夹目的地,因为没有人可以帮助我绕过或关闭secure-file-priv选项吗?
以下是我想要的代码:
LOAD DATA INFILE 'C:\ProgramData\MySQL\MySQL Server 5.7\Uploads\my-file.csv'
INTO TABLE my-table
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;
感谢您的帮助
答案 0 :(得分:2)
来自MySQL documentation的LOAD DATA INFILE:
文件名必须以文字字符串形式给出。在Windows上,将路径名中的反斜杠指定为正斜杠或加倍反斜杠。 character_set_filesystem系统变量控制文件名的解释。
LOAD DATA INFILE "C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/my-file.csv"
INTO TABLE my-table
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 ROWS;
答案 1 :(得分:1)
我有同样的问题。使用正斜杠而不是反斜杠(即使在Windows机器上)也为我修复了它。