当前位置:首页 >> 理学 >>

ORACLE应用开发


Oracle 10g 应用开发 -Lesson02

第2 章

数据库和表的创建

创建数据库和表是Oracle 10g最基本的工作,数据库和表是Oracle用于组 织和管理数据的对象。本章将讲述数据库、表的基本概念,以及创建数据库 和表的两种方式。

2.1 基本概念
Oracle是一种关系数据库管理系统(RDBMS)。关系数据库是按照二维表结构方 式组织的数据集合,每个表体现了集合理论中定义的数学概念 ── 关系。

2.1.1 数据库
数据库(Database)是一个数据容器,它包含了表、索引、视图、过程、函 数、包等对象,并对其进行统一的管理。

2.1.1
1. (1)

数据库

数据库的内部结构 表空间(TABLESPACE) 表空间是数据库的逻辑划分,一个表空间只属于一个数据库。 下面是 Oracle10g版本默认创建的主要表空间。 ① SYSTEM表空间。SYSTEM表空间用于存放Oracle系统内部表和数据字典 的数据。 ② SYSAUX表空间。SYSAUX表空间是Oracle 10g新增加的表空间,主要存 放Oracle系统内部的常用样例用户的对象。 ③ ④ ⑤ UNDO表空间。UNDO表空间是存储撤销信息的表空间。 USERS表空间。 USERS表空间是Oracle系统建议用户使用的表空间。 TEMPORARY表空间。在Oracle数据库中,临时表空间主要供用户临时使 用。 除了Oracle系统默认创建的表空间以外,用户可以根据应用系统的规模 及其所要存放对象创建多个表空间,以区分用户数据和系统数据。

2.1.1

数据库

1. 数据库的内部结构 (2) 表(TABLE) 表是数据库中存放用户数据的对象。它包含一组固定的列。表中的列描述该表所 跟踪的实体的属性,每个列都有一个名字和若干个属性。表结构的一个样例如图 2.1所示除了Oracle系统默认创建的表空间以外,用户可以根据应用系统的规模 及其所要存放对象创建多个表空间,以区分用户数据和系统数据

2.1.1

数据库

1. 数据库的内部结构 (3) 约束条件(CONSTRAINT) 可以为一个表列创建约束条件,此时,表中的每一行都必须满足约束条 件定义 所规定的条件。约束条件有以下5种。 ① 主键(Primary Key):主键是表中的一列或多个列。 ② 缺省(DEFAULT) 约束条件:在表中插入一行数据但没有为列指定值时 生成一个在定义表时预先指定的值。 ③ 检查(CHECK) 约束条件:该约束条件确保指定列中的值符合一定的条 件。 ④ 惟一性(UNIQUE)约束条件:用于保证应具有惟一性而又不是主键的一 部分的那些列的惟一性。 ⑤ 外键(Foreign Key)约束条件:该约束条件规定表间的关系性质。

2.1.1

数据库

1. 数据库的内部结构 (4) 分区(PARTITION) 在非常大的数据库中,可以通过把一个大表的数据分成多个小表来简化数据库的 管理,这些小表称作分区。 (5) 索引(INDEX) 索引是帮助用户在表中快速地找到记录的数据库结构,它既可以提高数据库性能, 又能够保证列值的惟一性。 (6) 用户(USER) 用户帐号虽然不是数据库中的一个物理结构,但它与数据库中的对象有着重要的关 系,这是因为用户拥有数据库的对象。 (7)方案(SCHEMA) 用户帐号拥有的对象集称为用户的方案(SCHEMA)。 (8) 同义词 为了给不同的用户使用数据库对象时提供一个简单的、惟一标识数据库对 象的名称,可以为数据库对象创建同义词。 (9) 权限及角色(ROLE) 为了访问其他帐号所有的对象,必须首先被授予访问这个对象的权限。

2.1.1
1.

数据库

数据库的内部结构

(10) 段(SEGMENT)、盘区(EXTENT)和数据块(DATA BLOCK) 依照不同的数据处理性质,可能需要在数据表空间内划分出不同区域,以存放不 同数据,将这些区域称之为“段”(SEGMENT)。 图2.2说明了段、盘区和数据块之间的关系。
数据表空间

数据段

数据段

盘区

2k 2k
数据块

2k 2k

图2.2 段、盘区和数据块之间的关系

2.1.1

数据库

2. 数据库外部结构 (1) 数据文件(DATAFILE) 每一个Oracle 10g数据库有一个或多个数据文件,而一个数据文件只能属于一 个表空间。数据库、表空间和数据文件之间的关系如图2.3所示。

数据库、 图2.3 数据库、表空间和数据文件之间的关系

2.1.1

数据库

