我创建了这3个代码文件来下载CSV并将其导入MySQL数据库。最终结果查询:
LOAD DATA INFILE 'C:/inetpub/wwwroot/POS/tmp/test.csv' INTO TABLE `wavepricelist` FIELDS TERMINATED BY '|' OPTIONALLY ENCLOSED BY '' ESCAPED BY '' IGNORE 1 LINES (`productID`,`brand`,`productName`,`priceSingle`,`inStock`,`EAN`,`vendorID`,`category`,`imageURL`,`weight`)
我有一个单独的PHP服务器和MySQL服务器。如果我从我的MySQL控制台运行此查询,它运行没有问题。我还确保test.csv位于mysql的本地C驱动器上,并具有读取它所需的所有权限。
我无法弄清楚为什么这个查询不会执行。该文件不返回任何错误(全部打开)。表中没有数据。
答案 0 :(得分:1)
我真的很抱歉你们花时间!我刚修好了。
再次阅读:http://dev.mysql.com/doc/refman/5.1/en/load-data.html后,我的脑海中突然出现了尝试运行脚本的用户可能没有“文件”全局权限。
我改变了,现在它运行得很好。
再次感谢您的提示和支持。
答案 1 :(得分:0)
服务器以不同的方式设置。玩LOAD选项是我的建议。
http://dev.mysql.com/doc/refman/5.1/en/load-data.html
尝试使用LOAD DATA LOCAL INFILE
答案 2 :(得分:0)
将MySQL客户端放在PHP服务器上,并确保您能够对数据库进行身份验证。
如果不是
select * from db
并确保您的PHP服务器具有连接MySQL数据库的权限。如果没有,或者你还没有......
update db set Host='202.54.10.20' where Db='yourdb';
使用您的PHP服务器IP地址替换IP地址,使用您的数据库名称替换数据库。