近期由于程序的异常,导致数据库中创建了大量的表(约4000个),纠结的是表中的数据还都是有用的. 需要合并到一个表中,首先想到的就是使用存储过程来处理,但由于表名都是动态生成的,需要解决在存储过程中处理以表名作为参数的问题. 1.用set或者declare语句将表名定义为变量,在sql中的表名位置使用变量,经验证行不通,数据库会把变量名当作表名. 2.要进行的操作直接用concat拼接出来,然后直接执行这个sql.可如何在存储过程中执行拼接的sql,经查找可使用PREPARE 来完成. 下面是示…