我正在尝试为调度程序创建一个事件,该事件每两分钟执行两次操作:
当前正在尝试使用以下查询
CREATE EVENT city_event ON SCHEDULE EVERY 2 MINUTE
STARTS CURRENT_TIMESTAMP
ENDS CURRENT_TIMESTAMP + INTERVAL 1 HOUR
DO
BEGIN
SELECT * FROM world_innodb.City INTO OUTFILE CONCAT (“C: \\ mysql \\ City_”, CURRENT_TIMESTAMP);
INSERT INTO test_event (event time) SELECT CURRENT_TIMESTAMP
END;
在CONCAT函数中使用CURRENT_TIMESTAMP时,类型转换存在问题。如何将CURRENT_TIMESTAMP转换为字符串,或者还有另一种方法可以写入名称为当前日期的文件?
答案 0 :(得分:0)
对于CURRENT_TIMESTAMP,可能只是您需要正确替换一些字符
select CURRENT_TIMESTAMP;
SELECT replace(replace(replace(replace(CURRENT_TIMESTAMP,'/',''),'-',''),' ','_'),':','');
或@Shadow建议的更简单的方法是date_format()
select date_format(CURRENT_TIMESTAMP,'%Y%m%d_%H%i%s')