Oracle数据库第六课——Oracle空间管理、索引和序列的创建

本文介绍了Oracle数据库的表空间管理,包括创建和删除表空间的步骤,以及表空间与数据文件的关系。接着,讲解了SQL语言的基础知识,如CREATE TABLE和TRUNCATE TABLE命令,并探讨了数据存储的位置。此外,文章详细阐述了索引的概念、分类、创建和删除原则,强调了索引在提升查询性能中的作用。最后,讨论了同义词和序列的使用,包括它们的作用、创建、删除和使用场景,展示了如何通过序列生成唯一ID。
摘要由CSDN通过智能技术生成

知识点:学习 Oracle 数据库应用。主要学习如何创建表空间和用户,同时介绍如何运用 索引、同义词、序列等数据库对象。

 

1、表空间管理

什么是表空间?表空间是指 Oracle 数据库内部数据的逻辑组织结构,对应于磁盘上的一个或多个物理数据文件。

表空间的作用?Oracle 通过表空间的数据库对象来组织数据文件。在将数据插入 Oracle 数据库之前,必须首先建立表空间,然后将数据插入表空间的一个对象中。

如何理解表空间?数据库、表空间、数据文件、表、数据之间的关系可以用柜子、抽屉、文件夹、纸,以及写在纸上的信息的关系来描述。

数据库就是柜子,柜中的抽屉是表空间,抽屉中的文件夹是数据文件,文件夹中的纸是表,写在纸上的信息就是数据。即使在自己的柜子中也不应该把保险单放在名叫“学校记录”的抽屉中,而应放在名为“保险”的抽屉。数据库中的表空间也应使用类似的规则。

表空间的分类:永久性表空间、临时性表空间、撤销表空间。

  • 永久性表空间:一般保存表、视图、过程和索引等的数据。SYSTEMSYSAUX、 USERSEXAMPLE 表空间是默认安装的。
  • 临时性表空间:只用于保存系统中短期活动的数据,如排列数据等。
  • 撤销表空间:用来帮助回退未提交的事务数据,已提交了的数据在这里是不可以恢复的。一般不需要创建临时和撤销表空间,除非把他们转移到其他磁盘中以提高性能。

        对不同的用户分配不同的表空间,对不同的模式对象分配不同的表空间,方便对用户数据的操作,对模式对象的管理。可以将不同数据文件创建到不同的磁盘中,有利于管理磁盘空间,有利于提高 I/O 性能,有利于备份和恢复数据等。一般在完成 Oracle 系统的安装并创建 Oracle 实例后,Oracle 系统会自动建立多个表空间。

 

1.1  创建表空间

         每个数据库创建的时候,系统都会默认地为它创建一个 SYSTEM 表空间,一个数据库 可以有若干表空间,也可以只有一个 SYSTEM 表空间。逻辑上的方案对象,如数据表、索引等既可以存储在物理上的一个数据文件内,也可以跨越物理上的数据文件,但必须属于同一个表空间。 创建表空间语法:

create tablespace tablespace_name
    datafile ‘file_name’ [SIZE integer [K | M] ]
[AUTOEXTend [OFF | ON]];

语法说明:

  • tablespace_name:表空间名称。
  • DATAFILE:指定组成表空间的一个或多个数据文件,当有多个数据文件时使用逗号分隔。
  • file_name:指数据文件的路径和名称。
  • SIZE:指定文件的大小,用 K 指定千字节大小,用 M 指定兆字节大小。
  • AUTOEXTEND :用来启用或禁用数据文件的自动扩展,设置为 ON 则空间使用完毕会 自动扩展,设置为 OFF 则很容易出现表空间剩余容量为 0 的情况,使数据不能存储到数据库中。

示例练习1:创建一个自动增长的表空间workdbs

第一步:使用系统账户system登录PLSQL Developer(system 密码manager

第二步:单击菜单栏【文件】——【新建】——【SQL Window】,并输入语句:

create tablespace worktbs   --创建表空间,表空间的名字是worktbs
       datafile 'D:\oracle\worktbs1.dbf'  --指定表空间存放的位置,这里要写完整路径,带上表空间的全称
       size 3M    --指定表空间的大小
       autoextend ON;   --设置表空间自增长开启(也就是允许自增长)

第三步:单击工具栏上的执行按钮,提示“已完成”。然后打开本地电脑磁盘对应文件夹,查看文件。

 

1.2  删除表空间

         删除表空间语法: DROP TABLESPACE 表空间名;

示例练习2:删除表空间workdbs

写完以后,点击工具栏执行按钮即可,提示“已完成”,代表已删除该表空间。

注意:使用drop方法删除表空间时,表空间的物理文件是不会被删除的,需要手工来删除。

提醒:删除表空间之前最好对数据库进行备份。

 

2、SQL语言基础(DML,DDL)

2.1   SQL 语言简介

        SQL 语言是高级的结构化查询语言。用户使用 SQL 语言进行数据操作时,只需要提出“做什么,而不必指明怎么做”,具体的执行过程有系统自动完成,大大减轻了用户负担。SQL 语言是数据库服务器和客户端之间的重要沟通手段,用于存取数据以及查询、更新和管理关系型数据库系统。 经过多年的发展,SQL 语言已经成为关系型数据库的标准语言。SQL 支持如下类别的命令。

  •   数据定义语言(DDL):CREATE(创建)、ALTER(更改)TRUNCATE(截断)、 DROP(删除)命令。
  •   数据操作语言(DML):INSERT(插入)、SELECT(选择)、DELETE(删除)和 UPDATE(更新)命令。
  •   事务控制语言(TCL):COMMIT(提交)SAVEPOINT(保存点)ROLLBACK(回滚)命令。
  •   数据控制语言(DCL):GRANT(授予)REVOKE(回收)命令。

2.2 DDL 语言

       数据定义语言中,CREATE TABLE 语句用来创建新表、ALTER TABLE 语句用来修改结构,TRUNCATE TABLE 语句用来删除表中的所有记录,DROP TABLE 语句用来删除表。本章结合以前学过的 DDL 语言知识,主要介绍数据定义语言中常用的 CREATE TABLE 命令和较为陌生的 TRUNCATE TABLE 命令。

(1)CREATE TABLE 命令语法:

CREATE TABLE [schema.] table_name
(
    column_name1 datatype1,
    [column_name2 datatype2],
    ……
)

语法说明:

  • schema 表示对象的所有者,即模式的名称。如果用户在自己的模式中创建表,则可以不指定所有者名称。
  • ta
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逍遥小丸子

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值