《数据库高级开发》教案正文Word文档格式.docx
- 文档编号:21972918
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:69
- 大小:175.72KB
《数据库高级开发》教案正文Word文档格式.docx
《《数据库高级开发》教案正文Word文档格式.docx》由会员分享,可在线阅读,更多相关《《数据库高级开发》教案正文Word文档格式.docx(69页珍藏版)》请在冰豆网上搜索。
三、Oracle的管理工具
1.企业管理器
2.SQL*PLUS工具
(1)启动SQL*PLUS的方法
(2)使用SQL*PLUS连接数据库
3.SQLDeveloper工具
(1)启动SQLDeveloper
(2)创建数据库连接
心得
作业
完成学习通发布的作业
完成课后练习题
备注
第1周第2次
(实验:
OracleOracle11g的安装,SQLDeveloper工具的使用,
SQL*PLUS工具的使用)
掌握如何安装Oracle数据库
掌握使用SQLDeveloper创建数据库连接
掌握SQL*PLUS工具的基本使用方法
Oracle11g的安装
SQLDeveloper工具的使用
SQL*PLUS工具的使用
演示法,讲解法,任务驱动法
计算机
1.操作准备
(1)Windows7操作系统环境
(2)Oracle11g安装包
2.安装Oracle数据库
(1)具体步骤略
(2)检查安装的数据库服务器产品及相关目录信息。
选择“开始”→“所有程序”→“Oracle-OraDb11g_home1”。
(3)检查安装后操作系统物理文件,文件夹所占硬盘空间。
(4)检查安装后的Oracle服务。
3.SQLDeveloper工具的使用
①首先启动SQLDeveloper。
选择“开始”-->
“程序”-->
Oracle-OraDb11g_home1”-->
“SQLDeveloper”。
②创建数据库连接
4.通过SQLDeveloper工具查询员工表(emp表)的信息
例:
在代码编辑区中输入如下SQL命令
select*fromsccott.emp;
5.进行网络监听配置;
6.登录SQL*PLUS
SQL*PLUS是最常用的用于连接和使用Oracle数据库的实用程序。
SQL*PLUS包括在OracleDatabase11g服务器软件和客户机软件中。
在服务器或客户机上安装了SQL*PLUS软件之后,登录服务器或客户机并启动一个SQL*PLUS会话是一个非常的过程。
由于每个SQL*PLUS会话都涉及与数据库的连接,只要提供一个合法的用户名/密码组合就可以启动SQL*PLUS会话并连接数据库。
(1)启动SQL*PLUS
(2)使用SQL*PLUS连接数据库
(3)在SQL*PLUS查询志愿表的所有信息(dept表)
使用scott用户连接Oracle后,在提示符“SQL>
”后输入如下语句:
select*fromdept;
完成上机练习,课后巩固操作
第2周第1次
第二章数据库创建
掌握Oracle数据库物理存储结构;
掌握Oracle数据库逻辑存储结构;
理解实例,内存结构
Oracle数据库的物理存储结构
Oracle数据库的逻辑存储结构
讲授法
1.Oracle数据库基本概念
2.Oracle数据库体的体系结构:
3.逻辑存储结构
包括表空间、段、区和数据快。
他们之间的关系是多个数据库组成一个区,多个区组成一个段,多个段组成一个表空间,多个表空间组成数据库,所以图如下:
①表空间:
Oralce中,最大的逻辑存储结构是表空间(tablespace)。
表空间和物理上的数据文件相对应。
②段(Segment)是一组盘区,这组盘区组成了被Oracle视为一个单位的数据库对象,比如表或索引。
因此,段是数据库终端用户将处理的最小单位。
分为5种段:
数据段:
存储表中数据。
索引段:
存储表中所有索引。
临时段:
存储临时数据。
LOB段:
用于存储表中的大型数据对象。
回退段:
用于存储用户数据被修改之前的值。
③区:
Oracle中,区是磁盘空间分配的最小单位。
段的增大是通过增加区的个数来实现的,在个数并非是没有限制的。
创建段的时候,可以使用Min_extents和Max_extents来定义区的个数。
④块(Block)是用来管理存储空间的最基本单位,也是最小的逻辑存储单位。
在创建Oracle数据库时,初始化参数DB_BLOCK_SIZE用来指定一个数据库的大小。
数据库创建之后,无法修改数据库的大小。
比如:
数据块的结构如下:
块头部:
数据库中的一搬性信息,比如数据库的物理地址。
表目录:
存储表的信息。
行目录:
存储数据库中有效的行信息。
空闲空间:
还没有使用的存储空间。
行空间:
存储表或索引的数据。
4.物理存储结构,Oracle数据库在物理上主要有3种类型的文件组成,分别是:
(1)数据文件(*.dbf):
指存储数据库数据的文件,也就是我们平时新建的数据库。
比如表中的记录、索引都存储在数据文件中。
我们需要注意的时候,用户在读取数据的时候,如果用户读取的数据不在缓冲区(就像我们操作系统也有一个缓存,在计算机中为了提高系统的性能,把一些常用的数据放在内存中),那么就从数据库中读取出来,放到内存中去。
存储数据的时候,也是先把数据保存到缓冲区中,然后再后台进程DBWn讲数据写入到数据文件中。
我们可以通过dba_data_files数据字典(数据字典就是存储一些系统数据)数据文件的状态。
有一些字段解释一下:
Blocks:
数据文件所占用的数据块数
autoextensible:
数据文件是否允许扩展
tablespace_name:
数据文件对应的表空间名
(2)控制文件(*.ctl):
是一个二进制文件,用来描述数据库的物理结构。
主要存放着数据库中的数据文件和日志文件信息。
如果在使用Oracle过程中,损坏了控制文件,那么数据库将无法正常工作。
注:
Oracle一般会默认创建3个包含相同信息的控制文件,目的是为了当其中一个受损时,可以调用其他控制文件来继续工作。
(3)日志文件(*.log):
是记录数据库中所修改信息的文件,保证数据库安全,也可以实现数据的备份与恢复。
如果status位current表名系统正在使用该字段对应的日志文件。
如果是inactive,则没有使用。
当一个日志文件组的空间被占用完了之后,Oracle系统会自动转换到另一个日志文件组。
不过,也可以使用altersystemswithchlogfile进行手动切换。
(4)其他文件
当然,除了上面的之外还有其他的一些文件。
参数文件:
记录Oracle数据库的基本信息,比如数据库名和控制文件所在的路径等。
备份文件:
可以借助备份文件对受损文件进行备份
归档重做日志文件:
对写满的日志文件进行复制并保存
警告、跟踪日志文件:
如果一个进程发现了一个内部错误时,可以将关于错误的信息存储到它的跟踪文件中。
5.内存结构
当用户发出一条SQL命令时,服务器进程会对这条SQL语句进行语法分析并执行它,然后将用户所需要的数据从磁盘的数据文件中读取出来,存放在系统全局区中的数据缓冲区中。
如果用户进程对缓冲区中的数据进行了修改,则修改后的数据将由数据库写入进程DBWn希尔磁盘数据文件中。
按照系统对内存的使用方法不同,Oracle数据库的内存分为以下几部分:
①系统全局区(SGA)
是Oracle位系统分配的一组可共享的一组共享的内存结构,可以保护一个数据实例的数据或控制信息。
系统全局区按照作用的不同可以分为:
数据缓冲区:
用于存储从磁盘数据文件中读取的数据,供所有用户共享。
日志缓冲区:
用于存储数据库的修改操作信息。
共享池:
共享池用来保存最近执行的SQL语句、PL/SQL程序的数据字典信息,它是对SQL语句和PL/SQL程序进行语法分析、编译和执行的内存区域。
共享池的大小由shared_pool_size确定。
②程序全局区(ProgramGlobalArea,PGA)是包含单个用户或服务器数据和控制信息的内存区域,它在用户进程连接到Oracle数据库并创建一个会话是,由Oracle自动分配。
③排序区(SortArea)是Oracle系统为排序操作所产生的临时数据提供的内存空间。
④大池(LargePool):
提供一个大的缓冲区供数据库的备份与恢复操作使用。
6.实例进程
①DBWn(DataBaseWrite,数据库写入)进程是赋值管理数据缓冲区的后台进程,用于将缓冲区中的数据写入到数据文件。
和DBWR是一个概念,DBWR就是databasewriter,就是写数据文件的进程,后来允许多进程写datafile,所以改成DBWn了
②LGWR(LogWrite,日志写入)进程是负责管理日志缓冲区的一个后天进程,用于将日志缓冲区中的日志数据写入磁盘的日志文件。
③CKPT(CheckPoint)进程保存所有修改过的数据缓冲区中的数据都被写入磁盘数据文件中。
默认情况是1800秒。
④SMON(SystemMonitor)进程:
用于在实例启动时执行实例恢复,并负责清理不在使用的临时段。
⑤PMON(ProcessMonitor)进程:
用于在用户进程出现故障时执行恢复操作。
⑥ARCH/ARCn(ArchiveProcess,归档):
将写满日志文件复制到归档日志文件中。
⑦RECO(Recovery)进程:
用在分布式数据库系统中,用于自动解决在分布式数据库中出现的事物故障。
⑧LCKn(Lock)进程:
存在于并行服务器系统中,用于实现多个实例间的封锁。
⑨Dnnn(Dispatchers)进程:
存在于多线程服务器体系结构中,用于将用户进程连接到服务器进程中。
第2周第2次
使用界面方式创建数据库
使用命令创建数据库)
掌握界面方式创建数据库;
掌握命令方式创建数据库
数据库的创建、数据库的修改
演示法,任务驱动法
1.界面方式创建数据库
创建数据库最简单的方法就是使用Oracle数据库配置向导来完成,数据库配置向导是Oracle提供的一个图形化界面的工具,用来帮助数据库管理员快速、直观的创建数据库。
可以使用DBCA完成以下任务:
(1)创建数据库
(2)更改已有数据库的配置
(3)删除数据库
(4)管理模板
2.数据库的创建与删除
2.1数据库的创建
2.2数据库的删除:
2.3数据库的修改;
3.上机实验,实验内容如下:
(1)使用DBAC创建一个员工信息管理的数据库MR;
(2)使用DBAC删除数据库MR;
(3)将MR数据库的USERS01.DBF的最大文件大小改为无限制;
(4)在MR数据库增加数据文件users03.dbf,其属性均取系统默认值;
(5)删除数据文件
4.使用createdatabase语句创建数据库mydb。
5.修改数据库
alterdatabasedatabase_name
6.删除数据库
dropdatabasedatabase_name
按要求完成课后练习题
第3周第1次
第三章表与数据操作
了解关于数据表的基本概念;
掌握数据类型
掌握如何管理和创建表空间;
1.表和表结构
2.Oracle数据类型
3.表结构设计
4.创建和管理表空间
创建和管理表空间
演示法
(3课时)
1.表和表结构
(1)什么是表结构
(2)什么是记录
(3)什么是字段
(4)什么是关键字
2.数据类型
(1)常用的数据类型有哪些
(2)每种数据类型的介绍
3.表结构设计
(1)以课本的三张表为例,介绍如何设计表的结构(P53)
4.创建和管理表空间
(1)回顾相关表空间概念
默认的表空间有哪些
(2)通过实例来说明创建表空间的具体操作
详细步骤略,P54
5.命令方式创建表空间
(1)创建表空间必须要考虑的要素有哪些
(2)命令创建表空间的语法格式
(3)通过本地化管理方式创建表空间,例子演示
(4)通过段空间管理方式创建表空间,例子演示
第3周第2次
掌握如何创建和维护数据表
创建和维护数据表
讲授法,演示法
1.界面方式操作表
(1)OEM方式操作表
步骤略,课上演示P60
(2)修改表
使用alter命令完成:
为表中增加数据字段,修改表中字段,删除表中字段,并分别通过具体的例子演示
(3)删除表
如果不在使用数据库中的某些数据表,则可以通过如下语法格式进行数据表的删除操作
droptable表名
2.操作表数据
(1)插入数据
使用insert语句的注意事项;
单条插入数据:
使用列列表增加数据,不使用列列表增加数据;
批量插入数据;
3.修改记录
(1)更新单列数据
(2)更新多列数据
4.删除记录
(1)delete语句
举例演示
(2)truncate语句
5.完成上机操作练习
第4周第1次
第四章数据库的查询和视图
了解关系运算中的选择、投影和连接
掌握select查询语句的使用
关系运算
数据库的查询
1.选择、投影和连接
关系运算:
连接、选择和投影,关系运算的特点是运算的对象和结果都是表
(1)选择
选择的概念
(2)投影
投影的概念
(3)连接
连接的概念,等值连接,自然连接
2.数据库查询
(1)基本语法格式
(2)选择列
语法格式,例子讲解,操作演示
(3)查询所有列,查询指定列
例子讲解,操作演示
(3)为列名指定别名
(4)计算列值
(5)消除结果集中的重复行
3.选择行
(1)语法格式
(2)表达式比较
(3)模式匹配
(4)范围比较
(5)空值比较
第4周第2次
select查询语句的使用
1.学生上机实验
实验内容:
设有一数据库,包括四个表:
学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。
四个表的结构分别如表1-1的表
(一)----表(四)所示。
用SQL语句创建四个表并完成相关题目。
表1-1数据库的表结构
查询问题:
1、查询Student表中的所有记录的Sname、Ssex和Class列。
2、查询教师所有的单位即不重复的Depart列。
3、查询Student表的所有记录。
4、查询Score表中成绩在60到80之间的所有记录。
5、查询Score表中成绩为85,86或88的记录。
6、查询Student表中“95031”班或性别为“女”的同学记录。
第5周第1次
掌握子查询;
掌握视图的创建和使用
子查询,连接,数据库视图
子查询,统计
1.子查询
(1)单行子查询
是指返回一行数据的子查询语句,往在where子句中引用单行子查询时,可以使用单行比较运算符(<
、>
、=、>
=、<
=和<
>
)
(2)多行子查询
是指返回多行数据的子查询语句,当在where子句中使用多行子查询时,必须使用多行比较符(in、any、all)
2.连接
(1)表别名
(2)内连接
(3)外连接
左外连接,右外连接,完全连接
(4)自然连接,自连接,交叉连接
3.统计
(1)聚合函数,groupby函数,having子句
4.排序
5.数据库视图
(1)视图概念
(2)创建视图
在SQLdeveloper中创建视图;
使用createview语句创建视图;
(3)查询视图、更新视图、修改视图、删除视图
6.完成上机练习
第5周第2次
表与数据操作
掌握子查询,视图的操作
子查询,视图的操作
查询score中选学多门课程的同学中分数为非最高分成绩的记录。
1、查询成绩高于学号为“109”、课程号为“3-105”的成绩的所有记录。
2、查询和学号为108的同学同年出生的所有学生的Sno、Sname和Sbirthday列。
3、查询选修某课程的同学人数多于5人的教师姓名。
4、查询“计算机系”与“电子工程系“不同职称的教师的Tname和Prof。
5、查询选修编号为“3-105“课程且成绩至少高于选修编号为“3-245”的同学的Cno、Sno和Degree,并按Degree从高到低次序排序。
项目二,视图练习,创建视图,具体案例略
第6周第1次
第五章索引与数据完整性
了解索引的分类
掌握索引对象的创建和维护
掌握约束的主要作用
掌握4种约束的使用形式
掌握操作约束的方法
索引的创建和维护,操作约束的方法
1.索引的分类
(1)索引的概念
(2)索引的分类
2.建立索引的注意事项
3.创建索引
(1)在SQLDeveloper中创建索引
通过演示实例来讲解在SQLDeveloper中创建索引的过程。
(2)使用SQL命令创建索引
(3)建立B树
根块,分支块,叶块
通过例子演示,讲解如何创建索引
(4)建立位图索引
通过例子演示,讲解如何创建位图索引
4.维护索引
(1)在SQLDeveloper中维护索引
通过例子演示,讲解如何在SQLDeveloper中维护索引
(2)使用SQL命令维护索引
通过例子演示,讲解如何使用SQL命令维护索引
5.删除索引
(1)界面方式删除索引
(2)使用SQL命令删除索引
6.数据的完整性和约束性
(1)约束的类型包括哪些
(2)非空约束
什么是非空约束,通过例子演示,讲解如何添加非空约束
(3)主键约束
什么是主键约束,通过例子演示,讲解如何添加主键约束
(4)唯一约束、外键约束
通过例子演示,讲解如何添加唯一约束、外键约束
(5)禁用约束、激活约束、删除约束
通过例子演示,讲解如何禁用约束、激活约束、删除约束
第6周第2次
第五章
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库高级开发 数据库 高级 开发 教案 正文