(2) 重做日志文件(REDO LOG FILES) 除了数据文件外,最重要的Oracle 10g数据库实体档案就是重做日志文件。 (redo log files)。Oracle保存所有数据库事务的志。这些事务被记录在联 机重做日志文件(Online Redo Log File)中。当数据库中的数据遭到破坏时 ,可以用这些日志来恢复数据库。 (3) 控制文件(CONTROL FILES) 每个 Oracle 10g 数据库都有一个控制文件,用以记录与描述数据库的外部 结构。它们包括: ① Oracle 10g数据库名称与建立时间。 ② 数据文件与重置日志文件名称及其所在位置。 ③ 日志记录序列码(log sequence number)。

2.1.2



表是用来存储和操作数据的一种逻辑结构。表由行和列组成,因此也称之为二 维表。 1. 表结构 表是在日常工作和生活中经常使用的一种表示数据及其关系的形式。关系数据 库使用表(即关系)来表示实体及其联系。表包含下列概念:

表结构:每个数据库包含了若干个表。每个表包含一组固定的列,而 列由数据类型(DATATYPE)和长度(LENGTH)两部分组成,以描述该表所跟 踪的实体的属性。 记录:每个表包含了若干行数据,它们是表的“值”,表中的一行称为 一个记录(Record),因此,表是记录的有限集合。 字段:每个记录由若干个数据项构成,将构成记录的每个数据项称为字 段(Field)。
关键字:关键字可以将表中的不同记录区分开来。

2.1.2



2. 关系 表与表之间有下列关系: (1) 一对一关系 有两张表A表和B表, A表中的一条记录在B表中有一条记录与之对应。反过来, B表中的一条记录在A表中仅有一条记录与之对应。具有这种关系的两张表存在一 对一的关系。 (2)一对多关系 有两张表A表和B表, A表中的一条记录在B表中有多条记录与之对应,反过来,B 表中的一条记录在A表中仅有一条记录与之对应。具有这种关系的两张表存在一对 多的关系。 (3)多对多关系 有两张表A表和B表, A表中的一条记录在B表中有多条记录与之对应。反过来,B 表中的一条记录在A表中也有多条记录与之对应。但是A表和B表之间的这种多对多 关系必须通过中间表C表来连接方可实现。

2.1.2



3. 表示实体的表和表示实体联系的表 关系数据库用表来反映数据本身的内容以及反映数据之间的联系。所以在关 系数据库中,包含了反映实体信息的表和反映实体之间联系的表。 例如,在学生成绩数据库中,用学生情况表反映了学生这一实体的信息,如 表2.1所示。

2.1.2



3. 表示实体的表和表示实体联系的表 课程情况表反映学校开设课程这一实体的信息,如表2.2所示。此外,还要一个表示学 生实体与课程实体联系的表——学生课程成绩表来表达学生学习课程的情况,如表2.3 所示。

2.1.3

实例

数据库实例(instance)也称作服务器(server),是指用来访问数据库文件集 的存储结构(统称为System Global Area,即SGA)及后台进程的集合。实例与 数据库之间的关系如图2.4所示。

图2.4 实例与数据库之间的关系

2.1.3

实例

1. 系统全局区 当激活Oracle 10g数据库时,系统会先在内存内规划一个固定区域,用来存储 每位使用者所需存取的数据以及Oracle 10g运作时必备的系统信息。这个区域称 为系统全局区(System Global Area),俗称SGA 。 图2.5给出了SGA各重要区域之间的关系。

图2.5 SGA之间的关系 之间的关系

2.1.3

实例

1. 系统全局区 (1) 数据块缓存区。 数据快取缓冲区为SGA 的主要成员,用来存放 读取自数据文件的数据块复本,或是使用者曾经处理过的数据。 (2) 字典缓存区。数据库对象的信息存储在数据字典中,这些信息 包括用户帐号、数据文件名、盘区位置、表说明和权限等。 (3) 重做日志缓冲区:前面已介绍过,联机重做日志文件用于记录 数据库的更改,以便在数据库恢复过程中用于向前滚动。 (4) SQL共享池:SQL共享池存储数据字典缓存区及库缓存区 (library cache),即对数据库进行操作的语句信息。

2.1.3

实例

2. 后台进程 数据库的物理结构和存储结构之间的关系是由后台进程来维持。主要的背景处理程序 如下。 (1) DBWR(数据库写入程序):负责将数据块缓存区内变动过的数据块回写至硬盘内 的数据文件。 (2) LGWR(日志写入程序):负责将重做日志缓冲区内的数据变动记录循序写入重做 日志文件。 (3) SMON(系统监控程序):如果是因为停电或是其它因素导致Oracle数据库不正常 被关闭,下一次激活数据库时将由SMON进行必要的数据库修复动作。 (4) PMON(进程监控程序):当某个使用者处理程序异常终止时,PMON清除数据块 缓存区内不再使用的空间,并释放该程序之前使用的系统资源。 (5) CKPT(检查点进程):在适当时候产生一个checkpoint事件,确保缓冲区内经常 被变动的数据也要定期被写入数据文件。 (6) RECO(恢复进程):在Oracle 10g分布式数据库环境中,RECO处理程序会自动 处理分布式操作失败时产生的问题。
(7) ARCH(归档进程):LGWR后台进程以循环方式向联机重做日志文件写入。

