资讯专栏INFORMATION COLUMN

postgresql 笔记

rockswang / 1269人阅读

摘要:视图标识在当前数据库中被某个约束使用的所有表这与视图不同,它标识哪些表约束定义在哪些表上。对于一个唯一或主键约束,这个视图仅标识该约束属于的表。检查约束和非空约束不被包括在这个视图中。批量删除外键成功失败参见信息模式

信息模式 table_constraints

视图table_constraints包含属于特定表的所有约束,这些表要满足的条件是:当前用户拥有表或者是当前用户在表上具有某种除SELECT之外的特权。

SELECT * FROM information_schema.table_constraints;
constraint_table_usage

视图constraint_table_usage标识在当前数据库中被某个约束使用的所有表(这与视图table_constraints不同,它标识哪些表约束定义在哪些表上)。对于一个外键约束,这个视图标识该外键引用的表。对于一个唯一或主键约束,这个视图仅标识该约束属于的表。检查约束和非空约束不被包括在这个视图中。

SELECT * FROM information_schema.constraint_table_usage;
批量删除外键
# sqlalchemy session
query = session.execute(
    "SELECT * FROM information_schema.table_constraints WHERE constraint_type =:param;",
    {"param": "FOREIGN KEY"})
results = query.fetchall()

for r in results:
    table_name = r["table_name"]
    constraint_name = r["constraint_name"]
    try:
        session.execute(f"ALTER TABLE {table_name} DROP CONSTRAINT {constraint_name};")
        print("成功:", table_name, constraint_name)
    except:
        print("失败:", table_name, constraint_name)

参见:信息模式

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/39007.html

相关文章

  • PostgreSQL 5.7. Schemas 笔记

    摘要:笔记一个数据库包含多个里包含的下一层逻辑结构就是也包括各种不同里的名可以相同在创建一个新的时,会自动为其创建一个名为的。如果未设置变量,那么会将你创建的所有对象默认放入中。执行就能看到其名称。 PostgreSQL 5.7. Schemas 笔记 https://www.postgresql.org/docs/9.4/ddl-schemas.html A database conta...

    617035918 评论0 收藏0
  • postgresql学习笔记1---安装和psql基本操作

    本文是PostgreSQL修炼之道这本书的学习笔记,记录下疑惑或不解的地方. 这里也列一些资源: 官方文档:http://www.postgresql.org/files/documentation/pdf/9.4/postgresql-9.4-A... 中文文档:http://www.php100.com/manual/PostgreSQL8/ 阮一峰的博客:http://www.ruanyif...

    GeekQiaQia 评论0 收藏0
  • PostgreSQL笔记

    摘要:事务原子性以下转账给要么都成功要么失败标识符如果打了双引号整个引号内视为标识符都会被理解为小写比如标识符其实是被解释为同一个但是因此建议是总是打引号中的常量用单引号引用不支持的转义即不能出现字符不代表不能使用四位十六进制六位十六进制如 database cluster: a collection of databases managed by a single PostgreSQL s...

    xcc3641 评论0 收藏0
  • PostgreSQL9.6:Parallel sequential scans 初体验

    摘要:一关于参数这个参数配置决定了每个并行操作允许的最大后台进程数,这个值的设置受后台进程数参数限制。查看并行顺序扫描进程备注图中可看到出现了四个进程。三测试测试之前先把的数据库关了,在确保相等情况下进行测试。 Oracle 支持强大的并行功能,创建索引,表分析,数据加载时可以开启并行,这项功能让很多数据库产品垂涎, 作为开源数据库 PostgreSQL 在并行方面也在努力尝试,很早之前 P...

    wangdai 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<