1 / 20

第四讲 表和表空间操作

第四讲 表和表空间操作. 4.1 复习: ORACLE 数据库基本结构. 4.2 ORACLE 表空间管理. 4.3 ORACLE 表管理. 4.4 使用模式管理器进行表操作. 4.5 相关的数据字典视图. 4.1 复习: ORACLE 数据库基本结构. 逻辑结构. ORACLE 数据库. 物理结构. 1. 1. N. N. 1. N. 表空间. 物理文件. 1. 1. N. 表 / 索引 / 包 / 过程等. 数据对象. 1. 1. 1. 1. 数据段. 索引段. 1. 1. N. N.

zenia
Download Presentation

第四讲 表和表空间操作

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第四讲 表和表空间操作 4.1 复习:ORACLE 数据库基本结构 4.2 ORACLE 表空间管理 4.3 ORACLE 表管理 4.4 使用模式管理器进行表操作 4.5 相关的数据字典视图

  2. 4.1 复习:ORACLE 数据库基本结构 逻辑结构 ORACLE数据库 物理结构 1 1 N N 1 N 表空间 物理文件 1 1 N 表/索引/包/过程等 数据对象 1 1 1 1 数据段 索引段 1 1 N N 数据区间 索引区间 1 1 N N 1 N N 数据块 数据块 物理块

  3. NOTICE! • ORACLE数据库逻辑块大小是操作系统物理块大小的整数倍。 • ORACLE数据库中空间的分配和使用是以逻辑块为单位的。 • 以逻辑块大小(如2K、4K、8K、16K)的整数倍来分配和使用。 • 具体分配和使用的命令中不一定使用块整数倍为数值,而是习惯上还是以字节、KB、MB为单位标识,但必须是逻辑块大小的整数倍。

  4. 问题: ORACLE在逻辑结构、物理结构具体是如何分配和使用的?

  5. 4.2 ORACLE 表空间管理 4.2.1 创建表空间命令 • 权限: DBA • 命令格式 • CREATE TABLESPACE tablespace_name • DATAFILE filespace • [DEFAULT STORAGE storage] • [ONLINE|OFFLINE]

  6. 1) 建立数据文件子句 filespace • 命令格式 • “filename” SIZE integer[K|M][REUSE] • [AUTOEXTEND OFF| • AUTOEXTEND ON NEXT integer[K|M] • [MAXSIZE UNLIMITED | integer[K|M]]] [例1] ‘D:\ORANT\DBS\gx01.ora’ SIZE 10M AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED

  7. [例2] ‘D:\ORANT\DBS\jk01.ora’ SIZE 10M AUTOEXTEND OFF 2) 定义缺省的存储方法 storage 子句 • 命令格式 • INITIAL integer[K|M] NEXT integer[K|M] • PCTINCREASE integer MINEXTENTS integer • MAXEXTENTS integer

  8. [例3] CREATE TABLESPACE gx DATAFILE ' D:\ORANT\DBS\ gx01.ora' SIZE 10M AUTOEXTEND ON NEXT 5M MAXSIZE 100M; [例4] CREATE TABLESPACE jk DATAFILE ' D:\ORANT\DBS\ jk01.ora' SIZE 10M AUTOEXTEND OFF DEFAULT STORAGE (INITIAL 512K NEXT 128K PCTINCREASE 10 MINEXTENTS 1 MAXEXTENTS 100) ONLINE;

  9. [例5] CREATE TABLESPACE jk_temp DATAFILE ' D:\ORANT\DBS\ jk_temp01.ora' SIZE 20M AUTOEXTEND ON NEXT 10M TEMPORARY; 4.2.2 使用存储管理器创建表空间 1) 登录安全管理器授权使之能record SQL SNMPAGENT权限 2) 以internal用户登录存储管理器

  10. 3) 打开RECORD功能 4) 创建一表空间 5) 关闭RECORD功能 6) 查看记录的SQL语句

  11. 4.2.3 管理表空间 1) 修改表空间 [例6] ALTER TABLESPACE "SYSTEM" ADD DATAFILE 'sys20rcl.ora' SIZE 60M AUTOEXTEND ON NEXT 20M; 2) 删除表空间 [例7] DROP TABLESPACE jk INCLUDING CONTENTS;

  12. [例8] DROP TABLESPACE gx; NOTICE! DROP TABLESPACE 命令并不真正从物理环境中删除该表空间所属的数据文件。要删除相应的数据文件,必须使用操作系统提供的删除文件的方式。或者保留该数据文件供以后创建其它表空间使用(REUSE选项)。该文件中的内容将被清除。

  13. 3) 使用存储管理器维护表空间 4.3 ORACLE 表管理 4.3.1 创建表 • 相应权限: • 在自己的模式中创建表需要 CREATE TABLE权限 • 在别人的模式中创建表需要CREATE ANY TABLE权限

  14. 命令格式: • CREATE TABLE [用户名].表名 • (字段描述) • (表约束) • [PCTFREE integer] • [PCTUSED integer] • [INITTRANS integer] • [MAXTRANS integer] • [TABLESPACE 表空间名] • [STORAGE 存储子句] • [AS子查询];

  15. [例9] CREATE TABLE “ZT”.部门 (编号 CHAR(8) NOT NULL UNIQUE, 名称 VARCHAR2(20) NOT NULL UNIQUE, PRIMARY KEY (编号)) PCTFREE 20 PCTUSED 60 INITRANS 2 STORAGE ( INITIAL 4096 NEXT 2048 MINEXTENTS 1 MAXENTENTS 100 PCTINCREASE 10) TABLESPACE "ZT”;

  16. 4.3.2 查看表 • 命令格式: • DESCRIBE 表名; 4.3.3 修改表 • 命令格式: • ALTER TABLE 表名 ……; • 改表名命令格式: • RENAME 原表名 TO 新表名;

  17. 4.4 使用模式管理器进行表操作 4.4.1 WIZARD方式创建表 4.4.2 手工方式创建表 4.4.3 修改表 4.4.3 删除表

  18. 4.5 相关的数据字典视图 4.5.1 USER_TABLES:用户定义的所有表的信息 4.5.2 USER_TABLES_COLUMNS:用户定义的所有表的字段信息 4.5.3 USER_CONTRAINTS:用户定义的所有表的约束信息 4.5.4 USER_INDEX:用户定义的所有表的索引信息 4.5.4 USER_TRIGGERS:用户定义的所有触发器信息

  19. 概念总结 • 表空间 • 段 • 区间 • 数据块

More Related