数据库拥有多个后台进程,其数量取决于数据库的配置。这些进程由数据库管理,它 们只需要进行很少的管理。图2.6显示了后台进程在数据库外部结构,SGA中作用和地 位。

后台进程与数据库外部结构、 图2.6 后台进程与数据库外部结构、SGA的关系 的关系

2.2界面创建数据库和表 2.2界面创建数据库和表
2.2.1 数据库创建和删除 1. 通过界面创建数据库 创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用 户。创建数据库必须要确定全局数据库名、SID、所有者(即创建数据库的用户)、数据 库大小(数据文件最初的大小、最大的大小、是否允许增长及增长方式)、重做日志文件 和控制文件等。 【例2.1 例2.1】使用DBCA创建XSCJ数据库。 (1) 启动DBCA,DBCA激活并初始化,如图2.7所示。DBCA初始化完成后自动进入“欢 迎”窗口,如图2.8所示。

图2.7 DBCA初始化窗口 初始化窗口

图2.8 欢迎窗口

2.2.1

数据库创建和删除

【例2.1】使用DBCA创建XSCJ数据库。 例2.1 (2) 单击“下一步”按钮,进入“数据库创建”窗口,如图2.9 所示。 (3)选择创建数据库选项,单击“下一步”按钮,进入“数据库模板”窗口, 如图2.10所示。

图2.9 操作窗口图

图2.10 数据库模板窗口

2.2.1

数据库创建和删除

【例2.1】使用DBCA创建XSCJ数据库。 例2.1 (4) 选择一般用途选项,单击“下一步”按钮,进入“数据库标识”窗口,如 图2.11所示。 (5)单击“下一步”按钮,进入“管理选项”窗口,如图2.12所示。

图2.11 数据库标识窗口

图2.12 管理选项窗口

2.2.1

数据库创建和删除

【例2.1】使用DBCA创建XSCJ数据库。 例2.1 (6) 单击“下一步”按钮,进入“数据库身份证明”窗口,如图2.13所示。 (7) 单击“下一步”按钮,进入“存储选项”窗口,如图2.14所示。

图 2.13 数据库身份证明窗口

图2.14存储选项窗口 存储选项窗口

2.2.1

数据库创建和删除

【例2.1】使用DBCA创建XSCJ数据库。 例2.1 (8)单击“下一步”按钮,进入“数据库文件位置”窗口,如图2.15所示。 (9)单击“下一步”按钮,进入“恢复配置”窗口,如图2.16所示。

图2.15 数据库文件位置窗口

图2.16 恢复配置窗口

2.2.1

数据库创建和删除

【例2.1】使用DBCA创建XSCJ数据库。 例2.1 (10)单击“下一步”按钮,进入“数据库内容”窗口,如图2.17所示。 (11)单击“下一步”按钮,进入“初始化参数”窗口,如图2.18所示。

图2.17 数据库内容窗口

初始化参数窗口—内存选项卡 图2.18初始化参数窗口 内存选项卡 初始化参数窗口

2.2.1

数据库创建和删除

【例2.1】使用DBCA创建XSCJ数据库。 例2.1 初始化参数的设定共分成四个选项卡,分别是内存、调整大小、字符集和连接模式的置。 ①“内存”选项卡。DBCA就提供了下列设定方式: 典型: SGA大小以“物理内存的百分比”来设定,只要决定这个新数据库能够占用多少内 存即可,DBCA会适当的分配给SGA各区域。 自定义:可以自行决定SGA各区域的内存配置情况。 ② “调整大小”选项卡。如图2.19所示,在该窗口配置数据库块大小和连接此数据库的 操作系统用户的最大数量。

初始化参数窗口—调整大小选项卡 图2.19初始化参数窗口 调整大小选项卡 初始化参数窗口

2.2.1

数据库创建和删除

③ “字符集”选项卡。如图2.20所示,在该窗口配置字符集。它是在计算机 屏幕上显示字符时所使用的编码方案。 ④ “连接模式”选项卡。如图2.21所示,在该窗口设置将要创建的数据库的 运作模式。

初始化参数窗口—字符集选项卡 图2.20初始化参数窗口 字符集选项卡 初始化参数窗口

初始化参数窗口—连接模式选项卡 图2.21初始化参数窗口 连接模式选项卡 初始化参数窗口

2.2.1

数据库创建和删除

到这里为止,较重要的数据库设定工作已大致完成,单击“所有初始化参数”按 钮可检查所有起始参数设定值。如图2.22所示。

图2.22所以初始化参数窗口 所以初始化参数窗口

2.2.1

数据库创建和删除

