Oracle 基本概念 Dadabase,schema,user,table...
来源网络的一个比喻,解释什么是Dadabase,schema,user,table…
“ 我们可以把Database看作是一个大仓库。
仓库分了很多很多的房间,Schema就是其中的房间。
一个Schema代表一个房间,User就是每个Schema房间的主人。
Table可以看作是每个Schema中的床,床必须放入每个房间中,不能放置在房间之外,否则睡觉时就无家可归了。
Column(列)和Line(行)就可以看作Table(床)上放置的很多物品。
数据库中存储数据的基本单元是Table,对应现实中每个仓库放置物品的基本单位就是床。
因为User是每个Schema房间的主人(所以Schema包含的是Object,而不是User)。
User和Schema是一一对应的,每个User在没有特别指定下只能使用自己Schema(房间)的东西。
如果一个User想使用其他Schema(房间)的东西,那就要看那个Schema(房间)的User(主人)有没有给你这个权限了,或者看这个仓库的老大(DBA)有没有给你这个权限了。
如果你是仓库主人(DBA),那么这个仓库的使用权和仓库中的所有东西都是你的(包括房间),你有完全的操作权,可以扔掉不用的东西从每个房间,也可以放置一些有用的东西到某一个房间,你还可以给每个User分配具体的权限,也就是每个User可以到某一个Schema房间可以做些什么。User的权限是只能看(Read-Only),还是可以像主人一样有所有的控制权(R/W),这个权限就要看该User所对应的角色Role了。”
接下来看详细定义,理解:
1.什么是schema<模式>?
A schema is a collection of database objects (used by a user.). Schema objects are the logical structures that directly refer to the database’s data. A user is a name defined in the database that can connect to and access objects. Schemas and users help database administrators manage database security.
schema<模式>是一个逻辑概念,是数据库对象的集合,schema objects<模式对象>是数据库数据的逻辑结构;
schema<模式>就是用来创建管理数据库对象的: 把数据库对象用模式分开成不同的逻辑结构.
数据库对象包括: tables, views, sequences, stored procedures, synonyms, indexes, clusters, and database links.
2.什么是user<用户>?
A user is a name defined in the database that can connect to and access objects.
user是用来连接数据库和访问数据库对象的.
3.什么是表空间?
表空间本质上是一个或多个数据文件的集合;
在Oracle中,数据库由表空间来组成,表空间中是具体的物理文件(数据文件);
我们可以创建数据库并指定各种表空间.
4.个人总结
数据库由表空间来组成,而Schema是各种数据库对象的集合,用户可以通过Schema来访问表等等这些数据库对象。严谨来说我们查询的时通常需要通过 Schema.对象 的方式访问<在Oracle中即为,通过 owner.对象 进行访问>,若没有指明该表属于哪一个Schema中的,系统就会自动在表上加上缺省的Schema名,缺省的Schema名就是用户名。
在Oracle中 Schema 就是 Owner 也就是 User,是一对一的关系,等同视之即可.
本文地址:https://blog.csdn.net/qxk5055/article/details/107401149
上一篇: Web前端新手一定要知道的几个框架!
下一篇: Cassandra 简介