You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

同一服务器多同结构数据库如何用单条MySQL命令批量执行表操作

MySQL跨库批量执行表结构更新方案

利用information_schema系统表动态生成目标库的执行语句,拼接后一次性执行,无需手动拼接库名。

可直接运行的命令模板

-- 可选:如果库数量较多先调大拼接长度上限
SET group_concat_max_len = 1024000;
-- 动态生成所有目标库的执行SQL
SET @exec_sql = (
    SELECT GROUP_CONCAT(
        'USE `', SCHEMA_NAME, '`; ',
        'DROP TABLE IF EXISTS `你的第一张表名`; ',
        'CREATE TABLE `你的第一张表名` (/* 替换为第一张表的完整建表语句 */); ',
        'DROP TABLE IF EXISTS `你的第二张表名`; ',
        'CREATE TABLE `你的第二张表名` (/* 替换为第二张表的完整建表语句 */); ',
        'DROP TABLE IF EXISTS `你的第三张表名`; ',
        'CREATE TABLE `你的第三张表名` (/* 替换为第三张表的完整建表语句 */); '
    SEPARATOR ' ')
    FROM information_schema.SCHEMATA
    -- 匹配xx_databasename格式的库名,xx为两位字母国家码
    WHERE SCHEMA_NAME REGEXP '^[a-zA-Z]{2}_databasename$'
);
-- 执行生成的SQL
PREPARE run_stmt FROM @exec_sql;
EXECUTE run_stmt;
DEALLOCATE PREPARE run_stmt;

注意事项

  • 执行前可先运行SELECT @exec_sql;打印生成的SQL,确认逻辑无误后再执行,避免误操作
  • 如果需要严格的单条命令执行,把上述所有语句用分号拼接为一行即可
  • 建表语句中如果存在单引号,需要加反斜杠转义,避免语法错误

内容的提问来源于stack exchange,提问作者Thallius

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 12:06:03