postgreSQL 中如何查看当前数据库下的所有模式(Schema)

博客介绍了在PostgreSQL中使用命令“SELECT * FROM information_schema.schemata”进行查询的内容,涉及数据库查询操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用命令:SELECT * FROM information_schema.schemata

### PostgreSQL数据库模式的区别 在 PostgreSQL 中,数据库模式schema)代表不同层次上的逻辑结构。 #### 数据库 - **定义**:数据库是一个物理存储单元,在操作系统层面表现为文件目录。每个数据库都是独立的数据集合体[^2]。 #### 模式 - **定义**:模式位于单个数据库内部,作为其中的对象容器,如表、索引、视图等。通过创建不同的模式来实现对象分类管理以及权限控制等功能。 #### 主要区别 | 特性 | 数据库 | 模式 | |------------|----------------------------------|-------------------------------| | 存储位置 | 文件系统的单独目录 | 同一数据库内的命名空间 | | 隔离程度 | 完全隔离 | 可在同一数据库中共存 | | 创建数量 | 单台服务器上可有多个 | 单个数据库中可以存在多个 | ### 使用方法 #### 创建新数据库 ```sql CREATE DATABASE mydatabase; ``` 这将在系统中建立一个新的数据库实体 `mydatabase`。 #### 切换当前会话使用的数据库 ```bash \c mydatabase ``` 此命令适用于 psql 工具环境下的交互操作[^1]。 #### 查看现有模式列表 ```sql SELECT schema_name FROM information_schema.schemata; ``` 默认情况下,PostgreSQL 提供了一个名为 `public` 的公共模式,任何用户都可以在此模式下创建对象除非被管理员禁用了该功能。 #### 创建新模式 ```sql CREATE SCHEMA myschema AUTHORIZATION username; ``` 上述 SQL 语句将创建一个叫做 `myschema` 的模式,并指定其拥有者为特定用户名 `username`。 #### 设置搜索路径以便访问特定模式中的对象 ```sql SET search_path TO myschema, public; ``` 这样做的好处是可以简化查询语句编写过程,无需每次都指明完整的对象限定名称。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值