【发布时间】:2014-01-04 19:26:27
【问题描述】:
我正在使用 MySQL 基准测试。我必须创建一个表并编写一个程序来从 textfilnd 读取 10 并将它们加载到创建的表中。
我使用了查询:
use test;
DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `p_table`()
BEGIN
LOAD DATA LOCAL INFILE "D:/tablevalue.txt"
INTO TABLE new_table
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';
END $$
DELIMITER ;
但是存储过程中不允许加载数据之类的错误,然后我使用了查询。
use test;
drop procedure if exists `proctable`;
DELIMITER $$
create definer =`root`@`localhost` procedure `proctable`()
begin
do sys_exec(concat('perl LOAD_DATA_INFILE.pl test.new_table ', 'D:\tablevalue.txt'));
end $$
DELIMITER ;
但是数据没有从文件上传到表中。
如果有其他选择请告诉我
【问题讨论】:
-
一旦创建存储过程。你打电话给proc了吗?
-
是的。我打电话给程序(调用proctable()),但它说。错误代码:1305 FUNCTION test.sys_exec 不存在
-
对不起,它没有说任何错误。正在运行,但未显示任何选定的行。
标签: mysql mysql-workbench mysql-error-1064