gpt4 book ai didi

mysql - 将表重命名为 'NOW() + old_table_name'

转载 作者:可可西里 更新时间:2023-11-01 07:24:16 24 4
gpt4 key购买 nike

是否有可能以某种方式在 MYSQL rename table() 中使用 NOW() 函数或类似的东西?

我需要这个的原因是因为我们不想直接删除旧表,而是先重命名然后重命名为 old_ date-table-was-taken-ouf-of-use_ table_name 所以当我们实际上删除它我们知道该表“不可用”了多长时间

最佳答案

您可以创建一个动态 SQL 语句并执行它:

SET @tablename = 'MyTable';

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

PREPARE STMT FROM @query;
EXECUTE STMT;

curdate() 函数以yyyy-MM-dd 格式的字符串形式返回当前日期。

附言您不能从查询浏览器中执行这样的多行语句,但您可以将它们放入一个文件中(例如名为 commandfile.sql)并像这样运行它们:

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

关于mysql - 将表重命名为 'NOW() + old_table_name',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1741008/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com