1条回答
默认
最新
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏
匿名用户pg中如何查看某个库中,哪些表属于unlog 的?
在PostgreSQL中,如果你想查看某个库中哪些表属于unlogged(非日志记录)的,你可以查询系统目录表pg_class结合pg_namespace和pg_attribute。pg_class中的relkind字段表示关系的类型(例如表、索引等),而relpersistence字段表示关系的持久性(例如普通、临时、unlogged)。
以下是一个查询,用于列出指定数据库中所有unlogged的表:
sql 复制代码
SELECT
nspname AS schema_name,
relname AS table_name
FROM
pg_class c
JOIN
pg_namespace n ON n.oid = c.relnamespace
WHERE
relkind = 'r' AND -- 关系类型为表
relpersistence = 'u' AND -- 关系为非日志记录的
nspname NOT IN ('pg_catalog', 'information_schema'); -- 排除系统模式
你可以将这个查询保存为一个视图或在需要时运行它。如果你想针对特定的数据库运行此查询,确保你已经连接到该数据库。
注意:relpersistence字段在较新的PostgreSQL版本中可用。如果你使用的是较旧的版本,可能需要查找其他方法来识别unlogged的表,例如通过查看表的创建语句。
评论
有用 2
墨值悬赏