1.教学大纲—数据库应用与开发(K100501320)—XX级—姓名.docx
《数据库应用与开发》教学大纲 课程编号 课程名称 K100501320 课程性质 专业核心课 数据库应用与开发 Database Applications and Development 学分/学时 2 学分 / 32 学时 开课年级学期 三年级 第 6 学期 考核方式 课堂表现/阶段测试/作业/期末考试 开课单位 人工智能学院 教学语言 中文 适用专业 软件工程 先修课程 高级语言程序设计、数据库系统概论 参考教材 执笔人 1.《数据库系统》国家精品课,战德臣,学堂云 2.平台 Oracle 数据库系统教程,陆鑫、张宁,机械工业出版社,2017.1 3.Oracle 11g 从入门到精通(第 2 版),清华大学出版社,2017.9 审核人 批准人 执行时间 一、课程简介: 《数据库应用与开发》是面向软件工程专业本科生开设的一门专业核心课,是一门理论 与实践性都很强的课程。本课程以目前数据库市场占有率最高的 Oracle 数据库为例,系统讲 述从数据库基本原理到实践应用的完整过程。通过课堂教学和上机实践使学生全面地掌握数 据库系统的基本概念、基本原理和基本方法;掌握使用数据库原理和技术解决实际复杂工程 问题的能力,为从事软件项目开发工作打下坚实的基础。课程教学贯彻落实“立德树人”根 本任务,以“学生为中心”,将专业知识和思政教育一体化设计,激发学生的担当意识和爱 国情怀,帮助学生树立正确的人生观和价值观,实现从专业知识传授、能力培养延伸到价值 塑造。 二、课程目标 (一)思政育人目标 目标 1:能够主动将个人发展价值观、世界观与国家经济社会发展需要结合起来,具备 为国家和民族需要学习的热情和动力,在创造社会价值的过程中彰显自身价值。 目标 2:具备软件开发所需的工匠精神、团队精神和职业操守,在软件开发中能够同步 考虑所应该承担的社会责任、伦理责任,使数据库设计开发实践活动有益于经济社会的发展, 有益于满足人民生活需要。 (二)知识能力目标 通过本课程的理论教学和实验训练,学生可具备以下知识和能力。 目标 1:掌握关系型数据库的基本概念和基本理论,能够选取主流关系型数据库 (oracle),定义其存储结构、进程结构和内存结构,通过 SQL*plus 和 PL/SQL Developer 管 理和使用数据库,采用恰当的策略实现复杂数据库系统的优化。 目标 2:能够按照关系型数据库完整性约束要求,针对不同数据库系统开发需求,建立 数据库实例,设计数据库结构,定义相应完整性约束,编写对应的代码模块,实现数据库增、 删、改、查等操作并进行实验测试。 目标 3:能够结合高级语言和数据库设计软件,针对复杂数据库开发问题实际,根据用 户需求,选择正确开发技术路线,撰写文档、绘制流程,实现数据库系统设计与开发。 目标 4:能够团队合作完成一个完整数据库系统的设计与开发,能够主动承担开发过程 中的相关任务,并通过规范的数据库设计文档与成员沟通协作,能够就数据库系统开发中系 统功能需求、设计规范、功能实现和开发文档等,公开进行项目展示和答辩,回应质疑交流。 三、课程目标、教学方法与毕业要求的对应关系 本课程支撑的毕业要求指标点如下: 指标点 1.4:能够将相关知识和数学模型方法用于软件专业工程问题解决方案的比较与 综合。 指标点 3.2:能够综合应用软件工程专业知识,针对特定需求,完成功能模块设计,并 通过测试或实验分析其有效性。 指标点 4.2:能够基于专业理论分析软件工程及相关技术领域复杂工程问题研究对象的 特征,选择正确的研究路线,设计实验方案。 指标点 9.2:具有独立工作的能力,能够胜任团队成员角色,独立或合作完成团队分配 的工作。 指标点 10.1:能够就软件工程及相关技术领域的专业问题与业界同行及社会公众进行交 流,通过书面报告、设计文档、编码代码和口头陈述清晰地表达团队或个人观点与设计理念, 回应质疑,理解与业界同行和社会公众交流的差异性。 课程目标与毕业要求指标点的对应关系,教学内容和采用的教学方法如下: 课程目标 课程目标 1 课程目标 2 毕业要求 指标点 指标点 1.4 指标点 3.2 教学内容 教学方法 第一章 1、2、3 第二章 1、2、3、4、5 第四章 1、2、3、4、5、 6 第六章 1、2、3 第七章 1、2、3 第十二章 1、2 第十四章 1、2、3 第十五章 1、2、3、4 第三章 1、2、3、4 第五章 1、2、3、4、5 第八章 1、2、3 第九章 1、2 第十章 1、2、3、4、5 第十一章 1、2、3、4 第十三章 1、2、3 课堂讲授(线上线下) 课前预习; 课堂互动讨论; 课后作业; 实验演示与指导; 课程目标 3 课程目标 4 指标点 3.2 指标点 4.2 指标点 9.2 指标点 10.1 第五章 1、2、3、4、5 第十章 1、2、3、4、5 第十一章 1、2、3、4 第十三章 1、2、3 分组项目开发实践 指导小组数据库项目设 计开发; 指导撰写开发报告; 项目功能演示; 报告和答辩 四、课程教学的基本要求 第 1 章 Oracle 关系数据库 1.教学基本内容: (1)关系数据模型简介; (2)关系数据库规范化理论; (3)Oracle 数据库系统部署; 2. 基本要求: (1)掌握关系型数据库特点; (2)掌握关系型数据库的规范化理论和要求; (3)掌握 Oracle 数据库部署的环境要求和参数设置; 3.重点和难点 重点:关系型数据库的现状、相关理论,在当前大数据时代,为学生介绍我国当前 数据库发展存在的问题,通过个人信息数据泄露、数据信息收集等为例,为学生讲授数 据伦理和职责操守和社会责任感。 难点:数据库规范化要求,BCNF。 4. 对指标点支撑 支撑毕业要求指标点 1.4。通过本章的学习,掌握关系数据库规范化要求,能够按照规 范化要求科学设计关系表。 5. 作业及课外学习要求 (1)以“数据库领域中的 Oracle”为主题撰写学习调研报告,主要内容包括产品结构、 行业领域采用情况和市场占有率等,对 oracle 数据库特点进行总结。 (2)公布课程考核方式:理论课采取过程化考核+终结性考核相结合形式。实验课以项 目开发实践综合评定。3 名同学组成一个项目开发小组,选定合适的软件项目作为本学期课 内实验和工程实践的训练项目,项目要求具有完整的开发方案和复杂度,最后提交材料并进 行展示答辩。 第 2 章 Oracle 数据库的体系结构 1.教学基本内容: (1)Oracle 内存结构; (2)Oracle 进程结构; (3)逻辑存储结构; (4)物理存储结构; (5)数据字典; 2.基本要求: (1)掌握 oracle 数据库的体系结构,内存结构,进程结构和存储结构; (2)掌握存储结构中物理存储和逻辑存储结构的关系; (3)掌握常见的数据字典。 3.重点和难点 重点:oracle 数据库的体系结构组成。 难点:SGA、PGA,与操作系统作业调度内容相结合。 4. 对指标点支撑 支撑毕业要求指标点 1.4。通过本章的学习,学生能够掌握 oracle 数据库体系结构,具 备通过内存结构、进程结构、存储结构以及数据库字典的相关知识,用逻辑概念和物理概念 描述 oracle 数据库内部体系架构的能力。 5. 作业及课外学习要求 (1)独立安装 oracle 数据库系统(oracle11g 或 12C 版本); (2)通过 OEM 资源管理器或数据字典了解安装数据库体系结构,参数设置。 第 3 章 SQL*Plus 与 PL/SQL Developer 1.教学基本内容 (1)SQL*Plus 原理; (2)SQL*Plus 常见命令; (3)格式化查询; (4)PL/SQL Developer。 2.基本要求: (1)掌握常见的 SQL*PLUS 命令; (2)掌握 PL/SQL developer 第三方数据库工具的基本功能。 3.重点和难点 重点:SQL*plus 与 PL/SQL developer 两类工具的异同。 难点:PL/SQL Developer 作为第三方工具,使用时需要数据库监听器和实例都 处于运行状态。 4. 对指标点支撑 支撑毕业要求指标点 3.2。通过本章的学习和实验,学生能够具备使用数据库原生 SQL*PLUS 工具和第三方工具 PL/SQL Developer 进行数据库管理与应用的能力。 5. 作业及课外学习要求 (1)在 oracle 数据库系统上进一步熟悉 SQL*PLUS 相关命令和的特性; (2)在 PL/SQL Developer 中实现 SQL*PLUS 的相应功能,了解二者差异性。 第 4 章 表空间创建与管理 1.基本内容: (1)基本表空间 (2)临时表空间 (3)大文件表空间 (4)非标准数据块表空间 (5)设置与撤销表空间 (6)表空间和数据文件相关的数据字典 2.基本要求 (1)掌握表空间的分类,基本表空间、临时表空间、撤销表空间和大文件表空间的定 义、与数据文件的对应关系,了解费标准数据库表空间的定义; (2)能够对基本表空间进行管理; (3)掌握与表空间相关的数据字典,能够利用数据字典查看数据库数据文件和状态。 3.重点和难点 重点:oracle 基本表空间的创建与管理;oracle 数据库默认表空间; 难点:逻辑概念表空间的理解,与物理存储的对应关系。 4.对指标点支撑 支撑毕业要求指标点 1.4。通过本章的学习和实验,能够根据数据库设计需要定义并建 立不同类型表空间,描述并定义复杂数据库系统的存储逻辑框架。 5. 作业及课外学习要求 (1)课后完成本课程引入的哈尔滨工业大学战德臣教授《数据库系统》慕课中 SCT 案例 中基本表空间和临时表空间的定义; (2)通过 OEM 查看表空间的定义情况。 第 5 章 模式和对象 1.基本内容 (1)模式与表 (2)表的完整性约束 (3)索引 (4)视图 (5)序列 2.基本要求 (1)领会并掌握模式(schema)的基本概念; (2)掌握数据表的定义和完整性约束定义; (3)能够针对数据库建立索引或视图; (4)掌握序列的定义和使用; 3.重点和难点 重点:表的完整性约束定义和使用、序列的定义和使用。 难点:模式的理解和完整性约束中 NULL 的理解,序列的定义与主键的关系。 4. 对指标点支撑 支撑毕业要求指标点 3.2、4.2。通过本章学习实验,学生能够掌握独立进行相关数据表 结构定义,建立相应完整性约束,创建视图、索引和序列,编写相应脚本代码并进行测试的 能力。 5.作业及课外学习要求 (1)课后完成本课程引入的哈尔滨工业大学战德臣教授《数据库系统》慕课中 SCT 案 例中 5 个表的创建和完整性约束; 第 6 章 控制文件和日志文件 1.基本内容 (1)控制文件 (2)日志文件 (3)归档日志 2.基本要求 (1)掌握控制文件在 oracle 数据库中核心作用; (2)掌握日志文件在 oracle 数据库中作用; 3.重点与难点 重点:控制文件和日志文件的概念、作用。 难点:理解控制文件在 oracle 中的重要作用 4. 对指标点支撑 支撑毕业要求指标点 1.4。通过本章的学习,能够掌握使用控制文件和日志文件管理和 维护数据库系统的能力,可进一步深刻理解数据库复杂的体系结构。 5.作业及课外学习要求 (1)课后通过启动和关闭数据库,进一步思考过程中数据文件、控制文件和日志文件的 变化情况。 第 7 章 用户与权限 1.主要内容 (1)用户 (2)权限定义与撤销 (3)角色定义及使用 2. 基本要求 (1)掌握 oracle 数据库中用户账号的定义; (2)掌握为用户授权和撤销权限; (3)掌握角色的定义和使用。 3.重点与难点 重点:用户创建、权限的授权与回收;着重讲授作为数据库 DBA 应该具备的职业素养 和高尚职业道德,确保用户和数据安全。 难点:系统权限和用户权限的区别。 4. 对指标点支撑 支撑毕业要求指标点 1.4。通过本章的学习,学生能够在 oracle 数据库中创建用户并赋 予一定系统权限或对象权限,对创建用户和角色进行管理。 5.作业及课外学习要求 (1)课后思考用户和模式的异同。 (2)在不同的用户模式下,通过数据字典查找相应的系统权限和对象权限情况。 第8章 SQL 语言基础 1.基本内容: (1)SQL 语言概述 (2)SELECT 语句检索详解 (3)使用函数查询 2.基本要求 (1)掌握 SQL 查询执行次序,掌握基本查询技术; (2)掌握在查询中使用聚集函数; 3.重点与难点 重点:select 语句查询; 难点:查询中执行次序的理解。 4. 对指标点支撑 支撑毕业要求指标点 3.2。通过本章的学习,学生能够编写基本 SQL 查询语句,理解查 询的执行次序。 5.作业及课外学习要求 (1)进一步强化基本 SQL 语句的查询练习; 第9章 子查询与高级查询 1.基本内容 (1)子查询 (2)高级查询 (3)分析函数 2.基本要求 (1)掌握含有 in、some、any 和 exist 的子查询; (2)掌握连接查询的编写,左连接、右连接等; 3.重点与难点 重点:多表连接查询与嵌套查询; 难点:分析函数使用,相关子查询。 4. 对指标点支撑 支撑毕业要求 3.2。通过本章的学习,能够通过编写比较复杂的子查询、连接查询,具 备独立完成特定较复杂查询功能的编写能力。 5.作业及课外学习要求 (1)对前面建立的 SCT 模式数据库,参照战德臣《数据库系统》课后练习题进行多表连 接和子查询练习; (2)通过网络学习进一步查阅有关复杂查询的案例,强化脚本编写练习。 第 10 章 PL/SQL 基础 1.基本内容 (1)PL/SQL 编程 (2)条件选择语句 (3)循环语句 (4)游标 (5)异常处理 2.基本要求 (1)掌握 PL/SQL 编程的基本数据类型、变量和常量的定义; (2)掌握条件语句和循环语句的编写语法,能够编写基本脚本; (3)掌握使用游标的三个步骤和规范; (4)掌握系统异常和自定义异常的定义和控制; 3.重点和难点 重点:PL/SQL 编程基本语法、语句控制和游标技术; 难点:自定义异常处理机制的定义和控制;隐式游标; 4. 对指标点支撑 支撑毕业要求指标点 3.2 和 4.2。通过本章的学习,能够利用 PL/SQL 编程语言实现对数 据访问流程控制,在出现异常情况时控制好系统流程并给出信息提示。 5.作业及课外学习要求 (1)对照显式游标的定义,加深理解隐式游标; (2)进一步熟悉编程语言,强化编写代码的能力。 第 11 章 存储过程、函数、触发器和包(7 学时) 1. 基 本 内 容 (1)存储过程 (2)函数 (3)触发器 (4)程序包 2.基本要求 (1)掌握存储过程的定义和使用,包括 in、out 和 inout 参数类型; (2)掌握函数的定义和使用; (3)掌握触发器的定义和使用,能够正确使用行级触发器和表级触发器; (4)掌握包的规范和定义; 3.重点和难点 重点:数据库系统开发中存储过程、函数和触发器的定义; 难点:行级触发器和表级触发器的定义与使用; 4.对指标点支撑 支撑毕业要求指标点 3.2 和 4.2。通过本章的学习,能够针对解决复杂数据库问题,编 写存储过程、函数和触发器,并可以采用包的形式进行封装。 5.作业及课外学习要求 课后思考在项目开发中使用存储过程或函数时应注意的问题。 第 12 章 SQL 语句优化 1.基本内容 (1)SQL 优化规则 (2)SQL 执行计划 (3)常见优化技术 2.基本要求 (1)掌握常见的 SQL 查询优化规则并能够用于实践; (2)掌握查询计划的查看方法。 3.重点与难点 重点:10 个常见的优化方法。 难点:根据查询计划进行优化。 4.对指标点支撑 支撑毕业要求指标点 1.4。通过本章的学习,能够针对复杂数据库查询问题进行分析, 优化数据的查询访问。 5.作业及课外学习要求 进一步熟悉查询计划的使用,对数据比全表扫描和索引方式的执行计划; 第 13 章 数据库设计与建模 1.基本内容 (1)数据库建模工具; (2)ADO.NET 数据库连接; (3)JDBC 数据库访问; 2.基本要求 (1)掌握常见数据库建模工具的使用并能够用于设计实践。 (2)掌握利用 C#、Java 语言建立 oracle 数据访问的技术。 3.重点与难点 (1)ADO.NET 和 JDBC 的数据访问技术; (2)对不同高级语言开发环境下采用 ADO.NET 或 JDBC 连接数据库产生错误的排查。 4.对指标点支撑 支撑毕业要求指标点 3.2、4.2。通过本章的学习,学生能够结合高级语言 C#或 Java, 通过不同数据连接模型实现数据访问。 5.作业及课外学习要求 进一步在开发环境下熟悉数据访问的基本技术,熟悉各种数据库访问模式。 第 14 章 数据备份与恢复 1.基本内容 (1)imp 和 exp; (2)Data Pump 工具; (3)RMAN 工具; 2.基本要求 (1)掌握在服务器端和客户端进行数据库的导入导出,实现对用户表、模式的数据导 入导出; (2)掌握利用数据泵工具进行服务器端的数据导入导出,理解取实现原理和特点。 (3)了解 RMAN 工具在数据备份与恢复中的使用方法,理解对象目录原理。 3.重点和难点 重点:基本导入导出工具 难点:数据泵技术 4. 对指标点支撑 支撑毕业要求 1.4。通过本章的学习,能够利用各种服务器端、客户端或者第三方工具 进行数据备份和恢复。 5.作业及课外学习要求 课后要进一步理解数据泵的使用原理,加深对 rman 工具的学习理解。 第 15 章 闪回技术 1.主要内容 (1)闪回表 (2)闪回删除 (3)闪回版本查询 (4)闪回事务查询 2.基本要求 (1)理解闪回的本质,是数据库联机环境下将数据库或表等数据恢复到指定时间点或 系统改标号上; (2)掌握利用回收站机制实现闪回删除过程; (3)掌握利用 flashback version query 的伪列实现版本查询; (4)掌握事务处理机制,能够在归档模式下,通过 XID 查询事务编号并进行闪回。 3.重点与难点 重点:各类闪回的定义 难点:理解闪回本质、SCN 和时间的关系。 4.对指标点支撑 支撑毕业要求指标点 1.4。通过本章的学习,能够在 oracle 企业版中进行数据库闪回操 作,在数据库在线情况下将数据库恢复到某一时刻。 5.作业及课外学习要求 进一步理解闪回机制和使用方法。 五、课程学时分配 教学环节及学时 学时分配 主要内容 习题课及测 试 讲课 实验 第 1 章 Oracle 关系数据库概述 2 2 4 第 2 章 Oracle 数据库的体系结构 2 2 4 第 3 章 SQL*Plus 与 PL/SQL developer 2 2 4 第 4 章 表空间创建与管理 2 2 4 第 5 章 模式和对象 2 2 4 第 6 章 控制文件和日志文件 2 2 第 7 章 用户与权限 2 2 4 第 8 章 SQL 语言基础 2 2 4 第 9 章 子查询与高级查询 2 2 4 第 10 章 PL/SQL 程序设计 2 2 4 第 11 章 存储过程、函数、触发器和包 4 4 第 12 章 SQL 语句优化 2 2 4 第 13 章 数据库连接技术 2 2 4 第 14 章 数据备份与恢复 2 2 4 第 15 章 闪回技术 2 32 4 8 2 课堂阶段测试 总 计 合计 30 2 2 2 64 六、课程的实验内容与要求(详见实验课教学大纲) 序号 实验名称 实验内容及要求 计划 学时 实验类 型 1 Oracle 数 据 库 体 系 结 构 在单机或服务器上安装和配置 oracle 数 据库,了解 oracle 的内存结构、存储结 构和进程结构等 2 验证型 2 SQL*Plus 与 PL/SQL Developer 使用 掌握 SQL*Plus 和 PL/SQL Developer 的 环境设置和使用,进行基本查询,和数 据字典使用命令的使用。 2 设计型 3 表空间的创建与管理 掌握 oracle 数据库表空间的创建见和删 除、修改等,掌握序列的定义和使用。 2 设计型 4 用户模式和对象 掌握在给定用户模式下创建关系表,并 定义各类完整性约束。 2 设计型 用户、角色和权限 掌握 oracle 数据库角色的创建和定义, 掌握创建不同权限用户的技术,掌握授 权以及权限回收等技术 2 设计型 SQL 查询技术 掌握 oracle 数据库中 SQL 创建表基本 语法,掌握基本的聚集函数使用。编写 子查询和连接查询解决特定查询需求。 4 设计型 7 PL/SQL 编程 理解 PL/SQL 程序块的结构,掌握声明 变量和常量方法,熟练使用循环结构和 条件语句,并学习如何捕获和控制用户 代码中的潜在异常。 2 设计型 8 触发器、存储过程和 包 掌握过程,函数,触发器及包的编程和调 用。 4 设计型 9 Oracle 查询优化 学习基本 SQL 语言查询规则,掌握执 行计划及其优化技术 2 设计型 10 oracle 数据库访问 学习在 C#环境或 java 语言进行 oracle 数据库访问。 2 设计型 11 数据备份与恢复 学习 oracle 数据库导入导出技术;了解 oracle 的数据泵技术;掌握基本的数据 库备份和恢复技术。 2 设计型 项目综合开发 结合高级语言,设计完成一个数据库应 用 系 统 开 发 。( 与 其 他 实 验 课 学 时 打 通) 6 综合型 5 6 12 七、考核方式 1.考核方式与成绩评定方法 (1)本课程理论课部分采取过程化考核方式,由课堂表现、阶段测试、课后作业和期 末考试等考核项组成,总分 100 分: 考核内容 分值比例 评分依据 课堂表现 10% 课前预习、课堂答题、参与教学互动情况等(课堂工 具) 。 阶段测试 20% 章节测试、阶段测试考核等考核成绩。 课程作业 20% 以完成布置的课后作业和评阅结果为依据(平台记 录) 。 期末考试 50% 期末考试成绩 (2)课程目标的考核方式与成绩比例: 考核方式及成绩比例(%) 课程目标 毕业要求指 标点 课堂表现 课程目标 1 指标点 1.4 5 课程目标 2 指标点 3.2 5 课程目标 3 指标点 4.2 指标点 9.2 指标点 10.1 合计比例 阶段测试 课程目标 4 期末考试 10 12.5 27.5% 12.5 27.5% 25 45% 10 10 成绩比例(%) 课后作业 10 详见《数据库应用与开发实验》考核 10% 20% 20% 50% 2. 考核与评价标准 (1)过程化考核平时成绩考核及评价标准 过程化成绩包括学生课堂表现、阶段测试、课后作业等考核项组成,依据教师评阅并采 用信息化工具记录在平台。 针对课程目标 1-3 的主观评价标准如下。 课程 目标 评 分 标 准 优秀(0.90-1.0) 良好(0.75-0.89) 合格(0.60-0.74) 不合格(0-0.59) 熟练掌握 oracle 数 据库基本原理和体 系结构,能够熟练 课程 目标 1 进行数据库管理和 优化。高质量按时 完成作业。 掌握 oracle 数据库 基本原理和体系结 构,能够进行数据 库管理和优化。较 好按时完成作业。 基本掌握 oracle 数 据库基本原理和体 系结构,能够进行 数据库管理和优 化。能够完成作 业。 不掌握 oracle 数据 库基本原理和体系 结构,或不能进行 数据库管理和优 化。未提交作业。 熟练编写相应代码 进行数据库完整性 课程 约束定义,实现数 目标 2 据库增、删、改、 查等操作。 能够编写相应代码 进行数据库完整性 约束定义,实现数 据库增、删、改、 查等操作。 基本掌握编写相应 代码进行数据库完 整性约束定义,实 现数据库增、删、 改、查等操作。 不会编写相应代码 进行数据库完整性 约束定义,不能编 写数据库增、删、 改、查等操作。 熟练根据用户项目 需求,选择准确开 发技术路线,撰写 课程 文档、绘制流程, 目标 3 利用建模工具,实 现一个完整数据库 系统设计与开发。 能够根据用户项目 需求,选择正确开 发技术路线,撰写 文档、绘制流程, 实现一个数据库系 统设计与开发。 基本能够根据用户 项目需求,选择开 发技术路线,撰写 文档、绘制流程, 基本实现一个数据 库系统设计与开 发。 不能根据用户项目 需求选择正确开发 技术路线,不能设 计开发实现一个数 据库系统。 课程 目标 4 在实验课进行考核 八、主要参考书 [1]. 陆鑫,张宁.Oracle 数据库实验教程[M],机械工业出版社,2017.2. [2]. 谢星星,朱婵.Power Designer 系统分析与建模实践[M].机械工业出版社,2015.6 [3]. 明日科技.Oracle 从入门到精通[M].清华大学出版社,2020.1