林子雨主讲《数据库系统原理》2018班级主页

厦门大学计算机系本科生课程

《数据库系统原理》

2018春季学期班级主页

时间地点:周二上午34节海韵教学楼306,周五上午34节海韵教学楼201

主讲人:厦门大学计算机科学系  林子雨  博士/助理教授

(E-mail: ziyulin@xmu.edu.cn, 个人主页:http://www.cs.xmu.edu.cn/linziyu)

期末考试确定在2018年6月12日(第16周周二)上午

期末大作业已经发布,6月10日周日晚11点之前提交


班级信息|课程简介|教师简介|学生名单|公告板|上课进度表|课件下载|课后作业|上机实验|课外阅读| 班级相册


(扫一扫手机访问本主页)

IMG_0615

班级信息

班级名称:林子雨主讲《数据库系统原理》2018班级

课程性质:厦门大学计算机系科学系本科生必修课

上课学生:厦门大学计算机系科学系2015级本科生(大三下学期)40人

授课教师:林子雨

开课学期:2018年春季学期(2月到6月)

课程学时:每周4节理论课,2节实验课,4学分,70学时

上课时间地点:(1)理论课:星期二第34节 海韵教学楼306;星期五第34节 海韵教学楼201;(2)实验课:3-13(单)周 星期五 第5-8节 ;海韵实验楼

课程助教:厦门大学数据库实验室2017级硕士研究生程璐同学(E-mail:luchengxm@outlook.com)和厦门大学数据库实验室2017级硕士研究生林哲同学(E-mail:linzhe@stu.xmu.edu.cn)。

课程简介

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年出生,博士(毕业于北京大学),现为厦门大学计算机科学系助理教授(讲师),曾任厦门大学信息科学与技术学院院长助理、晋江市发展和改革局副局长。中国计算机学会数据库专业委员会委员,中国计算机学会信息系统专业委员会委员。国内高校首个“数字教师”提出者和建设者,厦门大学数据库实验室负责人,厦门大学云计算与大数据研究中心主要建设者和骨干成员,2013年度和2017年度厦门大学教学类奖教金获得者,荣获2017年福建省精品在线开放课程和2017年厦门大学高等教育成果二等奖。主要研究方向为数据库、数据仓库、数据挖掘、大数据、云计算和物联网,并以第一作者身份在《软件学报》《计算机学报》和《计算机研究与发展》等国家重点期刊以及国际学术会议上发表多篇学术论文。作为项目负责人主持的科研项目包括1项国家自然科学青年基金项目(No.61303004)、1项福建省自然科学青年基金项目(No.2013J05099)和1项中央高校基本科研业务费项目(No.2011121049),主持的教改课题包括1项2016年福建省教改课题和1项2016年教育部产学协作育人项目,同时,作为课题负责人完成了国家发改委城市信息化重大课题、国家物联网重大应用示范工程区域试点泉州市工作方案、2015泉州市互联网经济调研等课题。中国高校首个“数字教师”提出者和建设者,2009年至今,“数字教师”大平台累计向网络免费发布超过500万字高价值的研究和教学资料,累计网络访问量超过500万次。打造了中国高校大数据教学知名品牌,编著出版了中国高校第一本系统介绍大数据知识的专业教材《大数据技术原理与应用》,并成为京东、当当网等网店畅销书籍;建设了国内高校首个大数据课程公共服务平台,为教师教学和学生学习大数据课程提供全方位、一站式服务,年访问量超过100万次。

公告板

发布时间 内容
2018年1月7日 班级主页正式发布
 2018年2月26日 认真备课,迎接第1次课
2018年3月30日 李泽霖同学课堂回答问题,获得林子雨老师亲笔签名赠书并合影(照片在本网页底部的班级相册中)
2018年4月27日 期末考试确定在2018年6月12日(第16周周二)上午

学生名单

本班级具体名单如下(42人):

晏国君、陈超越、陈洪杰、陈亮、陈迁明、邓泽霖、段庚辰、范秋实、洪义耕、胡适、黄若婷、李海亮、李俊锋、李义勇、李泽霖、林国伟、林泽堃、刘静雯、刘丽莹、刘松、刘宇涵、柳心怡、吕晓彤、马佳利、潘保良、钱颖琦、邵思博、沈佳宇、沈梓豪、疏颖、王俊韬、王晓莹、王艺谋、夏蕴文、肖天麟、徐鑫、张雯雯、张鑫博、周瑾、周未希、朱耀、王雨博

上课进度表

次数 周数 日期 章节 教材进度 内容
1 1 2018年2月27日周二上午34节 第1章绪论 第5版教材第6页讲完第1.1.1节 第1节自我介绍、教学大纲、考核方法、班级网站和助教介绍,讲解了数据库发展里程碑式人物,

第2节课

讲完了1.1.1数据、数据库、数据库管理系统、数据库系统和
1.1.3 数据管理技术的产生与发展
1.1.4 数据库系统的特点

 2 1  2018年3月2日周五上午34节  第1章绪论  讲到1.2.3.5 概念模型的一种表示方法:实体-联系方法,讲到职工自己实体的联系第2节课讲完了第1.2节数据模型
 3  2  2018年3月6日周二上午34节  第1章 绪论第2章 关系数据库  第1章 绪论结束第2章 关系数据库讲完了2.3.3参照完整性
 4  2   2018年3月9日周五上午34节  第2章 关系数据库  讲完第2章 第2.4.2节专门的关系运算
 5  3  2018年3月13日周二上午34节  第2章 关系数据库
第3章 关系数据库标准语言SQL
 第1节课讲完第2章的最后作业,并且10分钟给同学做课堂作业
第2节课讲解第3章 关系数据库标准语言SQL 讲完了第3.2节 学生-课程数据库
6  3   2018年3月16日周五上午34节  第3章 关系数据库标准语言SQL  第1节课讲解数据库创建和表的创建、修改方法
第2节课讲解索引概念和创建方法
 7  4   2018年3月20日周二上午34节  第3章 关系数据库标准语言SQL  第1节讲LIKE\NULL\IN\ORDER BY聚集函数、GROUP BY第2节 课堂10分钟完成作业,讲HAVING、连接查询
 8  4   2018年3月23日周五上午34节  第3章 关系数据库标准语言SQL  第1节讲等值连接、自然连接、外连接、非等值连接、自身连接、复合条件连接、多表连接第2节讲嵌套查询IN、带有比较运算符的嵌套查询、带有ANY和ALL的子查询
 9  5   2018年3月27日周二上午34节   第3章 关系数据库标准语言SQL  第1节讲了SQL分页语句、EXISTS语句第2节讲了EXISTS语句两个实例,并布置课堂作业
 10  5  2018年3月30日周五上午34节  第3章 关系数据库标准语言SQL  第1节课讲集合操作(并、交、差)、数据更新第2节课讲视图
 11  6  2018年4月3日周二上午34节  第3章 关系数据库标准语言SQL

第4章数据库安全性

 第1节课前10分钟讲解了上一节课的关于数据库先行课的作业,然后两节课时间讲解第4章,详解讲解了SQL SERVER2008中的登录名和用户名创建
 12  6  2018年4月8日周日上午34节  第4章数据库安全性  (清明节调休,补上4月6日周五上午的课)

第1节讲解SQL SERVER2008中的登录名和用户名创建、授权SELECT权限给U1传递授权、回收权限

第2节讲解角色、视图

 13  7   2018年4月10日周二上午34节  第4章数据库安全性第5章数据库完整性  第4章的审计和加密第1节讲解了第5章数据库完整性的理论知识

第2节上机操作演示了实体完整性和参照完整性的定义方法

 14  7  2018年4月13日周五上午34节  第5章数据库完整性  介绍了各种约束创建方法和触发器的创建方法
 15  8  2018年4月17日周二上午34节  第5章数据库完整性  第5章数据库完整性,讲解触发器和断言
第6章关系数据理论,讲解了“问题的提出”
 16  8  2018年4月20日周五上午34节  第6章关系数据理论  第6章关系数据理论
6.2规范化理论
1NF,2NF,3NF
 17  9  2018年4月24日周二上午34节  第6章关系数据理论  第6章关系数据理论
6.2规范化理论
BCNF,4NF
 18  9  2018年4月27日周五上午34节  第6章关系数据理论  6.3 数据依赖的公理系统
自反律、增广律、传递律

6.3 数据依赖的公理系统
自反律、增广律、传递律的证明
Armstrong公里系统有效性和完备性证明

 19  10  2018年5月1日周二上午34节  五一节放假冲掉
 20  10  2018年5月4日周五上午34节  第6章关系数据理论  第6章关系数据理论
6.3 数据依赖的公理系统
函数依赖集等价、最小依赖集、极小化过程、候选码的求解
 21  11  2018年5月8日周二上午34节  第6章关系数据理论  第6章关系数据理论
6.4 模式的分解
第6章全部讲完
22 11  2018年5月11日周五上午34节 第8章数据库编程 第8章数据库编程
8.1 嵌入式SQL
23 12 2018年5月15日周二上午34节 第8章数据库编程 第8章数据库编程
8.2存储过程
8.3 ODBC编程
8.4 JDBC编程
24 12 2018年5月18日周五上午34节 第7章数据库设计 第7章数据库设计

7.1 数据库设计概述
7.2 需求分析
7.3 概念结构设计
7.4 逻辑结构设计
7.5 数据库的物理设计
7.6 数据库实施和维护

25 13 2018年5月22日周二上午34节 第9章 数据库查询优化 第9章 数据库查询优化

9.1 关系数据库系统的查询处理
9.2 关系数据库系统的查询优化
9.3 基于半联接的查询优化
9.4 基于枚举法的查询优化

26 13 2018年5月25日周五上午34节 期末考试卷讲解 期末考试卷讲解
27 14 2018年5月29日周二上午34节 拓展:NoSQL数据库 拓展:NoSQL数据库
28 14 2018年6月1日周五上午34节 拓展:NoSQL数据库

互动交流

拓展:NoSQL数据库
现场和学生互动交流

课件下载

章节 内容提要 讲义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章 绪论 王珊、萨师煊《数据库系统概论(第四版)》教材第38页第12和13题

12.学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中,有的教授和副教授每人各带若干研究生,每个班有若干学生,每个学生选修若干课程,每门课可由若干学生选修。

13.某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。这些零件由不同的原材料制成,不同零件所用的材料可以相同。这些零件按所需的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。请用ER-图画出此工厂产品、零件、材料、仓库的概念模型。

下载
第2章关系数据库  学生关系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章关系数据库 王珊、萨师煊《数据库系统概论(第5版)》教材第70页第6题,只需要写出关系代数,不需要写ALPHA语言和QBE语言。  下载
第3章关系数据库标准语言SQL  课堂作业 我们拥有下面这个 “Orders” 表:

现在,我们希望查找每个客户的总金额(总订单)。

O_Id OrderDate OrderPrice Customer
1 2008/12/29 1000 Bush
2 2008/11/23 1600 Carter
3 2008/10/05 700 Bush
4 2008/09/28 300 Bush
5 2008/08/06 2000 Adams
6 2008/07/21 100 Carter

语句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。

实验报告请统一发送电子邮件到:xmudblab2018@163.com,助教会统计收到作业情况上报给老师,然后由老师通知哪些同学作业没有提交(或没有提交成功)。

实验题目 上机日期 下载实验指南 上机报告提交截止日期
实验1:数据库的基本使用 2018年3月16日周五下午5678节 下载 2018年 3月22日周四晚上11点之前提交到xmudblab2018@163.com
实验2:数据查询 2018年3月30日周五下午5678节 下载  2018年4月5日周四晚上11点之前提交到xmudblab2018@163.com
实验3:数据更新、视图、权限管理 2018年4月13日周五下午5678节 下载 2018年 4月19日周四晚上11点之前提交到xmudblab2018@163.com
实验4:数据库完整性 2018年4月27日周五下午5678节 下载 2018年 5月3日周四晚上11点之前提交到xmudblab2018@163.com
实验5:基于Sql2005的C/S程序开发 2018年5月11日周五下午5678节 下载 2018年 5月17日周四晚上11点之前提交到xmudblab2018@163.com
实验6:过程语言 2018年5月25日周五下午5678节 下载 2018年 5月31日周四晚上11点之前提交到xmudblab2018@163.com
实验7-大实验(期末,小组2-3人合作) 课后在宿舍或实验室完成 下载 2018年6月10日周日晚上11点之前提交到xmudblab2018@163.com

超过截止提交时间一律以 0分计算

实验相关资料下载

SQL Server 2008 JDBC驱动程序下载

课程助教

程璐
厦大计算机系2017级研究生
E-mail:luchengxm@outlook.com
林哲
厦大计算机系2017级研究生
E-mail:linzhe@stu.xmu.edu.cn

 

班级相册

为同学留下美好的课堂记忆