【例2.1】使用DBCA创建XSCJ数据库。 例2.1 (12) 单击“下一步”按钮,进入“数据库存储”窗口,如图2.23所示。 如图2.24所示,选择要修改的控制文件,在右边的子窗口中会显示相应的信息。

图2.23控制文件的一般信息窗口 控制文件的一般信息窗口

图2.24数据文件的存储窗口 数据文件的存储窗口

2.2.1

数据库创建和删除

【例2.1】使用DBCA创建XSCJ数据库。 例2.1 在如图2.25所示的窗口中可以进行如下设置:最大数据文件数、最大重做日志 文件数和最大日志成员数。 (13)单击“下一步”按钮,进入“创建选项”窗口,如图2.26所示

图2.25 控制文件的选项窗口

图2.26 创建选项窗口

2.2.1

数据库创建和删除

【例2.1】使用DBCA创建XSCJ数据库。 例2.1 (14)按下“完成”按钮,进入“确认”窗口,如图2.27 所示。 (15) 单击“确定”按钮,之后就可以把剩下的工作交给DBCA了!它会先创建 起 始参数文件,然后在激活Oracle Instance之后进行一连串的工作,如图2.28 所 示。

图2.27 确认窗口图

2.28 创建数据库进度窗口

2.2.1

数据库创建和删除

【例2.1】使用DBCA创建XSCJ数据库。 例2.1 出现如图2.29所示窗口,说明安装已完成。可以单击下方的“口令管理”进行调整。 如图2.30所示,电子表格中列出了所有系统初始用户。选择某个用户,鼠标单击“是否锁定 用户”栏,锁定该用户或解除锁定。若要在此时修改口令,则在“新口令”和“确认口令” 项目栏中输入相同的口令。设置完毕后,单击“确定”按钮。至此,完成了创建数据库的全 部操作。

图2.29 数据库信息窗口

图2.30 口令管理窗口

2.2.1

数据库创建和删除

2. 修改数据库 在数据库创建后,数据文件和日志文件名一般就不再改变了。对 已存在的数据库可以进行的修改主要有: ?①增加或删除数据文件。 ②改变数据文件的大小和增长方式。 ③改变日志文件的大小和增长方式。

2.2.1

数据库创建和删除

2. 修改数据库 下面以对数据库XSCJ的修改为例,说明在OEM中对数据库某些定义进行修改 的操作方法。使用IE浏览器,在地址栏输入http://zhouym.lan:1158/em打开OEM, 显示如图2.31所示的界面。

图2.31 OEM主目录界面 主目录界面

2.2.1

数据库创建和删除

2. 修改数据库 使用Oracle企业管理器,可以执行以下操作: ① 通过查看几种类型的度量来确定数据库的当前状态。 ② 启动或停止数据库。 ③ 通过3个选项页面 (划分为3页,每页各显示一个子部分) 访 问数据库环境的性能、管理和维护。

2.2.1

数据库创建和删除

2. 修改数据库
(1) 改变数据文件的大小和增长方式。在图2.31所示的界面中,单击“管理 ”选项页面,出现如图2.32所示的管理界面,在“存储”类别选择“数据文 件”,进入如图2.33所示的“数据文件搜索”界面,直接选择或通过搜索功 能查找要修改的数据文件。

图2.32 OEM管理界面 管理界面

图2.33 数据文件搜速界面

2.2.1

数据库创建和删除

【例2.2】将XSCJ数据库的users01.dbf的最大大小改为无限制。 例2.2 修改users01数据文件的步骤如下: 在图2.33所示的界面中,选中“USERS01.dbf”的“选择”单选框” ,单击“编辑”按钮,进入如图2.34所示的界面。在“存储”类别中选择 “无限制”单选按钮,将USERS01数据文件最大容量改为无限制,然后单击 “应用”按钮,保存设置。

图2.34 USERS01数据文件编辑界面 数据文件编辑界面

2.2.1

数据库创建和删除

2. 修改数据库 (2) 增加数据文件。当原有数据库的存储空间不够,除了可以采用扩大原有数据文件的 存储量的方法之外,还可以增加新的数据文件。 【例2.3】在XSCJ数据库增加数据文件users02,其属性均取系统默认值。 ① 在“数据库文件”项中增加数据文件。如图2.33 所示,单击“创建”按钮,进入“ 创建数据文件”界面,如图2.35所示。

图2.35 创建数据文件界面

2.2.1

数据库创建和删除

2. 修改数据库 首先在“文件名”文本框输入数据文件名称users02,然后为表新增的 数据文件选择表空间。单击“手电筒”形状的图标,出现表空间选择界面, 如图2.36所示,选择“USERS”单选按钮,单击“选择”按钮,返回到图2.35 所示界面。

图2.36 选择表空间界面

2.2.1

数据库创建和删除

2. 修改数据库 ② 在相应的表空间中增加数据文件。在图2.32所示界面中,单击“表空间”, 进入“表空间搜索”界面,如图2.37所示。 (3) 删除数据文件。当数据库中的某些数据文件不再需要时,应及时将其删除。

