我使用'LOAD DATA LOCAL INFILE'将csv文件导入数据库表。好奇心的完整查询是:
LOAD DATA LOCAL INFILE '".addslashes($current_file)."' REPLACE INTO TABLE $current_table FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '" . '"' . "' ESCAPED BY " . "'\\\\'" . " LINES TERMINATED BY '\n' IGNORE 1 LINES ($toVars) SET $setCols
现在,简而言之就是将csv行加载到table_A
中。我想要做的是创建一个内存表,记录每个输入table_A
的行。我将使用 MYSQL触发器实现此目的。现在我熟悉使用执行inserts
的触发器。我的问题是;如何为AFTER
命令生成LOAD DATA LOCAL INFILE
触发器?
只有在LOAD DATA LOCAL INFILE
查询完成所有操作后,触发器才会触发。它不应该在每个增量插入物或任何情况下触发。
答案 0 :(得分:2)
您是否有一张表格可以跟踪这些批量上传内容,例如是谁投放了这些内容,他们花了多长时间等等?
如果是这样,您可以将其用作哨兵并将触发器放在那里以对另一个表中新加载的数据执行批量操作。
有意义吗?