OushuDB 创建和管理模式(下)

简介: OushuDB 创建和管理模式(下)

image.png


1、使用方法


模式可以用多种方式组织数据。下面是一些建议使用的模式,它们也很容易在缺省配置中得到支持:

● 如果没有创建任何模式,那么所有用户都默认访问 public 模式。这样就模拟了没有模式的时候的情景。 这种设置建议主要用在只有一个用户或者数据库里只有几个合作用户的情形。 这样的设置也允许我们平滑地从无模式的环境过渡。

● 你可以为每个用户创建一个模式,名字和用户相同。要记得缺省的搜索路径从$user开始, 它会解析为用户名。因此,如果每个用户都有一个独立的模式,那么他们缺省时访问他们自己的模式。

如果你使用了这样的设置,那么你可能还想撤销对 public 模式的访问(或者删除它), 这样,用户就真的限制于他们自己的模式了。

● 要安装共享的应用(被所有人使用的表、第三方提供的额外函数等等), 我们可以把它们放到独立的模式中。只要记得给需要访问它们的用户赋予合适的权限就可以了。 然后用户就可以通过用一个模式名修饰来使用这些额外的对象,或者他们可以把额外的模式放到他们的搜索路径中。


2、移植性


在 SQL 标准里,在同一个模式里的对象被不同的用户所有的概念是不存在的。而且, 有些实现不允许你创建和它们的所有者不同名的模式。实际上, 模式的概念和用户在那些只实现了标准中规定的基本模式支持的数据库系统里几乎是一样的。 因此,许多用户考虑对名字加以修饰,使它们真正由username.tablename 组成。如果你为每个用户都创建了一个模式,这实际上就是OushuDB的行为。

同样,在 SQL 标准里也没有public模式的概念。为了最大限度地遵循标准, 你不应该使用(可能甚至是应该删除)public模式。

当然,有些数据库系统可能根本没有模式,或者是通过允许跨数据库访问来提供模式的功能。 如果你需要在这些系统上干活,那么为了最大限度的移植性,应该根本不使用模式。

目录
相关文章
|
11月前
|
SQL 运维 关系型数据库
NineData:为大型房产集团数据库统一纳管,推动业务高效运行
该企业是中国领先的优质房产品开发及生活综合服务供应商。在 2022 年取得了亮眼的业绩表现,销售额市场占有率跻身全国前五。业务涵盖房产开发、房产代建、城市更新、科技装修等多个领域。2023 年,该企业和玖章算术(浙江)科技有限公司达成合作,通过玖章算术的 "NineData 数据库管理平台" 管理集团旗下所有的数据库。
466 1
|
数据采集 数据管理 数据挖掘
「主数据架构」14个主数据管理误区
「主数据架构」14个主数据管理误区
|
机器学习/深度学习 数据采集 数据可视化
「主数据架构」介绍下一代主数据管理(MDM)
「主数据架构」介绍下一代主数据管理(MDM)
|
SQL 数据库
OushuDB 用户指南书籍定义创建和管理模式之创建模式
OushuDB 用户指南书籍定义创建和管理模式之创建模式
52 0
|
数据库
OushuDB 产品介绍基本的模式
OushuDB 产品介绍基本的模式
84 0
|
存储 Java 数据库连接
OushuDB 产品介绍
OushuDB 产品介绍
93 0
|
SQL 存储 分布式计算
OushuDB 的主要功能
OushuDB 的主要功能
80 0
|
SQL 数据库
OushuDB 创建和管理模式(下)
模式可以用多种方式组织数据。下面是一些建议使用的模式,它们也很容易在缺省配置中得到支持: ● 如果没有创建任何模式,那么所有用户都默认访问 public 模式。这样就模拟了没有模式的时候的情景。 这种设置建议主要用在只有一个用户或者数据库里只有几个合作用户的情形。 这样的设置也允许我们平滑地从无模式的环境过渡。 ● 你可以为每个用户创建一个模式,名字和用户相同。要记得缺省的搜索路径从$user开始, 它会解析为用户名。因此,如果每个用户都有一个独立的模式,那么他们缺省时访问他们自己的模式。
97 0
OushuDB 创建和管理模式(下)
|
SQL 数据库
OushuDB 创建和管理模式(上)
一个OushuDB数据库集群包含一个或多个已命名数据库。 用户和用户组在整个集群范围内是共享的,但是其它数据并不共享。 任何与服务器连接的客户都只能访问那个在连接请求里声明的数据库。
114 0
OushuDB 创建和管理模式(上)
|
数据库
OushuDB 创建和管理模式(中)
全称的名字写起来非常费劲,并且我们最好不要在应用里直接写上特定的模式名。因此, 表通常都是用 位修饰 的名字引用的,这样的名字里只有表名字。 系统通过查找一个 搜索路径 来判断一个表究竟属于哪个模式, 这个路径是一个需要查找的模式名列表。在搜索路径里找到的第一个表将被使用。 如果在搜索路径中没有找到表,那么就报告一个错误(即使在数据库里的其它模式中存在此表也如此)。
108 0
OushuDB 创建和管理模式(中)