2022年oraclei中文版基础培训教程 .pdf
《2022年oraclei中文版基础培训教程 .pdf》由会员分享,可在线阅读,更多相关《2022年oraclei中文版基础培训教程 .pdf(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第 7 章数据管理常用数据方案对象第 7 章数据管理常用数据方案对象本章通过实例的方法详细介绍Oracle 9i数据库中常用的数据方案对象的使用和管理方法。7.1 Oracle 9i 的方案对象7.1.1 数据方案对象表 7.1 Oracle 9i 的数据方案对象名称含义数据表表是用于存放用户数据的数据库对象。数据库中的表按照功能的不同可以分为系统表和用户表两类。系统表用于存储管理用户数据和数据库本身的数据,又称数据字典表;用户表用于存放用户的数据信息,默认建立的数据表就是用户表索引索引就犹如一本书的目录,利用它可以快速找到所需要的内容。索引总是和数据表紧密相关联的视图视图是查看数据表中数据的
2、一种方法,使用视图的主要目的就是确保数据表的安全性和隐蔽数据的复杂性。视图不是数据表,仅仅是一些SQL 查询语句的定义7.1.2 管理方案对象表 7.2 Oracle 9i 的管理方案对象名称含义数据库链接管理分布式网络数据库服务器环境的登录用户名、口令和数据库位置同义词同义词用于隐藏表的用户名和数据表名,提供安全性序列直接产生唯一的顺序序号的一种方案对象实体化视图包含了对一个或多个数据表的查询结果的数据表,又称快照实体化视图日志记录上一次快照刷新后对数据表所做的所有修改信息的数据表,又称快照日志刷新组设置对数据库用户下的所有对象什么时间、按照什么条件进行刷新簇将一些互相关联,具有相同字段的数
3、据表集中存储的一种管理结构表类型表类型也可以称为嵌套表类型,在表的定义里可以包含嵌套表 131 名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 31 页 -Oracle 9i中文版基础培训教程 7.1.3 PL/SQL 编程方案对象表 7.3 Oracle 9i 的 PL/SQL 编程方案对象名称含义过程过程也叫做存储过程,是由 SQL 语句和 PL/SQL 语句组合在一起为执行某一个任务的一个可执行单位,类似于高级程序设计语言中的模块函数函数和过程的结构类似。过程和函数差别在于,函数总返回单个值给调用者,而过程没有值返回给调用者程序包程序包也称为包,是被集中到一个单独的单元的一
4、组过程、函数、变量和 SQL 语句的定义程序包体程序包体也称为包体,是与对应的程序包同名的,关于程序包内声明的函数、过程的详细执行代码触发器触发器是一种特殊类型的存储过程,由一些SQL 语句组成,主要用于执行强制性的业务规则或要求,但不返回结果对象类型对象是面向对象分析与设计的基本概念,具有相同的属性和服务的对象被称为类,在 Oracle 9i 中把类称为对象类型,在一些数据库书籍里也称为抽象数据类型数组类型在 Oracle 8 中被称为可变数组。提供了自定义数组功能,包括数组元素的个数、元素的类型、长度和精度等。高级队列一种数据的存储结构,特点是先进先出Java源一些 Java源代码,这些源
5、代码可以作为Java共享过程相互调用维对数据仓库中的数据进行分类的逻辑结构7.1.4 如何查看方案对象如图 7.1 所示界面。列举了Oracle 9i 中的 21 种方案对象。图 7.1 Oracle 9i 的方案对象 132 名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 31 页 -第 7 章数据管理常用数据方案对象7.2 Oracle 9i 的数据类型Oracle 9i 共提供了16 种标量数据类型,如表7.4 所示。表 7.4 Oracle 9i 的标量数据类型名称含义Char 用于描述定长的字符型数据,长度=2000 字节varchar2 用于描述变长的字符型数据,长度
6、=4000 字节nchar 用来存储 Unicode 字符集的定长字符型数据,长度=1000 字节nvarchar2 用来存储 Unicode 字符集的变长字符型数据,长度=1000 字节number 用来存储整型或者浮点型数值Date 用来存储日期数据Long 用来存储最大长度为2GB 的变长字符数据Raw 用来存储非结构化数据的变长字符数据,长度=2000 字节Long raw 用来存储非结构化数据的变长字符数据,长度=2GB rowid 用来存储表中列的物理地址的二进制数据,占用固定的10 个字节Blob 用来存储多达4GB 的非结构化的二进制数据Clob 用来存储多达4GB 的字符数据
7、nclob 用来存储多达4GB 的 Unicode 字符数据Bfile 用来把非结构化的二进制数据存储在数据库以外的操作系统文件中urowid 用来存储表示任何类型列地址的二进制数据float 用来存储浮点数7.3 Oracle 9i 的数据表类型表 7.5 Oracle 9i 的数据表类型方式特点关系表默认的表类型,存储永久性的数据,可以被分区,这样可以改善表的性能并易于管理临时表存储私有数据或一个会话中特定的数据,数据库中的其他用户不能使用这些数据索引表按照结构化主关键字进行排序的方式存储数据,和关系表不同的是不能把表和主关键字分开存储外部表数据存储在Oracle 数据库外部的文件中,只能
8、读,因此任何索引都不能存储在外部表中对象表支持面向对象的数据表 133 名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 31 页 -Oracle 9i中文版基础培训教程 7.4 创建数据表7.4.1 要创建的两个数据表1.研究生信息表表名:scott.student。表结构如表7.6 所示。表 7.6 scott.student数据表结构名称数据类型大小小数位数说明STUDENT_ID NUMBER 8 0 学生编号(主码)NAME VARCHAR2 10 姓名PROFESSIONAL VARCHAR2 20 专业BIRTHDAY DATE 生日DIRECTOR_ID NUMBE
9、R 6 0 导师编号(外码)2.导师信息表表名:scott.director。表结构如表7.7 所示。表 7.7 scott.director 数据表结构名称数据类型大小小数位数说明DIRECTOR_ID NUMBER 6 0 导师编号(主码)NAME VARCHAR2 10 姓名ZHICHENG VARCHAR2 20 职称ZHIWU VARCHAR2 20 职务3.两个数据表的关系导师信息表(scott.director)的主码“DIRECTOR_ID”是研究生信息表(scott.student)的外码。也就是说,当导师信息表的“DIRECTOR_ID”字段发生变化时,研究生信息表的字段“
10、DIRECTOR_ID”也会随之自动发生变化。7.4.2 创建的步骤1.创建导师信息表的步骤(1)如图 7.2 所示界面。(2)出现如图7.3 所示的创建表的【一般信息】选项卡。134 名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 31 页 -第 7 章数据管理常用数据方案对象图 7.2 选择创建表图 7.3 创建表的【一般信息】选项卡(3)切换到图7.4 所示的创建表的【约束条件】选项卡。图 7.4 创建表的【约束条件】选项卡在【类型】单元格下拉列表框中有5 个选项,如表7.8 所示。表 7.8 约束条件类型名称含义PRIMARY 主关键字,即主码FOREIGN 外关键字,即
11、外码NOT NULL 非空,字段值不能为空值UNIQUE 惟一,字段取值不能重复CHECK 检查,检查是否满足指定的条件【表结构编辑区】135 名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 31 页 -Oracle 9i中文版基础培训教程(4)切换到图7.5 所示的创建表的【簇列】选项卡。(5)切换到图7.6 所示的创建表的【分区】选项卡。图 7.5 创建表的【簇列】选项卡图 7.6 创建表的【分区】选项卡(6)切换到图7.7 所示的创建表的【存储】选项卡。(7)切换到图7.8 所示的创建表的【存储】选项卡。图 7.7 创建表的【存储】选项卡图 7.8 创建表的【选项】选项卡(
12、8)切换到图7.9 所示的创建表的【约束条件存储】选项卡。(9)出现如图7.10 所示界面。136 名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 31 页 -第 7 章数据管理常用数据方案对象图 7.9 创建表的【约束条件存储】选项卡图 7.10 成功创建表scott.director(10)在【企业管理器】中可以查看创建的数据表,如图7.11 所示。图 7.11 查询表 scott.director(11)上述步骤创建scott.director 数据表的SQL 代码如下。CREATE TABLE SCOTT.DIRECTOR(DIRECTOR_ID NUMBER(6)NOT
13、 NULL,NAME VARCHAR2(10)NOT NULL,ZHICHENG VARCHAR2(20)NOT NULL,ZHIWU VARCHAR2(20)NOT NULL,CONSTRAINT 导师编号主码 PRIMARY KEY(DIRECTOR_ID)USING INDEX TABLESPACE USERS)TABLESPACE USERS【参见光盘文件】:第 7 章createdirector.sql。在创建主关键字约束条件时将自动建立该字段的索引。(12)读者也可以在【SQL Plus Worksheet】中直接执行createdirector.sql 文件创建数据 137 名师
14、资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 31 页 -Oracle 9i中文版基础培训教程 表 scott.director,如图 7.12 所示。图 7.12 在【SQLPlus Worksheet】中创建数据表scott.director 2.创建研究生信息表的步骤(1)与创建导师信息表一样进行操作。(2)在图 7.13 所示的创建表的【一般信息】选项卡中按照如下步骤进行配置。(3)图 7.14 所示为创建表的主码的【约束条件】选项卡。图 7.13 创建表的【一般信息】选项卡图 7.14 创建表的主码的【约束条件】选项卡(4)图 7.15 所示为创建表的外码的【约束条件】选
15、项卡。(5)【簇列】、【分区】、【存储】和【选项】选项卡按照默认设置即可。(6)图 7.16 所示的【约束条件存储】选项卡按照如下配置。138 名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 31 页 -第 7 章数据管理常用数据方案对象Student表的DIRECTOR_ID 列Director 表的DIRECTOR_ID 列图 7.15 创建表的外码的【约束条件】选项卡图 7.16 创建表的【约束条件存储】选项卡(7)系统将成功创建数据表scott.student。对应的SQL 代码如下。CREATE TABLE SCOTT.STUDENT(STUDENT_ID NUMBER
16、(8)NOT NULL,NAME VARCHAR2(10)NOT NULL,PROFESSIONAL VARCHAR2(10)NOT NULL,BIRTHDAY DATE NOT NULL,DIRECTOR_ID NUMBER(6)NOT NULL,CONSTRAINT 研究生编号主码 PRIMARY KEY(STUDENT_ID)USING INDEX TABLESPACE USERS,CONSTRAINT 导师编号外码 FOREIGN KEY(DIRECTOR_ID)REFERENCES SCOTT.DIRECTOR(DIRECTOR_ID)TABLESPACE USERS【参见光盘文件】
17、:第 7 章createstudent.sql。图 7.17 在【SQLPlus Worksheet】中创建数据表scott.student(8)读者也可以在【SQL Plus Worksheet】中 直 接 执 行createstudent.sql 文件创建数据表scott.student,如图 7.17 所示。(9)在【企业管理器】中可以查看建立的两个范例数据表,如图7.18 所示。139 名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 31 页 -Oracle 9i中文版基础培训教程 图 7.18 成功建立的两个范例数据表7.5 修改数据表结构(1)如图 7.19 所示。图
18、 7.19 选择修改数据表结构图 7.20 编辑表的【一般信息】选项卡(2)出现如图7.20 所示的编辑表的【一般信息】选项卡。(3)其他选项卡的操作比较简单,这里不再赘述。7.6 数据表中数据的管理下面介绍如何操作数据表中的数据。140 名师资料总结-精品资料欢迎下载-名师精心整理-第 10 页,共 31 页 -第 7 章数据管理常用数据方案对象7.6.1 向数据表中插入数据1.向导师信息表中插入数据(1)在图 7.19 所示的快捷菜单中选择【表数据编辑器】选项,出现如图7.21 所示的界面。可以按照二维表格输入数据。(2)单击按钮可以查看输入的数据对应的SQL 代码。(3)数据输入完毕后,
19、单击按钮可以完成数据的插入。图 7.21 表数据编辑器(4)上述过程对应的SQL 代码如下。INSERT INTO SCOTT.DIRECTOR(DIRECTOR_ID,NAME,ZHICHENG,ZHIWU)VALUES(200201,张三丰,博导,系主任);INSERT INTO SCOTT.DIRECTOR(DIRECTOR_ID,NAME,ZHICHENG,ZHIWU)VALUES(200202,张翠山,硕导,室主任);INSERT INTO SCOTT.DIRECTOR(DIRECTOR_ID,NAME,ZHICHENG,ZHIWU)VALUES(200203,张无忌,硕导,所主任)
20、;INSERT INTO SCOTT.DIRECTOR(DIRECTOR_ID,NAME,ZHICHENG,ZHIWU)VALUES(200204,宋远桥,博导,系副主任 );【参见光盘文件】:第 7 章insertdirector.sql。(5)读者也可以在【SQL Plus Worksheet】中直接执行insertdirector.sql 文件向数据表scott.director 中插入数据。2.向研究生信息表中插入数据(1)对研究生信息表进行同样的数据插入操作。如图7.22 所示。141 名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 31 页 -Oracle 9i中文
21、版基础培训教程 图 7.22 向 scott.student表中插入的数据(2)字段“BIRTHDAY”是日期型字段,读者可能不知道该如何插入日期型的数据。单击按钮,出现如图7.23 所示的界面。可以观察到这样的日期型字段数据插入格式。TO_DATE(,dd-Mon-yyyy HH:MI:SS AM)这表明日期型字段是按照“日期月份年小时 分钟秒”来插入的。图 7.23 分析日期型数据的插入格式(3)分析出格式还不一定能够正确录入日期型数据。这里告诉读者一个笔者摸索出来的简便的办法。在scott 用户下有一个数据表emp,其中有一个hiredate 字段是日期型的。142 名师资料总结-精品资
22、料欢迎下载-名师精心整理-第 12 页,共 31 页 -第 7 章数据管理常用数据方案对象必须将范例数据中的月份进行更改才能正确插入数据图 7.24 日期型数据的范例(4)最后完成完整的scott.student 数据表数据的插入,如图7.25 所示。图 7.25 完整的日期型数据插入实例【参见光盘文件】:第 7 章insertstudent.sql。(5)上述过程对应的SQL 代码如下。读者也可以在【SQLPlus Worksheet】中直接执行insertstudent.sql 文件完成数据的插入。INSERT INTO SCOTT.STUDENT(STUDENT_ID,NAME,PROF
23、ESSIONAL,BIRTHDAY,DIRECTOR_ID)VALUES(20020101,周芷若,软件工程 ,TO_DATE(20-11 月-1976,dd-Mon-yyyy HH:MI:SS AM),200201 );INSERT INTO SCOTT.STUDENT(STUDENT_ID,NAME,PROFESSIONAL,BIRTHDAY,DIRECTOR_ID)VALUES(20020102,赵敏,计算机安全 ,TO_DATE(7-10 月-1980,dd-Mon-yyyy HH:MI:SS 143 名师资料总结-精品资料欢迎下载-名师精心整理-第 13 页,共 31 页 -Orac
24、le 9i中文版基础培训教程 AM),200202 );INSERT INTO SCOTT.STUDENT(STUDENT_ID,NAME,PROFESSIONAL,BIRTHDAY,DIRECTOR_ID)VALUES(20020103,小昭,图形图像 ,TO_DATE(22-10 月-1973,dd-Mon-yyyy HH:MI:SS AM),200203 );INSERT INTO SCOTT.STUDENT(STUDENT_ID,NAME,PROFESSIONAL,BIRTHDAY,DIRECTOR_ID)VALUES(20020104,蛛儿,电子商务 ,TO_DATE(11-1 月-
25、1971,dd-Mon-yyyy HH:MI:SS AM),200204 );INSERT INTO SCOTT.STUDENT(STUDENT_ID,NAME,PROFESSIONAL,BIRTHDAY,DIRECTOR_ID)VALUES(20030101,金花婆婆 ,数据库,TO_DATE(6-8 月-1945,dd-Mon-yyyy HH:MI:SS AM),200201 );INSERT INTO SCOTT.STUDENT(STUDENT_ID,NAME,PROFESSIONAL,BIRTHDAY,DIRECTOR_ID)VALUES(20030102,胡青牛,网络安全 ,TO_D
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年oraclei中文版基础培训教程 2022 oraclei 中文版 基础 培训 教程
限制150内