All pastes #258722 Raw Edit

Stuff

public text v1 · immutable
#258722 ·published 2006-11-26 20:17 UTC
rendered paste body
DROP FUNCTION IF EXISTS logrotate_new_table_name;

DELIMITER | 

CREATE FUNCTION logrotate_new_table_name()
RETURNS VARCHAR(20)
BEGIN
  DECLARE suffix VARCHAR(20);
  SELECT CONCAT('logs', DATE_FORMAT( NOW(), '%Y%m%d%H%i%s' )) INTO suffix;
  return suffix;
END|

DELIMITER ;

DROP PROCEDURE IF EXISTS logrotate;

DELIMITER |

CREATE PROCEDURE logrotate()
BEGIN
  DECLARE suffix VARCHAR(20);
  SET suffix = logrotate_new_table_name();

  DROP TABLE IF EXISTS templogs;
  CREATE TABLE templogs LIKE logs;
  FLUSH TABLES;

  RENAME TABLE logs to suffix, templogs TO logs;
  FLUSH TABLES;
END|

DELIMITER ;