schema模式的选用

Posted on 2012-11-21 15:29  JasmineLiu  阅读(569)  评论(0编辑  收藏  举报

    我们需要模式的原因有好多:允许多个用户使用一个数据库而不会干扰其它用户。把数据库对象组织成逻辑组,让它们更便于管理。 第三方的应用可以放在不同的模式中,这样它们就不会和其它对象的名字冲突。

   模式类似于操作系统层次的目录,只不过模式不能嵌套。

   比如:

数据库创建后会自动生成一个模式public,用来存放数据库对象。

这个public模式虽然可以随便使用,单最好不要删除。

所以我们要创建系列的表或其他数据库对象,最好创建一个特定的模式(推荐:与用户名同名)。

默认情况下,模式搜索路径为:

highgo=# show search_path;
search_path
----------------
"$user",public
(1 行记录)

以上默认的模式也是与用户名同名的模式。

highgo=# set search_path to myschema;
SET
highgo=# show search_path;
search_path
-------------
myschema
(1 行记录)

 

highgo=# create table myschema.mytable();
CREATE TABLE

highgo=# \d

关联列表
架构模式 | 名称 | 型别 | 拥有者
---------------------+---------+--------+--------
hgdb_oracle_catalog | dual | 视观表 | highgo
hgdb_oracle_catalog | tab | 视观表 | highgo
myschema              | mytable | 资料表 | highgo
(3 行记录)

Copyright © 2024 JasmineLiu
Powered by .NET 9.0 on Kubernetes