Mysql
 sql >> Base de données >  >> RDS >> Mysql

renommer la table en 'NOW() + old_table_name'

Vous pouvez créer une instruction SQL dynamique et l'exécuter :

SET @tablename = 'MyTable';

SELECT @query := CONCAT('RENAME TABLE `', @tablename, '` TO `', 
    CURDATE(), @tablename, '`');

PREPARE STMT FROM @query;
EXECUTE STMT;

Le curdate() La fonction renvoie la date actuelle sous forme de chaîne au format yyyy-MM-dd .

PS Vous ne pouvez pas exécuter d'instructions multilignes comme celle-ci à partir du navigateur de requêtes, mais vous pouvez les placer dans un fichier (par exemple appelé commandfile.sql ) et exécutez-les comme :

mysql -u <user> -p<password> <dbname> < commandfile.sql