mysql - 如何在 MySQL 中重命名表

标签 mysql sql

我正在编写一个 SQL 脚本来重命名 MySQL 数据库中的许多表。我想将前缀更改为新值。我正在使用的代码如下所示。可以在“重命名表”命令中使用变量吗?

谢谢。

set @oldTable = 'j5xqy_banner_clients';
set @newTable = 'p5gsk_banner_clients';

rename table @oldTable to @newTable

最佳答案

你可以这样做,但你需要使用准备好的语句:

SET @oldTable = 'a_b';
SET @newtable = 'b_b';
SET @sql = CONCAT('RENAME TABLE ', @oldTable, ' TO ', @newtable);

PREPARE stmt1 FROM @sql;
EXECUTE stmt1;

关于mysql - 如何在 MySQL 中重命名表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25857582/

相关文章:

java - Hibernate MySQL 查询错误“Join On 中的未知列”

Mysql只提取字母字符

sql - 使用 JOIN sql 从 2 个不同的表中获取数据。代码点火器

sql - Oracle - Regexp_Like 中的子查询

mysql - 如何使用索引优化 MySQL 查询

php - 快速创建动态可编程 php-mysql 博客的推荐方法?

MySQL - SQLite 如何改进这个非常简单的查询?

存储过程中mysql版本错误

sql - 如何根据 SQL 中以前的记录更新行?

mysql 表中多个外键指向同一个主键