版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、广东外语艺术职业学院 2008 2009 学年第 1 学期填写课程名称授课教案第 1 本本课程共有教案 1 本课程类型理论课授课对象信息技术系计算机应用技术专业授课教师杨铭开课单位信息技术系编写日期2008-9-1 教材处理情况一、 总体说明二、 删减的内容三、 补充更新的内容四、 备注具体教案一、 章节1二、 课时安排4三、 教学目的要求 使学生掌握数据库基础知识四、 教学重点1、 数据库的概念2、 数据库的体系3、 数据库系统结构4、 数据模型5、 e-r图五、 教学难点1、 数据库的概念2、 数据库的体系3、 数据库系统结构4、 数据模型5、e-r图六、 教学内容1、数据库的概念 正确理
2、解数据、数据库、数据库管理系统、数据库系统的概念,尤其是后三者的联系和区别。2、 数据库技术的产生与发展简单讲述3、 数据库系统的体系结构重点讲解c/s结构与b/s结构的联系与区别,优点缺点4、 数据库系统三级模式结构理解,形成概念即可5、 数据模型的要素重点讲述为什么数据模型需要这些要素?6、 数据模型的种类了解7、 数据库设计了解8、 概念模型了解基本概念,掌握 e-r图画法七、 作业1、 简述数据、数据库、数据库管理系统、数据库系统4者的联系。2、 简述c/s架构与b/s架构,各有什么优缺点(用比较的形式)。3、 一个项目,在什么情况下你会采用c/s架构,什么情况下你会采用b/s架构。4
3、、 什么情况下数据库只需要一个外模式,什么情况下数据库需要多个外模式。5、 简述数据模型组成要素间的关系。6、 假定有一个等级考试系统,实体分别是科目与学生,联系是考试,请分析并画出er图。八、 课后反思 由于缺乏系统开发经验,虽然采用了实例教学的方式,学生亦很感兴趣,但在缺乏实践机会的情况下,学生得到的不会太多,应该在后继课程中继续加强相关知识。 出于同样原因,学生在画出er图时,实体的属性基本能够给出,但是联系的属性就不能很好很完整地概括。具体教案一、章节4二、课时安排4三、教学目的要求 使学生掌握数据库关系代数基础知识四、 教学重点1、各种关系代数2、关系代数运算3、er图的转换4、完整
4、性约束5、索引五、 教学难点1、 关系代数的连接、除法2、 er图的转换教学内容1、 什么是关系简单讲述2、 关系代数并差交乘投影 重点讲述选择 重点讲述连接 重点讲述除 重点讲述3、 关系代数运算 重点讲述4、 er图的转换 重点讲述1:1转换1:n转换n:m转换 5、 完整性约束实体完整性参照完整性用户定义的完整性完整性规则检查6、 索引一种索引,该索引中键值的逻辑顺序决定了表中相应行的物理顺序。 聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿,后者按姓氏排列数据。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该索引可以包含多个列(组合索引),就像电话簿
5、按姓氏和名字进行组织一样。 聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。例如,如果应用程序执行的一个查询经常检索某一日期范围内的记录,则使用聚集索引可以迅速找到包含开始日期的行,然后检索表中所有相邻的行,直到到达结束日期。这样有助于提高此类查询的性能。同样,如果对从表中检索的数据进行排序时经常要用到某一列,则可以将该表在该列上聚集(物理排序),避免每次查询该列时都进行排序,从而节省成本。 当索引值唯一时,使用聚集索引查找特定的行也很有效率。例如,使用唯一雇员 id 列 emp_id 查找特定雇员的最快速的方法,是在
6、emp_id 列上创建聚集索引或 primary key 约束。非聚集索引与课本中的索引类似。数据存储在一个地方,索引存储在另一个地方,索引带有指针指向数据的存储位置。索引中的项目按索引键值的顺序存储,而表中的信息按另一种顺序存储(这可以由聚集索引规定)。如果在表中未创建聚集索引,则无法保证这些行具有任何特定的顺序。 与使用书中索引的方式相似,microsoft® sql server 2000 在搜索数据值时,先对非聚集索引进行搜索,找到数据值在表中的位置,然后从该位置直接检索数据。这使非聚集索引成为精确匹配查询的最佳方法,因为索引包含描述查询所搜索的数据值在表中的精确位置的条目。如
7、果基础表使用聚集索引排序,则该位置为聚集键值;否则,该位置为包含行的文件号、页号和槽号的行 id (rid)。例如,对于在 emp_id 列上有非聚集索引的表,如要搜索其雇员 id (emp_id),sql server 会在索引中查找这样一个条目,该条目精确列出匹配的 emp_id 列在表中的页和行,然后直接转到该页该行。 多个非聚集索引 有些书籍包含多个索引。例如,一本介绍园艺的书可能会包含一个植物通俗名称索引,和一个植物学名索引,因为这是读者查找信息的两种最常用的方法。对于非聚集索引也是如此。可以为在表中查找数据时常用的每个列创建一个非聚集索引。 注意事项 在创建非聚集索引之前,应先了解
8、您的数据是如何被访问的。可考虑将非聚集索引用于: 包含大量非重复值的列,如姓氏和名字的组合(如果聚集索引用于其它列)。如果只有很少的非重复值,如只有 1 和 0,则大多数查询将不使用索引,因为此时表扫描通常更有效。 不返回大型结果集的查询。 返回精确匹配的查询的搜索条件(where 子句)中经常使用的列。 经常需要联接和分组的决策支持系统应用程序。应在联接和分组操作中使用的列上创建多个非聚集索引,在任何外键列上创建一个聚集索引。 在特定的查询中覆盖一个表中的所有列。这将完全消除对表或聚集索引的访问。使用聚集索引 聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿,后者按姓氏排列数据。由于聚集
9、索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该索引可以包含多个列(组合索引),就像电话簿按姓氏和名字进行组织一样。 聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。例如,如果应用程序执行的一个查询经常检索某一日期范围内的记录,则使用聚集索引可以迅速找到包含开始日期的行,然后检索表中所有相邻的行,直到到达结束日期。这样有助于提高此类查询的性能。同样,如果对从表中检索的数据进行排序时经常要用到某一列,则可以将该表在该列上聚集(物理排序),避免每次查询该列时都进行排序,从而节省成本。 当索引值唯一时,使
10、用聚集索引查找特定的行也很有效率。例如,使用唯一雇员 id 列 emp_id 查找特定雇员的最快速的方法,是在 emp_id 列上创建聚集索引或 primary key 约束。 说明 如果该表上尚未创建聚集索引,且在创建 primary key 约束时未指定非聚集索引,primary key 约束会自动创建聚集索引。 也可以在 lname(姓氏)列和 fname(名字)列上创建聚集索引,因为雇员记录常常是按姓名而不是按雇员 id 分组和查询的。 注意事项 定义聚集索引键时使用的列越少越好,这一点很重要。如果定义了一个大型的聚集索引键,则同一个表上定义的任何非聚集索引都将增大许多,因为非聚集索引
11、条目包含聚集键。当把 sql 脚本保存到可用空间不足的磁盘上时,索引优化向导不返回错误。有关 microsoft® sql server 2000 中如何实现非聚集索引的更多信息,请参见非聚集索引。 在分析过程中,索引优化向导会消耗相当多的 cpu 及内存资源。最好在生产服务器的测试版上执行优化,而不要在生产服务器上执行。此外,最好在另一台计算机上而非运行 sql server 的计算机上运行该向导。该向导不能用于在 sql server 6.5 版或更早版本的数据库中选择或创建索引及统计信息。 在创建聚集索引之前,应先了解您的数据是如何被访问的。可考虑将聚集索引用于: 包含大量非重复
12、值的列。 使用下列运算符返回一个范围值的查询:between、=、 和 =10; 条件可以不被选择。同6。,选择条件是被选择人员的工龄为10年以上,且我们看到,工龄并没有被选择,这样是允许的10、 select 编号,姓名, 工龄,部门,工资*3 as 奖金 from员工资料表where 部门=人事部 and 工龄=10; 简单条件并且。同6。,选择条件是被选择人员的部门为人事部并且工龄10年以上本例可以这么去理解:从表格的第一行开始,首先比较本行部门列的值是否为人事部,不符则跳到第下一行。若部门相符则比较工龄是否大于10年,不符则跳到第下一行,相符则将这一行保留到结果虚拟表然后跳到下一行。最
13、后在虚拟表选择列-编号,姓名, 工龄,部门,奖金显示在集合的角度上:先选出满足部门条件的保留到虚拟表一,再选出满足工龄条件的保留到虚拟表二,然后两虚拟表取交集11、 select 编号,姓名, 工龄,部门,工资*3 as 奖金 from 员工资料表 where 年龄=50 or 工龄=10; 简单条件或者本例可以这么去理解:从表格的第一行开始,首先比较本行年龄列的值大或等于50,相符则将这一行保留到结果虚拟表然后跳到下一行。不符则比较工龄是否大于10年,若依然不符则跳到第下一行,相符则将这一行保留到结果虚拟表然后跳到下一行。最后在虚拟表选择列-编号,姓名, 工龄,部门,奖金显示在集合的角度上:
14、先选出满足年龄条件的保留到虚拟表一,再选出满足工龄条件的保留到虚拟表二,然后两虚拟表取并集12、 select 编号,姓名, 工龄,部门,工资*3 as 奖金 from 员工资料表 where not 工龄=50 or 部门=人事部 and 工龄=10; 简单条件组合公司里50岁以上或者人事部10年工龄以上的人发3倍奖金本例可以这么去理解:从表格的第一行开始,首先比较本行年龄列是否满足条件,相符则将这一行保留到结果虚拟表然后跳到下一行。不符则比较部门列是否满足条件,不符则跳到第下一行。若部门相符则比较工龄列是否满足条件,不符则跳到第下一行,相符则将这一行保留到结果虚拟表然后跳到下一行。在集合的
15、角度上:先选出满足年龄条件的保留到虚拟表一,再选出满足部门条件的保留到虚拟表二,再选出满足工龄条件的保留到虚拟表三。然后,首先二、三取交集成为虚拟表四,四再和一取并集。或者一、二取并集成为虚拟表四,一、三取并集成为虚拟表五,四、五再取交集,也就是说原来的查询条件可以写成where (年龄=50 or 部门=人事部) and (年龄=50 or 工龄=10);很眼熟吗?14、 select 编号,姓名,年龄,工龄,部门,工资*3 as 奖金 from员工资料表where 年龄=50 and 部门=人事部 or 工龄=10; 简单条件组合公司里10工龄以上或者人事部50岁以上的人发3倍奖金and
16、not or 的优先级:notandor,括号的优先级最高15、 select 编号,姓名, 年龄,工龄,部门,工资*3 as 奖金 from员工资料表where 年龄=50 and not 部门=人事部 or 工龄=10;公司里10工龄以上或者非人事部50岁以上的人发3倍奖金16、 select 编号,姓名, 年龄,工龄,部门,工资*3 as 奖金 from员工资料表where not 年龄=50 and 部门=人事部 or 工龄=10;公司里10工龄以上或者人事部50岁以下(不含50)的人发3倍奖金17、 select 编号,姓名, 年龄,工龄,部门,工资*3 as 奖金 from员工资料
17、表where not 年龄=50 and not 部门=人事部 or 工龄=10; 公司里10工龄以上或者非人事部50岁以下(不含50)的人发3倍奖金18、 select 编号,姓名, 年龄,工龄,部门,工资*3 as 奖金 from员工资料表where not 年龄=50 and not 部门=人事部 or not 工龄=10;公司里10工龄以下或者非人事部50岁以下(不含50)的人发3倍奖金19、 select 编号,姓名, 年龄,工龄,部门,工资*3 as 奖金 from员工资料表where not (年龄=50 and 部门=人事部) or not 工龄=10;三个条件:假定 年龄=5
18、0 为 a , 部门=人事部 为 b,not 工龄=10 为 c,其中条件not (年龄=50 and 部门=人事部)可看作由a b组成,记为条件d那么,对于每一行c为真或者d为真则此行满足条件那么,对于d来说,a为真且b同时为真则d为假,只要不是a为真且b同时为真则d为真所以,本题的条件等同于,年龄50 or 部门人事部 or 工龄=50 or 部门=人事部) or not 工龄=10;三个条件:假定 年龄=50 为 a , 部门=人事部 为 b,not 工龄=10 为 c,其中条件not (年龄=50 or 部门=人事部)可看作由a b组成,记为条件d那么,对于d来说,a为真或者b为真则d
19、为假,只有a、b同时为假则d为真所以,本题的条件等同于,年龄50 and 部门人事部 or 工龄=30 and 工龄=30 or 工龄=30 and 工龄=30 or 工龄=1000 and 工资1000 and 工资=1;9-1 select * from 员工资料表 where 篮球=1 and 排球=1 and 网球=0 or 篮球=0 and 排球=1 and 网球=1 or 篮球=1 and 排球=0 and 网球=1;9-2 (查询一 intersect 查询二) union (查询一 intersect 查询三) union (查询二 intersect 查询三) minus (
20、查询一 intersect 查询二 intersect 查询三)9-3 select * from 员工资料表 where 篮球+排球+网球=2;10-1 select * from 员工资料表 where 篮球=1 and 排球=1 or 排球=1 and 网球=1 or 篮球=1 and 网球=1;10-2 (查询一 intersect 查询二) union (查询一 intersect 查询三) union (查询二 intersect 查询三)10-3 select * from 员工资料表 where 篮球+排球+网球=2;11-1 select * from 员工资料表 where
21、 篮球=0 and 排球=0 and 网球=011-2 查询四 minus 查询一 minus 查询二 minus 查询三11-3 select * from 员工资料表 where 篮球+排球+网球=0;12-1 select * from 员工资料表 where 篮球=1 and 排球=1 and 网球=1 12-2 查询一 intersect 查询二 intersect 查询三12-3 select * from 员工资料表 where 篮球+排球+网球=3;员工资料表编号 姓名 部门 年龄 球队101 刘华 物流 28 篮球101 刘华 物流 28 网球102 张飞 物流 29 排球查询一 打篮球的查询二 打排球的查询三 打网球的查询四 所有员工的信息选出至少打两种球的员工员工资料表编号 姓名 性别 年龄 工龄 部门 工资 税率1001 杨天 男 20 10 人事部 1000 0.5分组查询1、 查看有多少个部门2、 查看各个部门的总工资
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年天津滨海汽车工程职业学院高职单招数学历年(2016-2024)频考点试题含答案解析
- 2025年商丘医学高等专科学校高职单招数学历年(2016-2024)频考点试题含答案解析
- 2025年厦门城市职业学院高职单招职业适应性测试近5年常考版参考题库含答案解析
- 气候变化对地球政策的影响-第2篇-深度研究
- 2025年度体育用品销售提成及赛事赞助合同
- 2025年度二零二五年度轮胎维修与绿色出行推广合同
- 二零二五年度2025年度解除反聘项目管理合同协议
- 二零二五年度终止合伙合同-智慧城市建设合作终止协议
- 二零二五年度私人土地租赁合同:文化创意产业园租赁合同
- 二零二五年度智慧城市建设代理合同终止条件及城市治理
- 2025开工大吉蛇年大吉开门红模板
- 锅炉、压力容器制造质量手册含程序文件-符合TSG07-2019《许可规则》
- 逻辑思维训练500题(带答案)
- 人工智能大模型
- 极简统计学(中文版)
- 2024年资格考试-对外汉语教师资格证笔试参考题库含答案
- 2024年4月自考02382管理信息系统答案及评分参考
- (苏版)初三化学上册:第2单元课题1空气
- 2023年12月广东珠海市轨道交通局公开招聘工作人员1人笔试近6年高频考题难、易错点荟萃答案带详解附后
- 腹腔镜肾上腺肿瘤切除术查房护理课件
- 专题23平抛运动临界问题相遇问题类平抛运和斜抛运动
评论
0/150
提交评论