厦门大学计算机系本科生课程
《数据库系统原理》
2017春季学期班级主页
时间地点:周二上午34节,周五上午34节,海韵教学楼308
主讲人:厦门大学计算机科学系 林子雨 博士/助理教授
(E-mail: ziyulin@xmu.edu.cn, 个人主页:http://www.cs.xmu.edu.cn/linziyu)
学期结束后的学生评价排名林子雨老师获得全院教师第2名
班级信息|课程简介|教师简介|学生名单|公告板|上课进度表|课件下载|课后作业|上机实验|课外阅读| 学生评价 |班级相册
(扫一扫手机访问本主页)
班级名称:林子雨主讲《数据库系统原理》2017班级
课程性质:厦门大学计算机系科学系本科生必修课
上课学生:厦门大学计算机系科学系2014级本科生(大三下学期)42人
授课教师:林子雨
开课学期:2017年春季学期(2月到6月)
课程学时:每周4节理论课,2节实验课,4学分,80学时
上课时间地点:(1)理论课:星期二第34节 海韵教学楼308;星期五第34节 海韵教学楼308;(2)实验课:3-13(单)周 星期五 第5-8节 ;海韵实验楼404
课程助教:厦门大学数据库实验室2016级硕士研究生魏亮同学(E-mail:851189929@qq.com)和厦门大学数据库实验室2016级硕士研究生曾冠华同学(E-mail:1393723173@qq.com)。
(图 2017年3月3日 同学们在上机实验室)
(2017年3月24日 学生在做课堂作业)
(2017年5月19日 林子雨老师为沈灿辉同学签名赠书)
(图 2017年6月6日 期末考试现场)
1. 课程基本信息
课程编号:212019
课程名称(中文):数据库系统原理
课程名称(英文):Principle of Database System
开课学期:本科生大三下学期
课程类别: 核心专业基础课程
总学时数与学分: 56学时(4学分,不含实验课时,4学时/周)
先修课程:计算机导论、高级语言程序设计、集合论与图论、数据结构。
教学形式:课堂讲授 + 课外教学 + 实验教学(实验部分实行单列)
使用教材: 王珊,萨师煊:数据库系统概论(第五版),高等教育出版社,2014第五版
教学参考书(更多的内容见参考书目录):
考核形式:期末闭卷笔试,期末成绩由平时成绩和笔试成绩构成,其中,平时成绩占30%,笔试成绩占70%。
Date C J, An Introduction to Database System (Ed.8), Addison-Wesley,2003
施伯乐 周傲英 著《数据库系统教程》,高等教育出版社,2000
大纲制定者: 薛永生、张东站、林子雨
2.课程简介
数据库理论和技术是计算机专业基础课,也是计算机工程技术人员必备的知识和技能,属于必修课。本课程的教学任务是针对大量数据管理操作,全面介绍数据库系统的基本概念、基本原理和核心技术,使学生建立扎实的关系数据库理论基础,掌握现代信息系统中数据库开发技术,简单了解目前数据库发展的前沿技术。课程内容包括数据库的基本概念、关系数据库的模型和操作语言、数据库操作语言SQL、数据库安全性、数据库完整性、关系数据库理论、数据库设计、数据库编程、数据库技术新发展等。
3.培养目标
本课程旨在帮助学生系统掌握数据库系统的基本原理、概念、模型、结构、方法,能够从事复杂数据库系统的设计、开发、研究和应用工作,并为从事计算机各领域的科研及毕业后走向各工作岗位打下数据库基础,在教学过程中注重通过各种形式加强对学生下列能力的培养:
(1)分析、归纳和设计能力:深刻理解基本概念和方法,学会数据库系统的分析方法,归纳各种概念,权衡各方因素,设计合理系统。
(2)实践开发,调试能力:能够动手开发成功的数据库应用系统。
(3)自学能力:数据库软件很多、发展快,绝大多数软件和技术,都需要学生在实验或课余时间自学掌握,课堂重在讲方法和个案剖析。
(4)系统集成能力:掌握数据库与其他部分、数据库与数据库之间、各种异构系统之间的集成能力,把握复杂系统的整体结构。
(5)研究创新能力:数据库技术发展快,新内容层出不穷,课程需要培养学生学习类比能力,观察提炼,提出新问题、新概念、新方法。
4.教学进度表
周数
(按校历) |
各章节教学内容纲要 | 课时安排(学时) | ||||
授课 | 讨论 | 实验/上机 | 实践 | 其他 | ||
1 | 第一章绪论 数据库基本概念 |
4 | 0 | 0 | 0 | 0 |
2 | 第一章绪论 数据模型、数据库系统结构 第二章关系数据库 关系数据库结构及形式化定义、关系操作、关系的完整性 |
4 | 0 | 0 | 0 | 0 |
3 | 第二章关系数据库 关系代数 |
4 | 0 | 4 | 0 | 0 |
4 | 第三章 关系数据库操作语言-SQL 关系数据库SQL语句、数据定义 |
4 | 0 | 0 | 0 | 0 |
5 | 第三章 关系数据库操作语言-SQL 数据查询、数据更新、视图 |
4 | 0 | 4 | 0 | 0 |
6 | 第四章 数据库安全性 自主存取控制、强制存取控制、视图机制、审计、数据加密 |
4 | 0 | 0 | 0 | 0 |
7 | 第五章 数据库完整性 实体完整性、参照完整性、用户定义的完整性、完整性约束命名子句、断言、触发器 |
4 | 0 | 4 | 0 | 0 |
8 | 第六章 关系数据库理论 规范化(2NF/3NF/BCNF/4NF) |
4 | 0 | 0 | 0 | 0 |
9 | 第六章 关系数据库理论 数据依赖的公理系统 |
4 | 0 | 4 | 0 | 0 |
10 | 第六章 关系数据库理论 模式分解 |
4 | 0 | 0 | 0 | 0 |
11 | 第七章 数据库设计 需求分析、概念设计 |
4 | 0 | 4 | 0 | 0 |
12 | 第七章 数据库设计 逻辑设计、物理设计第八章 数据库编程 嵌入式SQL、存储过程 |
4 | 0 | 0 | 0 | 0 |
13 | 第八章 数据库编程 ODBC编程第九章 数据库新技术 数据仓库 |
4 | 0 | 4 | 0 | 0 |
14 | 第九章 数据库新技术 NoSQL、大数据 |
4 | 0 | 0 | 0 | 0 |
15 | 复习 | |||||
16 | 复习 |
林子雨,男,1978年出生,博士(毕业于北京大学),现为厦门大学计算机科学系助理教授(或者“讲师”),海峡云计算与大数据应用研究中心副主任。曾任晋江市发展和改革局副局长、厦门大学信息科学与技术学院院长助理。中国高校首个“数字教师”提出者和建设者,O2O大数据教学理念提出者和践行者,中国高校首个大数据课程公共服务平台建设者,厦门大学数据库实验室负责人,厦门大学云计算与大数据研究中心主要建设者和骨干成员,中国计算机学会数据库专业委员会委员,中国计算机学会信息系统专业委员会委员,荣获“2016中国大数据创新百人”称号。于2001年获得福州大学水利水电专业学士学位,2005年获得厦门大学计算机专业硕士学位,2009年获得北京大学计算机专业博士学位。主要研究方向为数据库、数据仓库、数据挖掘、大数据、云计算和物联网,并以第一作者身份在《软件学报》《计算机学报》和《计算机研究与发展》等国家重点期刊以及国际学术会议上发表多篇学术论文。作为项目负责人主持的科研项目包括1项国家自然科学青年基金项目(No.61303004)、1项福建省自然科学青年基金项目(No.2013J05099)和1项中央高校基本科研业务费项目(No.2011121049)。主讲厦门大学本科生课程《数据库系统原理》、《大数据技术原理与应用》、《C语言程序设计》、《计算机基础》和研究生课程《分布式数据库》、《大数据处理技术》,在教学过程中形成班级网站、结课仪式、师生互动等创新性教学模式方法,志愿编写了多本服务计算机系全体教师教学工作的教学指南;因在教学领域的突出贡献和学生的认可,成为2013年度厦门大学教学类奖教金获得者,并获得由厦门大学计算机系2012级全体硕士研究生集体赠送的“铭记师恩牌匾”。中国高校首个“数字教师”提出者和建设者,2009年至今,“数字教师”大平台累计向网络免费发布超过100万字高价值的研究和教学资料,累计网络访问量超过100万次。打造了中国高校大数据教学知名品牌,编著出版了中国高校第一本系统介绍大数据知识的专业教材《大数据技术原理与应用》,并成为京东、当当网等网店畅销书籍;建设了国内高校首个大数据课程公共服务平台,为教师教学和学生学习大数据课程提供全方位、一站式服务,年访问量超过50万次。具有丰富的政府和企业信息化培训经验,厦门大学管理学院EDP中心、浙江大学管理学院EDP中心、厦门大学继续教育学院、泉州市科技培训中心特邀培训讲师,曾给中国移动通信集团公司、福州马尾区政府、福建龙岩卷烟厂、福建省物联网科学研究院、石狮市物流协会、厦门市物流协会、浙江省中小企业家、四川泸州企业家、江苏沛县企业家等开展信息化培训,累计培训人数达3000人以上。作为课题负责人完成了国家发改委城市信息化重大课题、国家物联网重大应用示范工程区域试点泉州市工作方案、2015泉州市互联网经济调研等课题。
发布时间 | 内容 |
2017年1月5日 | 班级主页正式发布 |
2017年2月13日 | 新学期第1天,备课,更新第1章PPT |
2017年2月14日 | 第1次课顺利完成 |
2017年2月17日 | 第2次课顺利完成,请到“课后作业”栏目下载作业并在下次课提交纸质作业 |
2017年3月3日 | 第1次上机实验室顺利举行 |
2017年5月5日 | 期末大作业正式发布,实验7-大实验,请到“上机实验”栏目下载,5月31日晚11点之前提交 |
2017年5月17日 | 确定期末考试时间为2017年6月6日周二上午10点30分到12点30分 |
2017年6月6日 | 2017年6月6日周二上午期末考试顺利结束,班级42名同学全部参加考试 |
本班级具体名单如下(42人):
沈灿辉、蔡瑛珈、陈大松、陈俊华、陈思悦、陈泽伟、陈兆彬、杜伊涵、韩文凯、洪凯璇、胡志龙、黄可文、黄玥、黄泽龙、季宛霖、蒋之晗、李焱阳、连乐烁、林晖、林日荣、林诗捷、刘畅、刘丹、孟祥毅、阮德莲、沈琳、施俊杰、施卓衡、斯金磊、汪家诚、吴子涵、肖惠楚、杨凯、张凌、张韦妮、郑宁涵、钟鑫玥、黄宗超、臧铮
次数 | 周数 | 日期 | 章节 | 教材进度 | 内容 |
1 | 1 | 2017年2月14日周二上午34节 | 第1章绪论 | 第5版教材第6页讲完第1.1.1节 | 第1节自我介绍、教学大纲、考核方法、班级网站和助教介绍,讲解了数据库发展里程碑式人物,
第2节课 讲完了1.1.1数据、数据库、数据库管理系统、数据库系统和 |
2 | 1 | 2017年2月17日周五上午34节 | 第1章绪论 | 第5版教材第27页 | 讲到1.2.3.5 概念模型的一种表示方法:实体-联系方法,讲到职工自己实体的联系
第2节课讲完了第1.2节数据模型 |
3 | 2 | 2017年2月21日周二上午34节 | 第1章 绪论
第2章 关系数据库 |
第1章 绪论结束
第2章 关系数据库讲完了2.3.3参照完整性 |
|
4 | 2 | 2017年2月24日周五上午34节 | 第2章 关系数据库 | 讲完第2章 第2.4.2节专门的关系运算 | |
5 | 3 | 2017年2月28日周二上午34节 | 第2章 关系数据库 第3章 关系数据库标准语言SQL |
第1节课讲完第2章的最后作业,并且10分钟给同学做课堂作业 第2节课讲解第3章 关系数据库标准语言SQL 讲完了第3.2节 学生-课程数据库 |
|
6 | 3 | 2017年3月3日周五上午34节 | 第3章 关系数据库标准语言SQL | 第1节课讲解数据库创建和表的创建、修改方法 第2节课讲解索引概念和创建方法 |
|
7 | 4 | 2017年3月7日周二上午34节 | 第3章 关系数据库标准语言SQL | 第1节讲LIKE\NULL\IN\ORDER BY聚集函数、GROUP BY
第2节 课堂10分钟完成作业,讲HAVING、连接查询 |
|
8 | 4 | 2017年3月10日周五上午34节 | 第3章 关系数据库标准语言SQL | 第1节讲等值连接、自然连接、外连接、非等值连接、自身连接、复合条件连接、多表连接
第2节讲嵌套查询IN、带有比较运算符的嵌套查询、带有ANY和ALL的子查询 |
|
9 | 5 | 2017年3月14日周二上午34节 | 第3章 关系数据库标准语言SQL | 第1节讲了SQL分页语句、EXISTS语句
第2节讲了EXISTS语句两个实例,并布置课堂作业 |
|
10 | 5 | 2017年3月17日周五上午34节 | 第3章 关系数据库标准语言SQL | 第1节课讲集合操作(并、交、差)、数据更新
第2节课讲视图,最后10分钟讲上一节课的课堂作业 |
|
11 | 6 | 2017年3月21日周二上午34节 | 第4章数据库安全性 | 第1节课前10分钟讲解了上一节课的关于数据库先行课的作业,然后两节课时间讲解第4章,详解讲解了SQL SERVER2008中的登录名和用户名创建,以及授权SELECT权限给U1 | |
12 | 6 | 2017年3月24日周五上午34节 | 第4章数据库安全性 | 第1节讲解传递授权、回收权限
第2节讲解角色、视图 |
|
13 | 7 | 2017年3月28日周二上午34节 | 第4章数据库安全性第5章数据库完整性 | 第4章的审计和加密
第1节讲解了第5章数据库完整性的理论知识 第2节上机操作演示了实体完整性和参照完整性的定义方法 |
|
14 | 7 | 2017年3月31日周五上午34节 | 第5章数据库完整性 | 介绍了各种约束创建方法和触发器的创建方法 | |
15 | 8 | 2017年4月4日周二上午34节 | 放假 | 放假 | 清明节放假,冲掉一次课 |
16 | 8 | 2017年4月7日周五上午34节 | 第5章数据库完整性 第6章关系数据理论 |
第5章数据库完整性,讲解触发器和断言 第6章关系数据理论,讲解了“问题的提出” |
|
17 | 9 | 2017年4月11日周二上午34节 | 第6章关系数据理论 | 第6章关系数据理论 6.2规范化理论 1NF,2NF,3NF |
|
18 | 9 | 2017年4月14日周五上午34节 | 第6章关系数据理论 | 第6章关系数据理论 6.2规范化理论 BCNF,4NF 6.3 数据依赖的公理系统 自反律、增广律、传递律 |
|
19 | 10 | 2017年4月18日周二上午34届 | 第6章关系数据理论 | 第6章关系数据理论 6.3 数据依赖的公理系统 自反律、增广律、传递律的证明 Armstrong公里系统有效性和完备性证明 |
|
20 | 10 | 2017年4月21日周五上午34节 | 第6章关系数据理论 | 第6章关系数据理论 6.3 数据依赖的公理系统 函数依赖集等价、最小依赖集、极小化过程、候选码的求解 |
|
21 | 11 | 2017年4月25日周二上午34届 | 第6章关系数据理论 | 第6章关系数据理论 6.4 模式的分解 第6章全部讲完 |
|
22 | 11 | 2017年4月28日周五上午34节 | 第8章数据库编程 | 第8章数据库编程 8.1 嵌入式SQL |
|
23 | 12 | 2017年5月2日星期二上午34节 | 第8章数据库编程 | 第8章数据库编程 8.2存储过程 8.3 ODBC编程 8.4 JDBC编程 |
|
24 | 12 | 2017年5月5日周五上午34节 | 第7章数据库设计 | 7.1 数据库设计概述 7.2 需求分析 7.3 概念结构设计 7.4 逻辑结构设计 7.5 数据库的物理设计 7.6 数据库实施和维护 |
|
25 | 13 | 2017年5月9日星期二上午34节 | 第9章 数据库查询优化 | 9.1 关系数据库系统的查询处理 9.2 关系数据库系统的查询优化 9.3 基于半联接的查询优化 9.4 基于枚举法的查询优化 |
|
26 | 13 | 2017年5月12日周五上午34节 | 拓展:NoSQL数据库 | NoSQL数据库 | |
27 | 14 | 2017年5月16日星期二上午34节 | 期末复习 | 讲解往年考试试卷 | |
28 | 14 | 2017年5月19日周五上午34节 | 拓展:大数据技术概述 | 大数据技术概述 |
章节 | 内容提要 | 讲义PPT(PPT格式) | 讲义PPT(PDF格式) |
第1章 绪论 | 课程介绍、数据库的基本概念 | 下载 | 下载 |
第2章 关系数据库 | 关系数据库结构及形式化定义、关系操作、关系的完整性、关系代数 | 下载 | 下载 |
第3章关系数据库标准语言SQL | 关系数据库SQL语句、数据定义、数据查询、数据更新、视图 第3章老师上课用来创建数据库的SQL语句 |
下载 | 下载 |
第4章数据库安全性 | 自主存取控制、强制存取控制、视图机制、审计、数据加密 | 下载 | 下载 |
第5章数据库完整性 | 实体完整性、参照完整性、用户定义的完整性、完整性约束命名子句、断言、触发器 | 下载 | 下载 |
第6章关系数据理论 | 规范化(2NF/3NF/BCNF/4NF)、数据依赖的公理系统、模式的分解 | 下载 | 下载 |
第7章数据库设计 | 需求分析、概念设计、逻辑设计、物理设计 | 下载 | 下载 |
第8章数据库编程 | 嵌入式SQL、存储过程、ODBC编程 | 下载 | 下载 |
第9章 数据库查询优化 | 查询优化原理、基于半连接技术的查询优化、基于枚举法的连接优化 | 下载 | 下载 |
往年期末试卷讲解 | 往年期末试卷讲解(2013年、2014年、2015年、2016年) | 下载 |
章节 | 作业布置和提交时间 | 作业内容 | 答案下载 |
第1章 绪论 | 2017年2月17日周五上午布置作业,请在2月21日周二上午课堂提交纸质作业 | 王珊、萨师煊《数据库系统概论(第四版)》教材第38页第12和13题
12.学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中,有的教授和副教授每人各带若干研究生,每个班有若干学生,每个学生选修若干课程,每门课可由若干学生选修。 13.某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。这些零件由不同的原材料制成,不同零件所用的材料可以相同。这些零件按所需的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。请用ER-图画出此工厂产品、零件、材料、仓库的概念模型。 |
下载 |
第2章关系数据库 | 课堂作业 2017年2月28日周二课堂当堂完成 |
学生关系S(snum,sname,age,sex)学习关系SC(snum,cnum,grade) 课程关系C(cnum,cname,teacher)(1)检索学习课程号为C2的学生学号与成绩(2)检索学习课程号为C2的学生学号与姓名(3) 检索选修课程名为MATHS的学生学号与姓名(4) 检索选修课程号为C2或C4的学生学号(5)检索至少选修课程号为C2和C4的学生学号(6)检索不学课程号为C2的学生姓名与年龄(7)检索学习全部课程的学生姓名(8)检索所学课程包含学生S3所学课程的学生号 |
见第2章讲义PPT |
第2章关系数据库 | 2017年2月28日周二上午34节布置,请在3月3日周五上午当堂提交纸质作业 | 王珊、萨师煊《数据库系统概论(第5版)》教材第70页第6题,只需要写出关系代数,不需要写ALPHA语言和QBE语言。 | 下载 |
第3章关系数据库标准语言SQL | 课堂作业 | 我们拥有下面这个 “Orders” 表:
现在,我们希望查找每个客户的总金额(总订单)。 O_Id OrderDate OrderPrice Customer 语句1:SELECT Customer, SUM(OrderPrice) FROM Orders 语句2:SELECT Customer,SUM(OrderPrice) FROM Orders GROUP BY Customer |
见讲义第3章PPT |
第3章关系数据库标准语言SQL | 课堂作业 | 查询选修了“以数据库作为先行课”的课程的学生姓名和学号 要求: (1)第一种方法:使用多表连接 (2)第二种方法:使用嵌套查询 |
见讲义第3章PPT |
第3章关系数据库标准语言SQL | 第5版教材第3章第130页习题4和习题5 | 下载 | |
第4章数据库安全性 | 第5版教材第155页第7、8题 | 下载 | |
第5章数据库完整性 | 第5版教材第173页 第6题 | 下载 | |
第6章关系数据理论 | 讲义PPT上的作业 | 下载 |
为了拓展自己的知识面,在完成本课程内容的学习以后,感兴趣的同学可以阅读一些老师推荐的课外读物。
读物名称 | 内容提要 | 查看 |
《Architecture of a Database System(中文版)》 |
2015年度图领奖(计算机领域诺贝尔奖)获得者迈克尔.斯通布雷克的经典作品,林子雨老师团队在2013年12月翻译发布后网络转发和浏览量超过50万次。 本文翻译自经典英文论文《Architecture of a Database System》,原文作者是Joseph M. Hellerstein, Michael Stonebraker和James Hamilton。该论文可以作为中国各大高校数据库实验室研究生的入门读物,帮助学生快速了解数据库的内部运行机制。本文一共包括8章,分别是:第1章概述,第2章进程模型,第3章并行体系结构:进程和内存协调,第4章关系查询处理器,第5章存储管理,第6章事务:并发控制和恢复,第7章共享组件,第8章结束语。本文翻译由厦门大学数据库实验室林子雨老师团队合力完成。 |
查看 |
《SQL Server 2008基础教程》 |
详细介绍了SQL Server 2008的组件功能和使用方法 |
查看 |
《深入解析SQL Server 2008 笔记》 |
详细介绍了SQL Server 2008的各种操作 |
查看 |
《SQL Server 2005入门教程》 |
详细介绍SQL Server 2005各种操作 |
下载 |
本课程教学上机实验采用数据库管理系统软件SQL Server 2008,请同学自己本地电脑上安装SQL Server 2008。安装-序-列-号是 PTTFM-X467G-P7RH2-3Q6CG-4DMYB。
实验报告请统一发送电子邮件到:xmudblab2017@163.com,助教会统计收到作业情况上报给老师,然后由老师通知哪些同学作业没有提交(或没有提交成功)。
实验题目 | 上机日期 | 下载实验指南 | 上机报告提交截止日期 |
实验1:数据库的基本使用 | 2017年3月3日周五下午5678节 | 下载 | 2017年 3月9日周四晚上11点之前提交到xmudblab2017@163.com |
实验2:数据查询 | 2017年3月17日周五下午5678节 | 下载 | 2017年 3月23日周四晚上11点之前提交到xmudblab2017@163.com |
实验3:数据更新、视图、权限管理 | 2017年3月31日周五下午5678节 | 下载 | 2017年 4月6日周四晚上11点之前提交到xmudblab2017@163.com |
实验4:数据库完整性 | 2017年4月14日周五下午5678节 | 下载 | 2017年 4月20日周四晚上11点之前提交到xmudblab2017@163.com |
实验5:基于Sql2005的C/S程序开发 | 2017年4月28日周五下午5678节 | 下载 | 2017年 5月4日周四晚上11点之前提交到xmudblab2017@163.com |
实验6:过程语言 | 2016年5月12日周五下午5678节 | 下载 | 2017年 5月18日周四晚上11点之前提交到xmudblab2017@163.com |
实验7-大实验(期末,小组2-3人合作) | 课后在宿舍或实验室完成 | 下载 | 2017年 5月31日周三晚上11点之前提交到xmudblab2017@163.com
超过截止提交时间一律以 0分计算 |
实验相关资料下载
课程助教
魏亮 厦大计算机系2016级研究生 E-mai:851189929@qq.com |
曾冠华 厦大计算机系2016级研究生 E-mail:1393723173@qq.com |
学期结束后的学生评价排名林子雨老师以4.98分(满分5分)获得全院教师第2名
讲课精辟,直中要点
严于律己,从不迟到早退,给学生起到模范表率作用
态度和蔼,十分有耐心,深得学生好评
还不错啦,挺喜欢他的上课风格
授课思路清晰,很会调动课堂气氛
老师将授课内容与实际相结合,通俗易懂
为同学留下美好的课堂记忆