Du kan oprette en dynamisk SQL-sætning og udføre den:
SET @tablename = 'MyTable';
SELECT @query := CONCAT('RENAME TABLE `', @tablename, '` TO `',
CURDATE(), @tablename, '`');
PREPARE STMT FROM @query;
EXECUTE STMT;
curdate()
funktion returnerer den aktuelle dato som streng i formatet yyyy-MM-dd
.
P.S. Du kan ikke udføre multi-line sætninger som denne fra forespørgselsbrowseren, men du kan placere dem i en fil (f.eks. kaldet commandfile.sql
) og kør dem som:
mysql -u <user> -p<password> <dbname> < commandfile.sql