一个schema是表的命名集合。schema还可以包含视图、索引、序列、数据类型、运算符和函数。模式类似于操作系统级别的目录,只是schema不能嵌套。
PostgreSQL 语句CREATE SCHEMA 创建一个schema。
句法
CREATE SCHEMA 的基本语法如下
CREATE SCHEMA name;
其中name是架构的名称。
在schema中创建表的语法
在模式中创建表的基本语法如下
CREATE TABLE myschema.pgccc_mytable ( ... );
例子
让我们看一个创建schema的例子。连接到数据库LNXDB并创建一个myschema,如下所示
LNXDB=# create schema myschema; CREATE SCHEMA
消息“CREATE SCHEMA”表示schema已成功创建。
现在,让我们在上述schema中创建一个表,如下所示
LNXDB=# create table myschema.pgccc_company( ID INT NOT NULL, NAME VARCHAR (20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25), SALARY DECIMAL (18, 2), PRIMARY KEY (ID));
这将创建一个空表。您可以验证使用下面给出的命令创建的表
LNXDB=# select * from myschema.company;
这将产生以下结果
id | name | age | address | salary ‐‐‐‐+‐‐‐‐‐‐+‐‐‐‐‐+‐‐‐‐‐‐‐‐‐+‐‐‐‐‐‐‐‐ (0 rows)
删除schema的语法
要删除空的schema(其中的所有对象都已删除),请使用命令
DROP SCHEMA myschema;
要删除包含所有包含对象的schema,请使用命令
DROP SCHEMA myschema CASCADE;
使用schema的优点
它允许许多用户使用一个数据库而不会相互干扰。
它将数据库对象组织成逻辑组,使它们更易于管理。
第三方应用程序可以放在单独的模式中,这样它们就不会与其他对象的名称发生冲突。