You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Postgres 12中,能否从表定义或信息模式获取CREATE AS SELECT建表语句?

在PostgreSQL 12中无法直接获取CTAS建表的完整SELECT语句
  • 用CREATE TABLE ... AS SELECT(简称CTAS)创建表t1后,PostgreSQL不会保存原始的SELECT查询语句,只会存储最终生成的表结构信息(列名、数据类型、约束等)。
  • 不管是查看表的定义,还是查询information_schema或pg_catalog下的系统表(比如pg_class、pg_attribute),都只能获取表的元数据(比如列属性、所有者、表空间),找不到创建时用到的关联查询、过滤条件等内容。
  • 如果需要留存这类建表语句,建议提前通过以下方式处理:
    • 手动保存执行前的脚本文件
    • 开启PostgreSQL的日志功能,记录所有执行的DDL语句
    • 用版本控制系统管理数据库脚本

内容的提问来源于stack exchange,提问作者wing_man

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 04:06:13