U kunt een dynamisch SQL-statement maken en dat uitvoeren:
SET @tablename = 'MyTable';
SELECT @query := CONCAT('RENAME TABLE `', @tablename, '` TO `',
CURDATE(), @tablename, '`');
PREPARE STMT FROM @query;
EXECUTE STMT;
De curdate()
functie retourneert de huidige datum als tekenreeks in het formaat yyyy-MM-dd
.
PS U kunt dergelijke instructies met meerdere regels niet uitvoeren vanuit de Query-browser, maar u kunt ze wel in een bestand plaatsen (bijvoorbeeld met de naam commandfile.sql
) en voer ze uit als:
mysql -u <user> -p<password> <dbname> < commandfile.sql