Oracle中的架构,用户和功能ID

Oracle中的架构,用户和功能ID,第1张

概述我在oracle中对架构,用户功能id感到很困惑.让我考虑两种不同的情况 案例I: 让我们考虑SCOTT@ORCL.如果我们认为SCOTT是用户.在创建用户时,它将创建一个模式.纠正我如果我错了.在这种情况下,当我们创建SCOTT用户时,就创建了SCOTT模式.假设我们创建另一个模式说X.这可能是SCOTT用户拥有X架构吗? 案例二: 让我们考虑SCOTT@ORCL.如果我们认为SCOTT是独立 我在oracle中对架构,用户和功能ID感到很困惑.让我考虑两种不同的情况

案例I:

让我们考虑SCott@ORCL.如果我们认为SCott是用户.在创建用户时,它将创建一个模式.纠正我如果我错了.在这种情况下,当我们创建SCott用户时,就创建了SCott模式.假设我们创建另一个模式说X.这可能是SCott用户拥有X架构吗?

案例二:

让我们考虑SCott@ORCL.如果我们认为SCott是独立的模式i-e,它仅由schema命令创建.如果是这样,那么对于任何将拥有它的用户来说,什么是模式的使用.

我听说oracle函数ID是一个连接多个用户/模式(我不知道我是否可以将schema / user放在这里)的数据库. b / w oracle功能ID与用户/架构有区别吗?

解决方法 许多人发现这个话题令人困惑,因为我们倾向于互相围绕USER和SCHEMA,当它们实际上是相互关联的实体时.

模式是用户拥有的数据库对象的集合.当我们创建用户时,我们会同时创建他们的架构.最初他们的架构是空的.

很容易证明USER和SCHEMA是不同的,因为我们更改了会话中的当前模式.这只意味着我们可以在另一个用户的模式中引用对象,而不必使用所有者的名称作为前缀.

sql> desc t1 name                                      Null?    Type ----------------------------------------- -------- ------------- ID                                                 NUMBERsql> alter session set current_schema=APC  2  /Session altered.sql> desc t1ERROR:ORA-04043: object t1 does not existsql> sho userUSER is "X"sql>

在这种情况下,APC没有一个名为T1的表,或者他没有将它授予X. X可以看到自己的表的唯一方法是在它前面加上自己的名字,或者将当前模式切换回自己.

要回答第一个问题,架构始终与用户具有相同的名称.所以SCott不可能拥有架构X;模式X由用户X拥有.

要回答第二个问题,没有用户就无法创建架构.

确实,有一个CREATE SCHEMA命令,但这需要事先创建用户.它实际上不是创建模式而是创建多个数据库对象.实际上,它更像是一个ADD OBJECTS TO SCHEMA命令.

sql> conn sys as sysdbaEnter password:Connected.sql> create user x IDentifIEd by x  2  default tablespace users quota 10m on users  3  /User created.sql> grant create session,create table to x  2  /Grant succeeded.sql> conn x/xConnected.sql> create schema authorization x  2      create table t1 (ID number)  3      create table t2 (ID number)  4  /Schema created.sql> select table_name from user_tables  2  /table_name------------------------------T1T2sql>

CREATE SCHEMA命令非常有限:我们可以创建表,视图和索引,并授予对象权限.它的优点就是我们可以在单个事务中创建多个对象,以便在失败时回滚所有创建.当我们单独运行每个create语句时,这是不可能的.

当你提到“功能ID”时,不确定你在想什么.它不是Oracle功能的标准部分.

总结

以上是内存溢出为你收集整理的Oracle中的架构,用户和功能ID全部内容,希望文章能够帮你解决Oracle中的架构,用户和功能ID所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1166854.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存