资源预览内容
第1页 / 共39页
第2页 / 共39页
第3页 / 共39页
第4页 / 共39页
第5页 / 共39页
第6页 / 共39页
第7页 / 共39页
第8页 / 共39页
第9页 / 共39页
第10页 / 共39页
亲,该文档总共39页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数据库管理及应用期末复习一、考试的题型1、选择题(10小题,20分)2、填空题(10小题,30分) 3、简答题题(4小题,20分)4、编程题(3题,30分)(1)数据查询(2题)(2)存储过程(1题)二、考试方式:开卷三、考试时间:100分钟期末考试的题型和考试方式第1章 数据库系统概述 第2章 关系数据库 第3章 关系数据库标准语言-SQL 第4章 关系数据库化理论 第5章 数据库安全保护第6章 数据库设计第7章 SQL Server 2000高级设计 考试范围第1章 数据库系统概述一、复习课本内容 1.1 信息、数据、数据处理与数据管理(理解)1.2 数据库技术的产生、发展(理解)1.3 数据库系统的组成(理解)1.4 数据库系统的模式结构(掌握)1.6 数据库管理系统(DBMS) (掌握) 1.6.1 DBMS的主要功能 1.6.2 DBMS的组成 第1章 数据库系统概述一、复习课本内容1.7 数据模型(掌握)1.8 四种数据模型1.8.3 关系模型 (掌握)1.9 数据库系统的发展(了解)第1章 数据库系统概述二、本章练习题1、网上练习题2、课本习题(与要求复习内容有关的习题)三、本章考试题型(1)选择题(2)填空题(3)简答题第2章 关系数据库一、复习课本内容 2.1 关系模型的数据结构及其形式化定义(理解)2.2 关系的键与关系的完整性(理解)2.3 关系代数 (掌握) 二、本章练习题 1、网上练习题 2、课本习题(与要求复习内容有关的习题) 三、本章考试题型 (1)选择题 (2)填空题 (3)简答题第3章 关系数据库标准语言-SQL一、复习课本内容(重要)3.1 SQL语言的基本概念与特点(了解)3.2 了解SQL Server 20003.2.2 企业管理器 (掌握使用)3.2.3 查询分析器 (掌握使用)3.3 创建与使用数据库(理解)第3章 关系数据库标准语言-SQL一、复习课本内容3.4 创建与使用数据表3.4.1 数据类型 (掌握常用的)3.4.2 创建数据表 2. 用SQL命令创建数据表 (掌握)3.4.3 定义数据表的约束 (掌握)第3章 关系数据库标准语言-SQL一、复习课本内容3.5 创建与使用索引3.5.1 索引的作用 (理解)3.5.2 索引的分类 (理解)3.5.3 创建索引 2. 用SQL命令创建索引 (掌握)第3章 关系数据库标准语言-SQL一、复习课本内容 3.6 数据查询掌握3.6.1-3.6.73.7 数据更新掌握用SQL命令添加、修改和删除数据3.8 视图 掌握用SQL命令创建视图3.9 数据控制(理解)第3章 关系数据库标准语言-SQL二、本章练习题1、网上练习题2、课本例题、习题(与要求复习内容有关的)三、本章考试题型(1)选择题(2)填空题(3)简答题(4)编程题:数据查询3.4.3 定义数据表的约束一、域完整性约束 1、字段的数据类型 2、空值约束(NOT NULL) 3、缺省约束(default constraints) 4、检查约束(check constraints) 二、实体完整性约束 1、主键约束(primary key constraints) 2、唯一约束(unique constraints) 三、参照完整性约束 1、参照约束:被参照表的记录删除,参照表中的相应记录都 要删除。如学生表某个学生删除,成绩表中有关该学生的所 有记录都要删除。 2、外键约束:外键的值在所参照表的主键值必须存在。 四、用户定义完整性:通过编程实现,如存储过程。 CREATE TABLE CREATE TABLE 学生表学生表( (学号学号 CHAR(7) NOT NULL,CHAR(7) NOT NULL,姓名姓名 CHAR(8),CHAR(8),性别性别 CHAR(2) DEFAULT CHAR(2) DEFAULT 男男,年龄年龄 INT CHECK(INT CHECK(年龄年龄=18 AND =18 AND 年龄年龄90三、查询视图视图查询过程:DBMS执行对视图的查询时,首先进行有效性检查,检查查询涉及的表、视图等是否在数据库中存在,如果存在,则从数据字典中取出查询涉及的视图的定义,把定义中的子查询和用户对视图的查询结合起来,转换成对基本表的查询,然后再执行这个经过修正的查询。将对视图的查询转换为对基本表的查询的过程称为视图的消解(View Resolution)。例:在200101班的视图中找出出生年份大于1985年的 学生。 SELECT 学号,姓名,出生年份 FROM V200101 WHERE 出生年份1985 本例转换后的查询为: SELECT 学号,姓名,出生年份 FROM 学生 WHERE 班级 =200101 AND 出生年份1985 说明: 上述查询要求转换成等价的对基本表的查询是可操作 的,如果定义视图时子查询的目标列是函数或一般表达式 时,将无法实现这样的转换。例:用视图方式对成绩表生成成绩统计供查询。CREATE VIEW 成绩统计(课程号,平均分,最高分,最低分)AS SELECT 课程号,AVG(分数),MAX(分数),MIN(分数)FROM 成绩 GROUP BY 课程号1)查看成绩统计表。使用如下语句:SELECT FROM 成绩统计2)也可查某门课程C1的成绩统计情况。使用如下语句:SELECT FROM 成绩统计 WHERE 课程号C13)但不能以平均分、最高分、最低分作为查询条件。第4章 关系数据库理论一、复习课本内容 4.1 规范化问题的提出(理解)4.2 函数依赖(了解)4.4 关系模式的范式(了解)4.5 关系模式的规范化 (了解) 二、本章练习题 1、网上练习题 三、本章考试题型 (1)选择题 (2)填空题第5章 数据库安全保护一、复习课本内容 5.1 数据库的安全性(了解)5.2 完整性控制(了解)5.3 并发控制与封锁(了解) 二、本章练习题 1、网上练习题 三、本章考试题型 (1)选择题 (2)填空题 (3)简答题5.3 并发控制与封锁一、事务分类二、显式事务三、并发问题一、事务分类1、事务定义事务是一个逻辑工作单元,一个事务内的所有SQL语句要么全部执 行,要么都不执行。 2、事务特性一个逻辑工作单元必须有4个属性,只有这样才能成为一个事务。 原子性(Atomicity) 一致性(Consistency) 隔离性(Isolation) 持久性(Durability) 3、 事务分类按事务的启动和执行方式,可以将事务分为3类: 显式事务 自动提交事务 隐性事务二、显式事务1、启动事务启动事务使用BEGIN TRANSACTION语句。其语法格 式如下: BEGIN TRANSACTION transaction_name | tran_name_variableWITH MARK description2、结束事务可使用COMMIT TRANSACTION语句成功地结束事务。 其语法格式如下:COMMIT TRANSACTION transaction_name | tran_name_variable例如:BEGIN TRANSACTIONUPDATE 库存表 SET 库存量=库存量-l0 WHBRE 商品代码=K01UPDATE 进账表 SET 金额=金额200.00 WHERE 账号=0027654321COMMIT GO三、并发问题如果没有锁定且多个用户同时访问一个数据库,则当他们的事务同时使用相同的数据时可能会发生数据不一致问题,这就是并发问题。它包括: 丢失或覆盖更新(Lost Update)。 未确认的相关性(脏读,Dirty Read)。 不一致的分析(非重复读,Non-Repeatable Read)。 幻像读。上述四种情况的例子请见书上第6章 数据库设计 一、复习课本内容 5.1 数据库设计概述(了解) 5.2 需求分析(理解) 5.3 概念结构设计(理解) 5.4 逻辑结构设计(理解) 5.5 物理结构设计(理解) 5.6 数据库的实施和维护(了解) 二、本章练习题 1、网上练习题 2、课本习题 三、本章考试题型 (1)选择题 (2)填空题 (3)简答题第7章 SQL Server 2000 高级应用一、复习课本内容 7.1 Transact-SQL程序设计(掌握)7.2 存储过程(掌握) 二、本章练习题 1、网上练习题 2、课本例子、习题(与要求复习内容有关的) 三、本章考试题型 (1)选择题 (2)填空题 (3)简答题 (4)编程题:存储过程7.2.2、7.2.6 创建和执行存储过程 1.使用CREATE PROCEDURE语句创建存储过程CREATE PROCEDURE语句的语法格式为:CREATE PROCEDURE procedure_name parameter data_type = defaultOUTPUT ,nAS sql_statement n 7.2.2、7.2.6 创建和执行存储过程2.执行存储过程使用EXECUTE语句其完整语法格式如下: EXECUTE return_status = procedure_name | procedure_name_var parameter = value | variable OUTPUT | DEFAULT ,n 7.2.2、7.2.6 创建和执行存储过程例1:编写一个存储过程能根据用户提供WPH(物品号)、 CKS(出库数)进行出库处理,KCB(WPH CHAR(3) NOT NULL,KCS INT)是库存表,RCKMXB(WPH CHAR(3) NOT NULL,RKS INT,CKS INT,RQ DATETIME)是入出库明细表。(1)创建存储过程CREATE PROCEDURE USP_CKCLWPH CHAR(3),CKS INT AS7.2.2、7.2.6 创建和执行存储过程IF CKS=(SELECT KCS FROM KCB WHERE WPH=WPH)BEGINBEGIN TRANSACTION UPDATE KCB SET KCS=KCS-CKS WHERE WPH=WPHINSERT RCKMXB VALUES (WPH,0,CKS,GETDATE()COMMIT END ELSERAISERROR(库存数不足!,16,1) GO7.2.2、7.2.6 创建和执行存储过程(2)执行存储过程 EXEC USP_CKCL 0100,120 或 EXEC USP_CKCL WPH =0100, CKS =120 或 EXEC USP_CKCL CKS =120 , WPH =0100 GO7.2.2、7.2.6 创建和执行存储过程例2:编写一个存储过程能根据用户提供WPH(物品号)、 RKS(入库数)进行入库处理,KCB(WPH CHAR(3) NOT NULL,KCS INT)是库存表,RCKMXB(WPH CHAR(3) NOT NULL,RKS INT,CKS INT,RQ DATETIME)是入出库明细表。(1)创建存储过程CREATE PROCEDURE USP_RKCLWPH CHAR(3),RKS INT AS7.2.2、7.2.6 创建和执行存储过程BEGIN BEGIN TRANSACTION IF EXISTS(SELECT * FROM KCB WHERE WPH=WPH
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号