求解?表空间,表,用户这三者之间的 关系与区别? 小弟初学oracle,但是在表空间,用户,表这三者之间的关系,有点模糊,希望大牛指导下! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 表空间:一个数据库划分为一个或多个逻辑单位,该逻辑单位称为表空间(TABLESPACE)。一个表空间可将相关的逻辑结构组合在一起。表:表(table)为数据库中数据存储的基本单位,其数据按行、列存储。每个表具有一表名和列的集合。每一列有一个列名、数据类型、宽度或精度、比例。一行是对应单个记录的列信息的集合。用户:即user,通俗的讲就是访问oracle数据库的“人”。在oracle中,可以对oracle用户的各种安全参数进行控制,以维护数据库的安全性,这些概念包括模式(schema)、权限、角色、存储设置、空间限额、存取资源限制、数据库审计等。 我也只有大半年的经验,以下我现在的理解:表空间:创建表空间会在物理磁盘上建立一个数据文件,作为数据库对象(用户、表、存储过程等等)的物理存储空间;用户:创建用户必须为其指定表空间,如果没有显性指定默认表空间,则指定为users表空间;创建用户后,可以在用户上,创建表、存储过程等等其他数据库对象;表:是数据记录的集合;创建过程: 表空间--->用户--->表;所属关系: 表空间 包含 用户 包含 表; 表空间 和 用户 都是 system objects 平级 归属于数据库表是schema objects 归属于用户表和用户是从属关系表和表空间没关系 表中数据装载在表空间的data文件上用户和表空间没关系 用户的属性“默认表空间”和表空间是多对一关系 那表属于表空间,但是不同的用户有不同的表,这样有点迷糊啊!比如说一张emp表属于scott用户,但是却属于xxxspace 表空间,那现在admin用户对xxxspace 表空间操作时能操作emp表吗? 你应该找一本oracle的书,看一下,你就明白了,oracle的体系结构block < extent < 段表空间是有多个段组成的,一个段可能又分了多个区间,一个区间有多个oracle 数据块而用户,也有用户对应的user表空间(这个是系统默认的空间)举个例子:create user zsd identified by "" default tablespace PUB_ZSD_SPACE(这个是你想用户放置的表空间) temporary tablespace TEMP01(临时空间就是临时放置的表空间) profile DEFAULT;如果你在这个用户下,建立一个表zsd_test那么这张表就会放在和用户表空间一样的地方create table zsd_test( EMPLOYEE_ID VARCHAR2(32), IAM_UID VARCHAR2(32))tablespace PUB_ZSD_SPACE pctfree 10 initrans 1 maxtrans 255 storage ( initial 2M minextents 1 maxextents unlimited );你看,两个表空间是一致,工作上这些应该够用了,希望能对你有帮助。 问个oracle数据恢复问题 Oracle 数据分析产品的疑惑 高分求解惑 急,关于UPDATE的一个棘手的问题 UPDATE 问题 有关Oracle 11g r2 server 与client的问题 不用自定义函数如何实现这两张表的关联 请问oracle有没有记载sql日值的功能 多表连接问题 在linux下配置oracle的简体中文字符集? 关于ORACLE会把''认成NULL的问题,高分 无法解析指定的连接标识符 PL/SQL怎么导出100M以上的数据
表:表(table)为数据库中数据存储的基本单位,其数据按行、列存储。每个表具有一表名和列的集合。每一列有一个列名、数据类型、宽度或精度、比例。一行是对应单个记录的列信息的集合。
用户:即user,通俗的讲就是访问oracle数据库的“人”。在oracle中,可以对oracle用户的各种安全参数进行控制,以维护数据库的安全性,这些概念包括模式(schema)、权限、角色、存储设置、空间限额、存取资源限制、数据库审计等。
block < extent < 段表空间是有多个段组成的,一个段可能又分了多个区间,一个区间有多个oracle 数据块而用户,也有用户对应的user表空间(这个是系统默认的空间)举个例子:
create user zsd
identified by ""
default tablespace PUB_ZSD_SPACE(这个是你想用户放置的表空间)
temporary tablespace TEMP01(临时空间就是临时放置的表空间)
profile DEFAULT;如果你在这个用户下,建立一个表zsd_test那么这张表就会放在和用户表空间一样的地方
create table zsd_test(
EMPLOYEE_ID VARCHAR2(32),
IAM_UID VARCHAR2(32)
)
tablespace PUB_ZSD_SPACE
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 2M
minextents 1
maxextents unlimited
);你看,两个表空间是一致,工作上这些应该够用了,希望能对你有帮助。