图2.37 表空间搜索界面

2.2.1

数据库创建和删除

3.删除数据库 3.删除数据库 删除数据库是在DBCA中完成。进入DBCA后,选择“删除数据库”选项,单击“下 一步”,进入选择要删除数据库的窗口,如图2.38所示。选择要删除的数据库,单击 “下一步”,激活“概要”提示框。单击“确定”,系统会再一次弹出提示框要你确 认,单击“是”,出现数据库删除进度窗口,如图2.39所示。

图 2.38 选择要删除的数据库

图2.39 删除进度窗口

2.2.1

数据库创建和删除

4. 配置数据库连接 进行配置数据库的步骤如下: (1) 选择开始→程序→Oracle-OraDb10g_home1→配置和移植工具→Net Configuration Assistant,启动欢迎窗口,如图2.40所示。

图2.40 Net Configuration Assistant欢迎窗口 欢迎窗口

2.2.1

数据库创建和删除

4. 配置数据库连接 网络配置助手是Oracle 10g提供的用于配置基本网络组件的工具,可 以进行监听程序配置、命名方法配置、本地网络服务名配置和目录使用 配置。 ① 监听程序配置。创建、修改、删除或重命名监听程序。 ② 命名方法配置。当终端用户连接数据库服务时,要通过“连接标 识符”(简称标识服务)来完成。 ③ 本地网络服务名配置。创建、修改、删除、重命名或测试存储在 本地tnsnames.ora文件中的连接描述符的连接。 ④ 目录服务使用配置。如果要使用集中管理连接标识符的目录命名 与Oracle高级安全一起使用的企业用户安全性功能,则选择此选项来配 置对符合轻型目录访问协议(Lightweight Directory Access Protocol ,简称LDAP)的目录服务器的访问。

2.2.1

数据库创建和删除

4. 配置数据库连接 (2) 选择“本地Net服务名配置”进行配置,单击“下一步”,进入“Net服 务名配置”窗口,如图2.41所示。 (3) 选择“添加”以添加新的服务名,单击“下一步”,进入“服务名”窗 口,如图2.42所示。

图2.41 Net服务名配置窗口 服务名配置窗口

图2.42服务名窗口 服务名窗口

2.2.1

数据库创建和删除

4. 配置数据库连接 (4) 在“服务名”文本框输入数据库服务名XSCJ,单击“下一步”,进入“ 选择协议”窗口,如图2.43所示。选择的协议包括:TCP、TCPS、IPC和NMP。

图2.43 选择协议窗口

2.2.1

数据库创建和删除

4. 配置数据库连接 (5) 选择“TCP”协议,单击“下一步”,进入“TCP/IP协议”窗口,如图2.44所 示。在该窗口需要进行如下设置: ① 主机名。监听程序驻留的计算机主机名。 ② 端口号。确定监听程序的端口号。

图2.44 TCP/IP协议窗口 协议窗口

2.2.1

数据库创建和删除

4. 配置数据库连接 在“主机名”文本框输入数据库所在计算机的主机名选择TCP/IP协议的 标准端口号,单击“下一步”,进入“测试网络服务名”配置窗口,如图 2.45所示。 (7)不进行测试,单击“下一步”,进入“Net服务名”窗口,如图2.46所示。

图2.45网络服务名测试窗口 网络服务名测试窗口

图2.46 网络服务名窗口

2.2.1

数据库创建和删除

4. 配置数据库连接 (8) 单击“下一步”,进入“是否配置另一个网络服务名”窗口,如图2.47所 示。 (9) 选择“否”,单击“下一步”,网络服务名配置完毕。

图2.47 是否配置另一个网络服务名窗口

2.2.2

表创建、 表创建、修改和删除

1. 创建和管理表空间 既可以在Oracle企业管理器(Oracle Enterprise Manager)中创建表空间,也可以使用 CREATE TABLESPACE命令创建表空间。 ① 创建表空间 【例2.4 例2.4】使用OEM创建永久性表空间MYTS。 在图2.37所示的界面中,单击“创建”按钮,出现如图2.48所示的界面。该界面 包括3个选项页面:一般信息、存储和阈值。

创建表空间—一般信息选项页面 图2.48 创建表空间 一般信息选项页面

2.2.2
1.

表创建、 表创建、修改和删除

创建和管理表空间 单击“添加”按钮,按照例2.3为MYTS表空间创建数据文件MYTS01.DBF。创建完成 后,返回到图2.49所示的界面。 单击“存储”选项页面,则出现如图2.50所示的界面。在该选项卡中进行区分配 、段空间管理和启用事件记录设置。 在此选择本地管理,采用默认值。单击“确定”按钮。系统开始执行表空间的创 建任务,完成后返回到如图2.37所示界面,此时在该界面出现了MYTS表空间。

