查看Postgresql 中所有库中的表
·
在一个数据库下,是看不到另一个库里面的表的,虽然是一个schema下的表。如果不想切换数据分别查询的话,可以用下面的语句进行查询。
#!/bin/bash
# 获取所有数据库列表
DATABASES=$(psql -U postgres -c "SELECT datname FROM pg_database WHERE datname NOT LIKE 'template%'" -t)
# 遍历每个数据库
for db in $DATABASES; do
echo "正在处理数据库: $db"
# 查询该数据库中的所有表
TABLES=$(psql -U postgres -d "$db" -c "SELECT relname FROM pg_class WHERE relkind='r' AND relname NOT LIKE 'pg_%' AND relname NOT LIKE 'sql_%'" -t)
# 输出表名
echo "数据库 $db 中的表:"
for table in $TABLES; do
echo " - $table"
done
echo ""
done
更多推荐

所有评论(0)