问题引入
之前在做数据库设计时,经常会忽略schema模式,直接在数据库下的public模式下建立各类数据表。如果数据表命名不够规范,后期寻找某张表时就会比较麻烦。通过 所幸,PostgreSQL 的模式schema管理,可以对这个问题进行优化。
PGSQL-模式
模式schema
模式(SCHEMA)可以看着是一个表的集合, 一个模式可以包含视图、索引、数据类型、函数和操作符等。
其实PG数据库提供的默认数据库模板就是按照模式schema对具备不同功能的数据表进行区分的,
可以看到:相同的对象名称可以被用于不同的模式中而不会出现冲突,例如 public和 topology都可以包含名为 mytable