我正在使用mysqlimport将文本文件中的行轻松地添加到表中:
mysqlimport -u root -p --local mytest employee.txt
我可以从存储过程执行此操作吗?到目前为止所有尝试都失败了我担心这可能只能通过命令行使用?目标是让作业调用SP,此SP从文本文件(制表符分隔)中提取行,然后SP将每行与现有表进行比较,如果发现它将更新,否则插入。
感谢你
答案 0 :(得分:1)
存储过程在服务器上执行,无法访问远程文件系统。
与此类似的是LOAD DATA INFILE
:
LOAD DATA INFILE 'employee.txt' INTO TABLE mytest
这需要employee.txt
驻留在您的服务器上。 --local
选项要求mysqlimport
客户端桥接该数据。
答案 1 :(得分:0)
加载数据INFILE不适用于存储过程。你想使用perl脚本或者做这个