我将使用MySQL,并尝试创建存储过程,该过程可获取CSV文件(包含2列 - ID和Name),删除person_table表并使用CSV内容创建它。
以下是代码:
以下是代码:
DELIMITER $$
drop procedure if exists load_persons$$
CREATE PROCEDURE load_persons(in file_name varchar(300))
BEGIN
drop table if exists person_table;
CREATE TABLE `person_table` (
`ID` varchar(30) NOT NULL,
`Name` varchar(150) DEFAULT NULL,
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
LOAD DATA LOCAL INFILE file_name INTO TABLE person_table;
END$$
DELIMITER ;
很不幸,我遇到了一个错误:'LOAD DATA is not allowed in stored procedures'
我该怎么做?
谢谢!