创建表空间—添加数据文件后的界面 图2.49 创建表空间 添加数据文件后的界面

本地管理——存储选项卡 图2.50 本地管理 存储选项卡

2.2.2

表创建、 表创建、修改和删除

1. 创建和管理表空间 ② 管理表空间 管理表空间包括修改表空间参数、添加数据文件和改变表空间 的状态等。在图2.37所示的界面中,单击选择要修改的表空间,打 开如图2.38所示的相应表空间的编辑界面。 在“一般信息”选项页面中可以对表空间的状态进行修改,可 以增删数据文件;而在“存储”选项页面中可以对表空间存储区的 大小进行修改。在如图2.38所示的界面中,可以添加、删除数据文 件。 注意:不能删除设置为默认永久性属性的表空间。

2.2.2

表创建、 表创建、修改和删除

1. 创建和管理表空间 (2) 利用CREATE TABLESPACE命令创建和管理表空间 ① 利用CREATE TABLESPACE创建表空间。创建表空间的用户必须拥有 CREATE TABLESPACE系统权限。在创建表空间前,必须先创建包含表空间的 数据库。 语法格式: 语法格式: CREATE TABLESPACE tablespace_name DATAFILE ‘path/filename’ [SIZE integer [ K∣M ]][ REUSE ] [ AUTOEXTEND [ OFF∣ ON [ NEXT integer [ K∣M ]] [ MAXSIZE [ UMLIMITED∣integer [ K∣M ] ] ] ] [ MINMUM EXTENT integer [ K | M ] ] [ DEFAULT STORAGE storage_clause ] [ ONLINE∣OFFLINE ] [ LOGGING∣NOLOGGING ] [ PERMANENT∣TEMPORARY ] [ EXTENT MANAGEMENT [ DICTIONARY ∣LOCAL [ AUTOALLOCATE∣UNIFORM [ SIZE integer [ K∣M ] ] ] ] ]

2.2.2

表创建、 表创建、修改和删除

语法格式: 语法格式: 其中: 其中: tablespace_name:将要创建的表空间的名称,该名称在数据库中是 惟一的,并且命名必须符合命名规则。 path/filename:一个或多个数据文件的存放路径与名称。 OFF/ON:禁止或允许自动扩展数据文件。 NEXT:指定当需要更多盘区时分配给数据文件的磁盘空间,以K或M 为单位。 MAXSIZE UMLIMITED︱integer [ K︱M ]:指定允许分配给数据文件 的最大磁盘空间。 MINMUM EXTENT:指定最小的长度,默认为操作系统和数据库块确 定。 ONLINE:在创建表空间之后使该表空间立即对授权访问该表空间的 用户可用。 OFFLINE:在创建表空间之后使该表空间不可用。

2.2.2
语法格式: 语法格式:

表创建、 表创建、修改和删除

LOGGING/NOLOGGING:指定日志属性,它表示将来的表、索引等 是否需要进行日志处理。默认值为LOGGING。 PERMANENT:指定表空间将用于保存永久对象,这是默认设置。 TEMPORARY:指定表空间将用于保存临时对象。 EXTENT MANAGEMENT:指定如何管理表空间的盘区。 DICTIONARY:指定使用字典表来管理表空间,这是缺省设置。 LOCAL:指定本地管理表空间。 AUTOALLOCATE:指定表空间由系统管理,用户不能指定盘区尺寸。 UNIFORM:指定使用SIZE字节的统一盘区来管理表空间。缺省的SIZE 为1M。如果既没指定AUTOALLOCATE又没指定UNIFORM,那么 AUTOALLOCATE就是缺省设置。

2.2.2

表创建、 表创建、修改和删除

语法格式: 语法格式: 注意: 注意:如果指定了LOCAL,就不能指定DEFAULT STORAGE storage_clause 和TEMPORARY。 DEFAULT STORAGE storage_clause:为在该表空间创建的全部对象指定 缺省的存储参数。storage_clause的语法格式如下: STORAGE ( INITIAL integer [ K︱M ] NEXT integer [ K︱M ] MINEXTENTS integer︱UNLIMITED MAXEXTENTS integer PCTINCREASE integer FREELISTS integer FREELIST GROUPS integer OPTIMAL [ integer [ K︱M ]︱NULL ] )

2.2.2

表创建、 表创建、修改和删除

1. 创建和管理表空间 【例2.5】创建大小为50M的表空间TEST,禁止自动扩展数据文件。 CREATE TABLESPACE “TEST” LOGGING DATAFILE ' D:\oradata\XSCJ\TEST101.DBF' SIZE 50M REUSE AUTOEXTEND OFF; 【例2.6】创建表空间DATA,允许自动扩展数据文件。 CREATE TABLESPACE DATA LOGGING DATAFILE 'D: \oradata\XSCJ\DATA01.DBF' SIZE 50M REUSE AUTOEXTEND ON NEXT 10M MAXSIZE 200M DEFAULT STROAGE(INITIAL 32K NEXT 32K MINEXTENTS 1 MAXEXTENTS 249 PCTINCREASE 50) EXTENT MANAGEMENT LOCAL;

2.2.2

表创建、修改和删除 表创建、

(2) 利用CREATE TABLESPACE命令创建和管理表空间 ② 利用命令管理表空间。利用ALTER TABLESPACE命令可以修改现有的表空间或它 的一个或多个数据文件。 语法格式: 语法格式: ALTER TABLESPACE tablespace_name [ ADD DATAFILE∣TEMPFILE ‘path/filename’ [ SIZE integer [ K∣M ] ] [ REUSE ] [ AUTOEXTEND [ OFF∣ ON [ NEXT integer [ K∣M ] ] MAXSIZE [ UNLIMITED∣integer [ K∣M ] ] ] [ RENAME DATAFILE ‘path\filename’,…n TO ‘path\re_filename’,…n ] [ DEFAULT STORAGE storage_clause ] [ ONLINE∣OFFLINE [ NORMAL∣TEMPORARY∣IMMEDIATE ] ] [ LOGGING∣NOLOGGING ] [ READ ONLY∣WRITE ] [ PERMANENT ] [ TEMPORARY ]

2.2.2

表创建、 表创建、修改和删除

语法格式: 语法格式: 其中: 其中: ADD DATAFILE∣TEMPFILE:向表空间添加指定的数据文件或临时文件。 RENAME DATAFILE:对一个或多个表空间的数据文件重命名。 READ ONLY:表明表空间上不允许进一步写操作。 READ WRITE:表明在先前只读表空间上允许写操作。 【例2.7】通过ALTER TABLESPACE命令把一个新的数据文件添加到 DATA表空间,并指定了AUTOEXTEND ON和 MAXSIZE 300M。 ALTER TABLESPACE DATA ADD DATAFILE ‘D:\ ORACLE\ORADATA\XSCJ\DATA02.DBF’ SIZE 50M REUSE AUTOEXTEND ON NEXT 50M MAXSIZE 500M; 注意: 注意:尽管可以设置MAXSIZE UNLIMITED,但应总是规定一个文件的最大尺 寸值。否则,使用磁盘设备上全部可用空间的事务将造成数据库故障。 修改表空间DATA属性,命令如下: ALTER TABLESPACE DATA OFFLINE;

2.2.2

表创建、 表创建、修改和删除

2. 数据类型 表是真正存储各种各样数据的对象,由行和列组成。行有时也称为记 录,列有时也称为字段或域。设计数据库时,要决定它包括哪些表,每 个表中包含哪些列,每列的数据类型等。 在表中创建列时,必须为其指定数据类型,列的数据类型决定了数据 的取值、范围和存储格式。列的数据类型可以是Oracle提供的系统数据 类型,将其列于表2.4中。

表2.4 Oracle数据类型 数据类型

2.2.2

表创建、 表创建、修改和删除

3. 创建表 创建表的实质就是定义表结构及约束条件等属性。 【例2.8】通过Oracle企业管理器(OEM)在XSCJ数据库中创建学生情况表。学 生情况表的表名为XS,表结构如表2.5所示。

2.2.2

表创建、 表创建、修改和删除

3. 创建表 通过Oracle企业管理器(OEM)创建表XS的操作步骤: (1) 使用ADMIN帐号(创建用户将在7.1节中介绍)登录OEM,在如图2.32所示 ,在“方案”类别中选择“表”,鼠标左键单击进入“表搜索”界面,如图 2.51所示。

图2.51 表搜索界面

2.2.2

表创建、 表创建、修改和删除

3. 创建表 (2) 单击“创建”按钮,进入“创建表:表的组织形式”界面,如图2.52所 示,指定表的存储类型及是否为临时表。

表创建: 图2.52 表创建:表的组织形式界面

2.2.2

表创建、 表创建、修改和删除

3. 创建表 (3) 单击“继续”按钮,进入“创建表”界面,如图2.53所示。该界面有5个 选项页面,可以完成对表的定义。

图2.53 一般信息界面

2.2.2

表创建、 表创建、修改和删除

3. 创建表 (3) 单击“约束条件”选项页面,进入“约束条件”选项界面,如图2.54所 示。在该选项页面可以定义表的完整性约束条件。

图2.54 约束条件界面

2.2.2

表创建、 表创建、修改和删除

3. 创建表 (4) 选择PRIMARY约束条件,单击“创建”按钮,进入如图2.55所示的添加约 束条件界面。

图2.55 添加约束条件界面

2.2.2

表创建、 表创建、修改和删除

3. 创建表 (5) 单击“确定”按钮,返回到2.55所示界面,这时在该界面能看到刚才添加的主键约 束条件。 (6) 在图2.55所示的界面中,单击“存储”选项页面,进入“存储”选项界面,如图 2.56所示。

图2.56 存储选项界面

2.2.2表创建、 2.2.2 表创建、修改和删除 表创建
3. 创建表 (7) 单击“选项”选项页面,进入“选项”选项界面,如图2.57所示。 (8) 单击“分区”选项页面,进入“分区”选项界面,如图2.58所示。

图2.57 选项选项界面

图2.58 分区选项界面

2.2.2

表创建、 表创建、修改和删除

4. 修改表 对一个已存在的表可以进行的修改操作包括: 1.增加列 2.删除列 3.修改已有列的属性(列名、数据类型、是否为空值) 4.修改存储方式等信息

2.2.2

表创建、 表创建、修改和删除

4. 修改表 (1) 增加列 当原来所创建的表中需要增加项目时,就要向表中增加列。 【例2.9】表XS中添加一个“奖学金等级”,名称JXJ,NUMBER类型,允许为空值。 在如图2.51所示界面,选择表XS,单击“编辑”按钮,进入如图2.59所示界面。

修改表XS 图2.59 修改表

2.2.2

表创建、 表创建、修改和删除

4. 修改表 (2) 删除列 选择要删除的列,选中要删除列的“选择”单选按钮,单击“删除”按钮;然 后单 击“应用”保存修改后的表。 (3) 修改列的属性 在表中尚未有记录值时,可以修改表结构,如更改列名、列的数据类型、长度 和是否允许空值等属性。 (4) 修改存储情况 在“存储”选项卡中可以修改表的存储方式;在“选项”选项卡中修改表的并 发操 作和事务处理等特性。 5. 表的删除 删除一个表时,表的定义、表中的所有数据以及表的索引、触发器、约束等均 被删除。 注意:不能删除系统表和有外键约束所参照的表。 注意

上机题
? 修改USERS01数据文件大小为无限制; ? 增加USERS02、USERS03数据文件, USERS02数据文件大小为1024MB,自动 增长;USER03数据文件大小为512MB,不 能自动增长; ? 使用DBCA删除数据库; ? 熟悉网络配置器的作用,配置orcl默认数据 库新的连接名称:NEWORCL ? 用OEM创建教师表、学生表,字段自己设 计;


赞助商链接
相关文章:
深入浅出Oracle之Forms开发指南
深入浅出Oracle之Forms开发指南_计算机软件及应用_IT/计算机_专业资料。Oracle ERP最佳技术实践 E-BUSINESS SUITE ORACLE 核心应用技术 Forms开发指南 Author: Creation...
ORACLE 开发管理经验
ORACLE 开发管理经验_计算机软件及应用_IT/计算机_专业资料 暂无评价|0人阅读|0次下载|举报文档ORACLE 开发管理经验_计算机软件及应用_IT/计算机_专业资料。Oracle ...
Oracle基础开发规范V1.0
Oracle基础开发规范V1.0_计算机软件及应用_IT/计算机_专业资料。赛意信息科技有限公司 Oracle基础开发规范 创建日期:2015-3-24 当前版本:1.1 提交者:赛意信息...
oracle ebs 报表开发步骤
oracle ebs 报表开发步骤_计算机软件及应用_IT/计算机_专业资料。PLSQL 报表开发步骤 1. PLSQL 创建 package 1.1 在 PL/SQL Developer 中创建一个 package。 ...
oracle数据库开发规范
oracle数据库开发规范_计算机软件及应用_IT/计算机_专业资料。编程规范 1:所有数据库关键字和保留字都大写;字段、变量的大小写 2:程序块采用缩进风格书写,保证代码...
Oracle_开发数据库应用工程师面试题_必备.
Oracle_开发数据库应用工程师面试题_必备. - Oracle_开发数据库英语工程师面试题 必备 1.()是 Oracle 维护数据库中其他文件的列表、数据库名称和系统改 变号(...
9-实验九-基于Oracle数据库的应用开发(综合实验报告模板)
9-实验九-基于Oracle数据库的应用开发(综合实验报告模板)_计算机软件及应用_IT/计算机_专业资料。orcal 网络数据库 实验报告 题目: 图书管理系统数据库设计与开发 ...
Oracle ERP 界面开发(form)_图文
Oracle ERP 界面开发(form)_计算机软件及应用_IT/计算机_专业资料。Oracle ERP 界面开发(form) Oracle Form 開發(1)--FormBuilder 前期準備安裝 acle Form 6i ...
在Visual C++下开发Oracle库
在Visual C++下开发Oracle库_计算机软件及应用_IT/计算机_专业资料。在Visual C++下开发Oracle库 在Visual C++下开发 Oracle 库接口主要有两种方法。 一种方法是...
DB2和ORACLE 应用开发差异比较
DB2和ORACLE 应用开发差异比较_IT/计算机_专业资料。DB2和ORACLE 应用开发差异比较DB2 和 ORACLE 应用开发差异比较 Oracle 和 DB2 数据库对象的异同 Oracle Instance...
更多相关标签: