如何动态切换SQL语句中的表名?

数据库中的表
1、如图所示,我有以上这些表,任务是从该库中读出所有表里面的记录。
2、Select * from Bd_defdoc(表名) where pk_Bddefdoc='10012346545BZj'
3、如果这样去写得重复写很多个SQL语句,有没有一种方法可以动态切换表名的?

可以用 JDBC 获取连接的数据库的 MetaData 数据,得到所有的表名称,然后将表名称作为参数,动态拼接 SQL 语句。

这是需要按照条件导出吗? 可以用脚本:

for TEST in  tablenames
do
mysql -h"主机地址"  -P"3306"  -u"用户名" -p"密码" -D "数据库名称" -e "SELECT  *  FROM  $TEST;" > xx.txt
done