我想复制许多名称相似但前缀不同的表。我希望带有 wp_ 前缀的表格进入其带有 shop_ 前缀的相应表格。
换句话说,我想做这样的事情:
insert into shop_wpsc_*
select * from wp_wpsc_*
您会怎么做?
最佳答案
SQL 不允许使用通配符表名 - 唯一的方法是在使用动态 SQL 时循环遍历表列表(通过 ANSI INFORMATION_SCHEMA/INFORMATION_SCHEMAS)。
每个数据库供应商的动态 SQL 都不同...
更新
MySQL?你为什么不一开始就说...
MySQL 的动态 SQL 称为“准备语句”- this is my fav link因为它除了documentation . SO 上有很多关于对 MySQL 数据库中的所有表进行操作的问题 - 只需调整 WHERE 子句即可获取所需的表名。
您需要在 MySQL stored procedure 中执行此操作...
关于sql - 在 MySQL 中复制许多表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3338814/