Oracle_SID是否与Oracle上的登录名相同?

haw*_*eye 3 oracle schema

我来自SQL Server / Sybase背景。

我习惯于使用以下格式来引用特定模式中的表:

SCHEMA_NAME..TABLE_NAME. 
Run Code Online (Sandbox Code Playgroud)

我今天问一位同事关于在Oracle数据库上创建新的“模式”。他的回答是:

在Oracle上,您将获得已登录用户的架构名称。架构名称与登录用户名相同。

这对我来说听起来不太正确。我猜这太简单了,或者有些概念混淆了。

我的假设是Oracle_SID与我在Sybase世界中的“模式”概念相同。

我的问题是:Oracle_SID是否与Oracle的登录名相同?

a_h*_*ame 5

你的同事是对的。在Oracle中,模式和用户几乎相同。创建用户时,将自动创建具有相同名称的架构。

引用手册:

模式是数据或模式对象的逻辑结构的集合。模式归数据库用户所有,并且与该用户同名。每个用户拥有一个架构

Sybase或SQL Server中没有“数据库”的概念。

SID是实例的标识符,完全不同。

Oracle中的标准表名包含两个元素:模式(=所有者)和对象名:schema_name.table_name并且它们由单个分隔.

我的问题是:Oracle_SID是否与Oracle的登录名相同?

答案是:不,绝对不是