ITPub博客

首页 > 数据库 > Oracle > oracle schema的理解

oracle schema的理解

原创 Oracle 作者:percyfu 时间:2014-08-14 17:02:48 0 删除 编辑
经常有初学着混淆schema 和user的概念,下面说说个人的理解。

Schema是一个逻辑容器,这个容器里可以存放表、索引、函数、存储过程…………

一个user是访问oracle必须指定的,一个user是有密码和各种权限,而scheam没有,并且用户有一个相同名字的schema,这个schema不用显式创建,在创建user的时候会自动创建。当user删除时,对应的schema也就删除,和tablespace不一样,user删除时,对应的表空间还在。

Schema的作用:

1. 可以同时创建多个对象,这些对象要么同时创建成功要么同时创建失败。Example:

create schema authorization scott

create table test_1

(

       test_1_name varchar2(26)

)

create table test_2

(

       test_2_name varchar2(10)

);

注:这种创建对象方法,必须在scott用户下。

2. 当前用户下,可以访问别的schema下的对象,这种情况发生在当前用户有权限访问该schema下的对象,example

  SQL> show user

USER 为 "JJSSYY"

SQL>

SQL> select * from mh_gjt;

select * from mh_gjt

              *

第 1 行出现错误:

ORA-00942: 表或视图不存在

SQL> alter session set current_schema=portal

  2  ;

会话已更改。

SQL> select * from mh_gjt;

YHID             JSID       CDID XSWZ

---------- ---------- ---------- --------------------

212                 3        138 药品字典查询

212                 3        145 我的病人

332                 5        234 病区病人

789                 3        145 余静的病人

1017                3        145 我的病人

22                  3        149 临床小锦囊

22                  3        120 住院病人诊疗

22                  3        753 医嘱组套设置

已选择8行。

SQL>

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26575510/viewspace-1251365/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2014-01-08

  • 博文量
    6
  • 访问量
    12512