【PostgreSQL】系列之 一 schema详解
在PostgreSQL中,schema是一种命名空间,用于组织数据库中的不同对象,如表、视图、函数等。每个数据库实例都有一个默认的schema,通常是public
。你可以创建自定义的schema来分隔不同的用户或不同的数据模型。
下面是一些schema相关的操作:
- 创建schema:
CREATE SCHEMA myschema;
- 在创建表时指定schema:
CREATE TABLE myschema.mytable (
id serial PRIMARY KEY,
name varchar(100) NOT NULL
);
- 切换当前schema:
SET search_path TO myschema;
- 在指定schema中创建对象:
CREATE TABLE myschema.mytable (
id serial PRIMARY KEY,
name varchar(100) NOT NULL
);
CREATE VIEW myschema.myview AS
SELECT id, name FROM mytable;
- 列出所有schema:
SELECT nspname FROM pg_catalog.pg_namespace;
- 列出特定schema中的所有表:
SELECT tablename FROM pg_catalog.pg_tables WHERE schemaname = 'myschema';
- 删除schema及其包含的所有对象:
DROP SCHEMA myschema CASCADE;
请注意,操作schema需要相应的权限。
评论已关闭