• 沒有找到結果。

数据库应用技术

N/A
N/A
Protected

Academic year: 2021

Share "数据库应用技术"

Copied!
1
0
0

加載中.... (立即查看全文)

全文

(1)

数 据 库 应 用 技 术

练 习 参 考 答 案 ( 仅 供 参 考 )

第 1章 数 据 库 基 础 知 识

一 、选择题

1.C 2.A 3.A 4.D 5.C 6.C

7.A 8.A

二 、填空题

1.数 据操作

2.关 系模型

3. 唯一标识一条

4. 域 实体完整性 完整性

5. 连 投影 接

6. 部分函数依赖

三 、设计题

1. 参考答案:

( 1

) 订

单 (订单号,订货量,订货日期,交货日期,销售员编号,客户编号,货品编号)

( 2 ) 货品(货品编号,货品名称,规格,售价,成本价,供货商编号)

( 3 ) 供货商(供货商编号,供货商名称,电话,地址)

( 4 ) 客户(客户编号,姓名,联系电话,地址)

( 5 ) 销售员(销售员编号,姓名,电话,部门编号)

( 6 ) 部门(部门编号,部门名称,电话,地址)

(2)

2. 参考答案

( 1 ) E-R 模 型分立图

( 2 ) E-R 模 型总装简图

注 E-R图 :与运输有关的 和关系模式没有提供,请读者自行补上。

( 3 ) 关系模式:

① 营 业网点(营业点编号,营业点编号,负责人,地址,联系电话,服务范围)

② 操 作员(操作员编号,用户名,密码,真名,联系电话,营业点编号)

③ 价 目表(价目编号,城区名称,标准运价,标重界限,超标运价)

(3)

④ 托运 / 收件(业务编号,行包重量,费用,运价编号,托运日期,备注,托办

编号,托运人编号;结办 编号,收件人编号,收件日期)

⑤ 托 / 收 / 运人 件人(托运人

收 件人编号,姓名,性别,身份证号,联系电话,通讯地址,邮政编码)

第 2章 SQL Server 2008的 安 装 与 配 置

一 、选择题

1.A 2.A 3.A 4.B 5.C 6.

A 7. D

8.B 9. D

二 、填空题

1

2. 开 速 标准版 发版 成版

3. 64 位 Windows操 32 位 Windows操 的 作系统 的 作系统环境

4.服 不 务器引擎 为其他实例共享

5.TCP端 口号

(4)

第 3章 数 据 库 管 理

一 、选择题

1.C 2.D 3.C 4.C 5.B 6.A

7.D 8.C

9.B 10.D

二 、填空题

1. 用 辅助数据文件 户自定义文件组

2.Master Model

3.数 逻 文 据库名称 辑名称 件初始大小

4.DBCC SHRINKDATABASE (< 数 >,< 预 >) 据库名 留百分比空间

5. DROP DATABASE < 数 >[,…n] 据名称

三 、设计题

1. 参考答案

( 1 ) SSMS图 “ qqtx”的 : 使用 形界面方式创建数据库 数据库文件参数

( 2 ) 数据库重命名语句

EXECUTE sp_renamedb qqxt,qqxtgl

( 3 )T-SQL创 qqxt”数 建“ 据库语句

CREATE DATABASE qqxt --创 qqxt数 建 据库

ON PRIMARY --定 义主文件组

( NAME='qqxt', -- 定 文 义 件的逻辑名称

FILENAME='d:\qqxt\qqxt.mdf', --定 数 库文 存 路 义 据 件的 放 径和名称

SIZE=3MB, --定 文 义 件的初始大小

MAXSIZE=16MB, -- 定 文 义 件可增长到的最大大小

FILEGROWTH=10% -- 定 文 义 件的自动增量

)

(5)

LOG ON --定 义日志文件 ( NAME='qqxt_log',

FILENAME='d:\qqxt\qqxt.ldf', SIZE=1MB,

MAXSIZE =UNLIMITED, FILEGROWTH =1MB )

2. 参考答案

T-SQL创 oagl”数 语 建“ 据库 句:

CREATE DATABASE oagl ON PRIMARY

( NAME='oagl_p1',

FILENAME='d:\oagl\oagl_p1.mdf', SIZE=8,

MAXSIZE=100, FILEGROWTH=20%

),

( NAME='oagl_p2',

FILENAME='d:\oagl\oagl_p2.mdf', SIZE=4,

MAXSIZE=UNLIMITED, FILEGROWTH=8

)

LOG ON ( NAME='oagl_log1',

FILENAME='d:\oagl\oagl_log1.ldf', SIZE=6,

MAXSIZE=32, FILEGROWTH=2 ),

( NAME='oagl_log2', FILENAME='d:\oagl\oagl_log2.ldf',

SIZE=1,

MAXSIZE=UNLIMITED, FILEGROWTH=10%

)

(6)

第 4章 数 据 库 表 设 计

一 、选择题

1.B 2.B 3.C 4.D 5.A 6.D

7. C

8.C 9. B

二 、填空题

1.一 数 个或多个字段 据类型

2. 系 用户表 统表

3. 创建表和修改表

4. T-SQL语 设计与调试 句

5. 插入记录和修改记录数据

三 、设计题

1. 参考答案

( 1 ) SSMS方 4-1】 4-2】 使用 式创建表请参考书本【例 和【例 的操作过程。

( 2 )T-SQL语 参 句 考答案

CREATE TABLE provider(

id INT IDENTITY(1,1) CONSTRAINT pk_provider PRIMARY KEY,

供 VARCHAR(8) NOT NULL CONSTRAINT uq_ghxbh 货商编号

UNIQUE,

供 VARCHAR(64) NOT NULL CONSTRAINT uq_ghxmc 货商名称

UNIQUE,

联 VARCHAR(32) NOT NULL, 系人

联 VARCHAR(40) NOT NULL, 系电话

QQ 号 VARCHAR(16),

域 VARCHAR(64) , 名

通 VARCHAR(128) NOT NULL, 讯地址

邮 VARCHAR(5) NOT NULL, 政编码

业 VARCHAR(512) 务范围

)

2.参 考答案

( 1 ) SSMS方 4-1】 4-2】 使用 式创建表请参考书本【例 和【例 的操作过程。

( 2 )T-SQL语 参 句 考答案

CREATE TABLE inventory(

(7)

id INT IDENTITY(1,1) CONSTRAINT pk_inventory PRIMARY KEY,

商 VARCHAR (6) NOT NULL CONSTRAINT uq_xpbh 品编号

UNIQUE,

商 VARCHAR(64) NOT NULL CONSTRAINT uq_xpmc UNIQUE, 品名称

型 VARCHAR(32) NOT NULL, 号

规 VARCHAR(32), 格

条 VARCHAR(64) NOT NULL, 形码

库 INT, 存量

单 DECIMAL(12,2) CONSTRAINT ck_dj CHECK(单 >0), 价 价

进 DECIMAL(12,2) CONSTRAINT ck_jhj CHECK(进 >0), 货价 货价

仓 VARCHAR(24), 位

进 DATE, 货日期

最 INT CONSTRAINT df_Unumber DEFAULT 200, 高预警数

最 INT CONSTRAINT df_Lnumber DEFAULT 10, 低预警数

provider_id INT CONSTRAINT fk_in_pr FOREIGN KEY REFERENCES provider(id)

)

3.参 考答案

ALTER TABLE student ADD

生 VARCHAR(32) 源地

GO

EXECUTE sp_rename 'student.[高 ]',' 入 ','COLUMN' 考总分 学总分

GO

ALTER TABLE student

ADD CONSTRAINT ck_rszf CHECK( 入 >=0 AND 入 学总分 学总分

<=1000) GO

ALTER TABLE student ADD CONSTRAINT df_syd DEFAULT '广 ' FOR 东

生 源地

GO

(8)

第 5章 表 数 据 的 维 护

一 、选择题

1.B 2.A 3.B 4.A 5.B 6. B

7.B 8.D 9.C 10 . C

二 、填空题

1. 人工输入

2.SQL脚 SQL脚 .sql 本 本文件

3. 可 主键或唯一键 代表一定记录范围

4.INSERT UPDATE DELETE

5. 删除规则

三 、设计题

1. 参考答案

( DROP DATABASE jwgl 1)

( 用 “ jwgl” 数 T-SQL脚 2) 记事本打开 据库教学模型的 本文件,将内容粘贴到

SSMS管 SQL编 窗 理器中的“ 辑器”

, 然后 单 工 运行” 行 可。 击 具栏 的“ ! 按钮执 即

2 在 .

完 成

第 情况下 1 题 的 ,设计 T-SQL语 如下 操作: 句完成

( 1 )参 考答案

INSERT INTO specialty (专

业 业 控 编 名 号 称 ,专 ) VALUES('0201','数 技术 ')

( 2 )参 考答案

INSERT INTO class(班 编号 , 班 名称 , 年 ,specialty_id) 级 级 级

VALUES('02011301',' 数

控 13-1','2013',(SELECT id FROM specialty

WHERE 专

业 控 名 称 =' 数 技术 '))

或 :

打 specialty专 开

业 查 控 业 如 值 表 的 是 "数 技术 "专 id字 值 , 例 , 如 id的 5, 段 果

则 可用

述 语句操作 :

INSERT INTO class(班 编号 , 班 名称 , 年 ,specialty_id) 级 级 级

VALUES('02011301','数

控 13-1','2013',5)

( 3 )参 考答案

DELETE student WHERE 学 ='0102110103' 号

( 4 )参 考答案

由于表间没有建立级联的“删除规则”,要从“ class” 班级表中删除“计算机 12-1”

的 须 四步进 记 录 , 分 行:

(9)

① 从

“ 绩 学 的成 绩 score” 成 表中 计 12-1”班 生 记录; 删 算机 除 “

② 从

“ 生 所 记录; student”学 表中 该班 的 有学 生 删 除

③ 从

“ 课 开过的 程记录; task”开 任务 该班所 课 表 中 删除

④ 从

“ 的 记 录 。 class” 班 表中 计 12-1”班 级 删 算机 除 “

语 如下 : 句

-- 方 id 值 法一:通过查询获得班级的

“ -- 从 score”成 “ 12-1”班 绩表中删除计算机 学生的成绩记录:

DELETE score WHERE student_id in(select id from student WHERE

class_id=(SELECT id FROM class WHERE 班 名称 =' 计 级

算 机 12-1'))

GO

“ -- 从 student”学 生表中删除该班的所有学生记录:

DELETE student WHERE class_id=(SELECT id FROM class WHERE

班 名称 =' 计 级

算 机 12-1')

GO

“ -- 从 task”开 课任务表中删除该班所开过的课程记录:

DELETE task WHERE class_id=(SELECT id FROM class WHERE 班级名称

=' 计

算 机 12-1')

GO --

“ 从 class”班 “ 12-1”班 级表中删除计算机 的记录:

DELETE class WHERE 班 名称 =' 计 级

算 机 12-1'

-- 或 :

-- 方 :使 SSMS方 id 值 法二 用 式查询得班级的

-- 在 SSMS 管 class 班 “ -1”班 id 值 3 理器中打开 级表,查到计算机 的 为

--

“ 从 score”成 “ 12-1”班 绩表中删除计算机 学生的成绩记录:

--DELETE score WHERE student_id in(select id from student WHERE class_id=3)

--GO --

“ 从 student”学 生表中删除该班的所有学生记录:

--DELETE student WHERE class_id=3 --GO

“ -- 从 task”开 课任务表中删除该班所开过的课程记录:

--DELETE task WHERE class_id=3 --GO

--

“ 从 class”班 “ 12-1”班 级表中删除计算机 的记录:

--DELETE class WHERE id=3 --GO

(10)

-- 如 “” 果表间建立了级联的删除规则,则用一行语句即可:

--DELETE class WHERE 班 名称 =' 计 级

算 机 12-1'

-- 或 :

--DELETE class WHERE id=3

( 5 )参 考答案

UPDATE teacher

SET 教 =' 刘 ' 师姓名 博士

WHERE 教 ='010104' 师编号

( 6 )参 考答案

UPDATE student

SET class_id=(SELECT id FROM class WHERE 班 =' 计 级名称 算机

11-1')

WHERE 姓 =' 黄 ' 名 听听

( 7 )参 考答案

UPDATE score

SET 成 =85 绩

WHERE student_id=(SELECT id FROM student WHERE 姓 名

=' 陈 ') and task_id in(SELECT id FROM task WHERE 小东

course_id=(SELECT id FROM course WHERE 课 ='JavaScript 程名称

程 ')) 序设计

3.参 考答案

( 0 )创 建表

CREATE TABLE dept (

id INT IDENTITY(1,1) CONSTRAINT pk_dept PRIMARY KEY, name VARCHAR(32) NOT NULL CONSTRAINT uq_name UNIQUE )

GO

CREATE TABLE staf (

id INT IDENTITY(1,1) CONSTRAINT pk_staf PRIMARY KEY, dept_id INT CONSTRAINT fk_st_de FOREIGN KEY REFERENCES dept(id),

number VARCHAR(6) CONSTRAINT uq_number UNIQUE, name VARCHAR(32) NOT NULL,

(11)

sex VARCHAR(6) CONSTRAINT ck_sec CHECK(sex=' 男 ' OR sex='女'),

age INT )

( 1 )参 考答案

INSERT INTO dept(name)

VALUES ('开 '), 发部

('技 '), 术部

('生 部'), 产

('后 部'), 勤

('财

务 部 ')

GO

INSERT INTO staf(dept_id,number,name,sex,age)

VALUES (1,'001','张 ','男 ',39), 明明

(2,'002','李

小 双','女 ',32),

(2,'003','王 ','男 ',54), 东兴

(1,'004','陈 ','女 ',42), 肖青

(4,'005','黄 ','女 ',24) 冰河

( 2 )参 考答案

--将生产 部”修改 市场 部” “ 为 “

UPDATE dept SET name=' 市 部 ' WHERE name=' 生 部 ' 场 产

( 3 )参 考答案

--将陈肖 “ 青

”的 年龄 修改为“ 所 部门修 市场 部” 属 改 为 “ 52”,

UPDATE staf

SET age=52,dept_id=(SELECT id FROM dept WHERE name='市 部 ') 场

WHERE name=' 陈 ' 肖青

( 4 )参 考答案

--将 “技术部”的

所 年龄 ” 有员工的“ 增加 1岁

UPDATE staf SET age=age+1

WHERE dept_id=(SELECT id FROM dept WHERE name=' 技 ') 术部

( 5 )参 考答案

--将 黄冰河 员工“

” 财 划归 “ 务部”

UPDATE staf

SET dept_id=(SELECT id FROM dept WHERE name='财

务 部 ')

WHERE name=' 黄 ' 冰河

( 6 )参 考答案

(12)

--将王东 “ 兴

” 员工表中删除 从

DELETE FROM staf WHERe name='王 ' 东兴

( 7 )参 考答案

--将后勤 部” 以及 其员工记录 “

全 部删除

DELETE staf

WHERE dept_id=(SELECT id FROM dept WHERE name=' 后 部 ') 勤

GO

DELETE dept WHERE name='后 部 ' 勤

GO

(13)

第 6章 查 询 数 据

一 、选择题

1.C 2.A 3.D 4.B 5.B 6.A

7.C 8.D

9. A 10 .C 11.B 12 . C

二 、填空题

1. 出列 数 源对 选 输 据 象 择条件

2.SELECT GROUP BY 3.外

连 接 右 连接 外

4.关 系表

达 式

5.% _ [] [^]

三 、设计题

1. 参考答案

SELECT sp. 专 ,专 ,cl.* 业编号 业名称

FROM specialty AS sp,class AS cl WHERE cl.specialty_id=sp.id

2. 参考答案

SELECT sp. 专 ,sp.专 ,cl.班 ,cl.班 , 业编号 业名称 级编号 级名称

年 ,st.* 级

FROM class AS cl,student AS st,specialty AS sp WHERE st.class_id=cl.id AND cl.specialty_id=sp.id

3. 参考答案

SELECT sp. 专 ,专 ,co.* 业编号 业名称

FROM specialty AS sp,course AS co WHERE co.specialty_id=sp.id

4. 参考答案

SELECT sp. 专 ,sp.专 ,cl.班 , cl. 班 ,cl. 业编号 业名称 级编号 级名称

年 ,co.开 ,co.课 ,co.课 ,co.课 ,co.学 ,co. 级 课学期 程编号 程名称 时 分

周 ,te.教 ,te.教 ,ta.id,ta. 学 ,ta.学 ,ta.起 课时 师编号 师姓名 年 期 止周

FROM specialty AS sp,class AS cl,course AS co,teacher AS te,task As ta

WHERE cl.specialty_id=sp.id AND co.specialty_id=sp.id AND ta.teacher_id=te.id AND ta.course_id=co.id AND

(14)

ta.class_id=cl.id

5. 参考答案

SELECT st. 学 ,st.姓 ,st.性 ,sp.专 ,cl.班 ,cl. 号 名 别 业名称 级名称

年 ,te.教 ,ta.学 ,ta.学 ,co.课 ,sc.成 级 师姓名 年 期 程名称 绩

FROM specialty AS sp,class AS cl,course AS co,teacher AS te,task As ta,student AS st,score AS sc

WHERE cl.specialty_id=sp.id AND co.specialty_id=sp.id AND ta.teacher_id=te.id AND ta.course_id=co.id AND

ta.class_id=cl.id AND sc.task_id=ta.id AND st.id=sc.student_id

6. 参考答案

-- 设 T-SQL 语 “” 计 句查询输出计算机应用技术专业的所有开设课程信息

SELECT s.专 ,c.* 业名称

FROM course AS c,specialty AS s

WHERE s.专 =' 计 ' AND s.id=c.specialty_id 业名称 算机应用技术

7. 参考答案

-- 设 T-SQL 语 “ 2012” 级 “” 计 句查询输出 所有姓陈学生的信息

SELECT cl. 年 ,st.* 级

FROM student AS st,class AS cl

WHERE cl.id=st.class_id AND cl.年 ='2012' AND 姓 LIKE 级 名

'陈 %'

8. 参考答案

-- 设 T-SQL语 查询 输 计 句

出 年 “ 2012-2013 学 1

学 期

” 各 班 学 生 成 绩

的 次等 信 ,结 果要求按平均 分 大到小 出 最高 分、 最低 分、 平均 分、参试人 息 从 排序 输 。

SELECT ta. 学 ,ta.学 ,cl.班 ,MAX(sc.成 ) AS 年 期 级名称 绩

最 ,MIN(sc.成 ) AS 最 ,AVG(sc.成 ) AS 平 ,COUNT(sc. 高分 绩 低分 绩 均分

成 ) AS 参 绩 试人次

FROM score AS sc,task AS ta,student AS st,class AS cl WHERE sc.task_id=ta.id AND

(15)

sc.student_id=st.id AND st.class_id=cl.id AND

ta.学 ='2012-2013' AND 年

ta.学 =1 期

GROUP BY ta. 学 ,ta.学 ,cl.班 年 期 级名称

ORDER BY 平 DESC 均分

9. 参考答案

-- 设 T-SQL语 查询 输 计 句

出 年 “ 2012-2013 学 1

期 ”成

绩 合 生 息 专 、学期、成 ”,结 不 格的学 信 “学号、姓名、 业、 班级 、学 年 绩 果按 “学号”

排序

输 出。

SELECT st. 学 ,st.姓 ,sp.专 ,cl.班 ,ta.学 ,ta. 号 名 业名称 级名称 年

学 ,co.课 ,sc.成 期 程名称 绩

FROM score AS sc,task AS ta,student AS st,class AS cl,specialty AS sp,course AS co

WHERE sc.task_id=ta.id AND sc.student_id=st.id AND st.class_id=cl.id AND

cl.specialty_id=sp.id AND ta.course_id=co.id AND

ta.学 ='2012-2013' AND 年

ta.学 =1 AND 期

sc.成 <60 绩

ORDER BY st. 学 号

10 . 参考答案

-- 使 T-SQL 用子查询设计

查 “” 询语句查询有哪些专业开设了计算机应用基础课。

SELECT *

FROM specialty

WHERE id IN(SELECT specialty_id FROM course

WHERE 课 =' 计 ' 程名称 算机应用基础

)

(16)

第 7章 视 图

与 索 引

一 、选择题

1.C 2.C 3.A 4.D 5.C 6.A 7.C

8.D

9.C 10.D 11.A 12.B

二 、填空题

1.

虚 抽 取

2. 标准

视 图 图 分 视 区

3. 创建

4. WITH ENCRYPTION 5.DROP VIEW <视

图 名 称 >

6. 列 一

或 多 列

7.重

新 成 生

三 、设计题

1. 参考答案

图 步骤 参考第 的 设 计 7章 7.2.1”节。 的“

(17)

2. 参考答案

3. 参考答案

CREATE VIEW vStudentScore AS

SELECT st.学 ,st.姓 ,ta.学 号 名

年 程 绩 名 称 ,ta.学 ,co.课 ,sc.成 期

FROM class AS cl,student AS st,task AS ta,course AS co,score AS sc

WHERE cl. 班 名称 =' 计 级

算 机 11-1' and

st.class_id=cl.id and ta.class_id=cl.id and ta.course_id=co.id and sc.student_id=st.id and

sc.task_id=ta.id and ta. 学

年 ='2012-2013' and

ta. 学 =2 期

4. 参考答案

CREATE VIEW vTask12132

(18)

AS

SELECT ta.学

年 师 程 编 号 ,ta.学 ,te.教 姓名 ,cl. 班 名称 ,co.课 ,co. 期 级

程 课 名 称 ,co.开 学期 ,co.课 ,co.周 时 课时

FROM task AS ta,course AS co,teacher AS te,class AS cl WHERE ta.学

年 ='2012-2013' and ta. 学 =2 and 期

ta.class_id=cl.id and ta.course_id=co.id and ta.teacher_id=te.id

5. 参考答案

--创 vClass”视 建“

图 该视 图 个 详细 信 。 , 返回各 班级 的 息

CREATE VIEW vClass AS

SELECT sp.专 , 专 ,cl.* 业编号 业名称

FROM specialty AS sp,class AS cl WHERE cl.specialty_id=sp.id

6. 参考答案

--创 vCourse”视 建“

图 该视 图 个 业 开设的 程的 详细 信 , 返回各 专 所 课 息

CREATE VIEW vCourse AS

SELECT sp.专 , 专 ,co.* 业编号 业名称

FROM specialty AS sp,course AS co WHERE co.specialty_id=sp.id

7. 参考答案

--创 vStudent” 视 建“

图 该视 图 生 详细 信 。 , 返回 学 的 息

CREATE VIEW vStudent AS

SELECT sp.专 ,sp.专 ,cl.班 ,cl.班 ,年 ,st.* 业编号 业名称 级编号 级名称 级

FROM class AS cl,student AS st,specialty AS sp WHERE st.class_id=cl.id AND cl.specialty_id=sp.id

8. 参考答案

--创 vTask”视 建“

图 该视 图 个 课 详 信 。 , 细 返回各 学 任务 的 息 期开

CREATE VIEW vTask AS

(19)

SELECT sp.专 ,sp.专 ,cl.班 , cl.班 名 ,cl.年 ,co. 业编号 业名称 级编号 级 称 级

开 ,co.课 ,co.课 ,co.课 ,co.学 ,co.周 ,te. 课学期 程编号 程名称 时 分 课时

教 ,te.教 ,ta.id,ta. 学 ,ta.学 ,ta.起 师编号 师姓名 年 期 止周

FROM specialty AS sp,class AS cl,course AS co,teacher AS te,task As ta

WHERE cl.specialty_id=sp.id AND co.specialty_id=sp.id AND ta.teacher_id=te.id AND ta.course_id=co.id AND ta.class_id=cl.id

9. 参考答案

--创 vScore”视 建“

图 该视 图 个 生 课 的 息 , 返回各 学 的 程学习成 绩 详细 信 。

CREATE VIEW vScore AS

SELECT st.学 ,st.姓 ,st.性 ,sp.专 ,cl.班 ,cl.年 ,te. 号 名 别 业名称 级名称 级

教 ,ta.学 ,ta.学 ,co.课 ,sc.成 师姓名 年 期 程名称 绩

FROM specialty AS sp,class AS cl,course AS co,teacher AS te,task As ta,student AS st,score AS sc

WHERE cl.specialty_id=sp.id AND co.specialty_id=sp.id AND ta.teacher_id=te.id AND ta.course_id=co.id AND

ta.class_id=cl.id AND sc.task_id=ta.id AND st.id=sc.student_id

(20)

第 8章 T-SQL 编 程

一 、选择题

1.A 2.C 3.D 4.C 5.D 6.C

7. C

二 、将

列 数学式 成 达 子转换 T-SQL 表 式

1. 2.5*10+(@x-10)/@y*3.5

2. (10*@a+(10-@c)/(5+@d))/(2*@b) 3. @x>=100 OR @x<10

4.(50<=@x AND @x<100) OR (5*@x<=@y AND @y<100-@z)

三 、程

序 设计题

1. 参考答案

DECLARE @a INT,@b INT,@c INT DECLARE @p float,@area float SET @a=15

SET @b=20 SET @c=30

SET @p=(@a+@b+@c)/2

SET @area=SQRT(@p*(@p-@a)*(@p-@b)*(@p-@c)) print @area

2. 参考答案

参 8-10】 考【例

3. 参考答案

DECLARE @h float,@s float,@n INT SET @h=100.0

SET @s=100.0 SET @n=2 WHILE @n<=10 BEGIN

SET @h=@h/2.0 SET @s=@s+@h*2 SET @n=@n+1 END

PRINT @s

(21)

PRINT @h/2

4. 参考答案

参 8-14】 考【例

5. 参考答案

SELECT a.*,及

格 格 次 人 率=1.0*及 / 总 次 *100 人

FROM (SELECT 班 名称 , 总 次 =( 级 人

SELECT COUNT(sc.成

绩 )

FROM class AS cla,student AS st,score AS sc

WHERE cla.id=st.class_id AND st.id=sc.student_id AND cla.id=cl.id

GROUP BY cla. 班 名称 级

),及

格 次 绩 人 =( SELECT COUNT(sc. 成 )

FROM class AS cla,student AS st,score AS sc

WHERE cla.id=st.class_id AND st.id=sc.student_id AND cla.id=cl.id AND sc.成

绩 >=60

GROUP BY cla.班 名称 级

)

FROM class AS cl

WHERE cl. 年 ='2012' 级

) AS a

ORDER BY 及

格 率DESC

6. 参考答案

SELECT 学 , 姓 ,SUM(绩 号 名

点 绩 ) AS 总 点

FROM (SELECT 学 ,姓 ,成 号 名

绩 点 ,绩 =CASE

WHEN 成

绩 <60 THEN 1

WHEN 成

绩 绩 >=60 AND 成 <80 THEN 1.5

WHEN 成

绩 绩 >=80 AND 成 <90 THEN 2.5

WHEN 成

绩 >=90 THEN 3

END

FROM class AS cl,student AS st,score AS sc

WHERE cl.id=st.class_id AND st.id=sc.student_id AND cl. 年 级

='2012') AS jd

GROUP BY 学 ,姓 号 名

ORDER BY 总

绩 点DESC

(22)

第 9章 函 数

一 、选择题

1.C 2.B 3.B 4.D 5 .A 6 .D

7.B 8.A 9.D 10 . C

二 、填空题

1.

功 值 果 集 能 数 结

2. 标量

值 函数 内 置函数

3.RANK NTILE

4.CREATE FUNCTION ALTER FUNCFION DROP FUNCTION

三 、程

序 设计题

1. 参考答案

CREATE FUNCTION area(@a FLOAT,@b FLOAT,@c FLOAT) RETURNS FLOAT

AS BEGIN

DECLARE @p FLOAT,@area FLOAT

IF(@a+@b>@c AND @a+@c>@b AND @c+@b>@a) BEGIN

SET @p=(@a+@b+@c)/2

SET @area=SQRT(@p*(@p-@a)*(@p-@b)*(@p-@c))

END ELSE

SET @area=-1 --不 构 能

三 角 形

RETURN @area END

2. 参考答案

CREATE FUNCTION convScore(@score float) RETURNS VARCHAR(6)

AS BEGIN

DECLARE @sc VARCHAR(6)

(23)

IF @score>=90.0

SET @sc='优 ' 秀

ELSE IF @score>=80.0

SET @sc='良 ' 好

ELSE IF @score>=70.0 SET @sc='中

等 '

ELSE IF @score>=60.0 SET @sc='及

格 '

ELSE

SET @sc='不

及 格 '

RETURN @sc END

3. 参考答案

CREATE FUNCTION passRate(@level AS VARCHAR(4)) RETURNS TABLE

AS

RETURN (

SELECT a.*,及

格 格 次 人 率=1.0*及 /总 次 *100 人

FROM (SELECT 班 名称 , 级

总 次=(SELECT COUNT(sc.成 人

绩 )

FROM class AS cla,student AS st,score AS sc WHERE cla.id=st.class_id AND st.id=sc.student_id AND cla.id=cl.id

GROUP BY cla. 班 名称 级

), 及

格 次 绩 人 =(SELECT COUNT(sc.成 )

FROM class AS cla,student AS st,score AS sc

WHERE cla.id=st.class_id AND st.id=sc.student_id AND cla.id=cl.id AND sc.成

绩 >=60

GROUP BY cla.班 名称 级

) FROM class AS cl

WHERE cl. 年 =@level) AS a 级

)

4. 参考答案

CREATE FUNCTION sumJd(@level AS VARCHAR(4))

(24)

RETURNS @temp TABLE(学 VARCHAR(10), 号

姓 VARCHAR(32), 名

绩 点 FLOAT

) AS

BEGIN

INSERT INTO @temp

SELECT 学 ,姓 ,SUM(绩 号 名

点 绩 ) AS 总 点

FROM (SELECT 学 , 姓 , 成 号 名

绩 点 ,绩 =CASE

WHEN 成

绩 <60 THEN 1

WHEN 成

绩 绩 >=60 AND 成 <80 THEN 1.5

WHEN 成

绩 绩 >=80 AND 成 <90 THEN 2.5

WHEN 成

绩 >=90 THEN 3

END

FROM class AS cl,student AS st,score AS sc

WHERE cl.id=st.class_id AND st.id=sc.student_id AND

cl. 年 =@level) AS jd 级

GROUP BY 学 , 姓 号 名

ORDER BY 总

绩 点DESC

RETURN END

(25)

第 10章 存 储 过 程

一 、选择题

1.D 2.A 3.C 4.B 5.B 6.A

7. C

8.C 9.A 10.D

二 、填空题

1.用 户自定义

存 储 过程

2. ENCRYPTION

3.SYSADMIN MASTER 4. SP_RENAME

三 、设计题

1. 参考答案

-- 设 计 一 个 插 入 班 级 信 息 的 存 储 过

程 addClass” “

, 该 存 储 过

(26)

程 传 入

“ 专 业 名 称

, 班 级 编 号

班 名称, 等 息 如果班级 插入成 则 息 否 返回 “ 级 年级 ” 信 , 功 返回状态 信 “ 1” , 则 0” 。

USE jwgl GO

IF OBJECT_ID('addClass','P') IS NOT NULL DROP PROCEDURE addClass

GO

CREATE PROCEDURE addClass

@zymc VARCHAR(64),

@bjbh VARCHAR(8),

@bjmc VARCHAR(64),

@nj VARCHAR(4) AS

DECLARE @status INT,@zyid INT -- 定 id变 义状态变量,专业 量

SET @status=1 -- 设 置状态变量初值为,先假设为

BEGIN TRY --监 控插入记录处理

SET @zyid=(SELECT id FROM specialty WHERE 专 =@zymc) 业名称

INSERT INTO class(班 , 班 , 年 ,specialty_id) 级编号 级名称 级

VALUES(@bjbh,@bjmc,@nj,@zyid) END TRY

BEGIN CATCH --插 入记录错误处理

SET @status=0 --插 入记录失败时,状态变量值设置为

END CATCH

RETURN @status -- 返 回操作状态

GO

(27)

--存 调 储过程 用

--EXECUTE addClass '计 ','01011302','计 -2','2013' 算机应用技术 算机

2. 参考答案

--设 “”“ delStudent” 。 计一个根据学号删除学生信息的存储过程

USE jwgl GO

IF OBJECT_ID('delStudent','P') IS NOT NULL DROP PROCEDURE delStudent

GO

CREATE PROCEDURE delStudent

@xh VARCHAR(10) AS

DECLARE @status INT,@xhid INT -- 定 id变 义状态变量,学号 量

SET @status=1 -- 设 置状态变量初值为,先假设为

BEGIN TRY --监 控删除记录处理

SET @xhid=(SELECT id FROM student WHERE 学 =@xh) 号

DELETE score WHERE student_id=@xhid

DELETE student WHERE 学 =@xh 号

END TRY

BEGIN CATCH --删 除记录错误处理

SET @status=0 --删 除记录失败时,状态变量值设置为

END CATCH

RETURN @status -- 返 回操作状态

GO

--存 调 储过程 用

--EXECUTE delStudent '0101120203'

3. 参考答案

-- 设 计 一 个 修 改 学 生 学

(28)

习 成

绩 “ updateScore”, “” 的存储过程 该存储过程传入学号、课程编号、成绩三个参数。

USE jwgl GO

IF OBJECT_ID('updateScore','P') IS NOT NULL DROP PROCEDURE updateScore

GO

CREATE PROCEDURE updateScore

@xh VARCHAR(10),

@kcbh VARCHAR(6),

@cj DECIMAL(6,2) AS

DECLARE @status INT --定 义状态变量

DECLARE @kcid INT --课 id变 程 量

DECLARE @bjid INT --班 id变 级 量

DECLARE @rwid INT --任 id变 务 量

DECLARE @xsid INT --学 id变 , 生 量

SET @status=1 --设 置状态变量初值为,先假设为

BEGIN TRY --监 控修改记录处理

SET @xsid=(SELECT id FROM student WHERE 学 =@xh) 号

SET @kcid=(SELECT id FROM course WHERE 课 =@kcbh) 程编号

SET @bjid=(SELECT class_id FROM student WHERE 学 =@xh) 号

SET @rwid=(SELECT id FROM task WHERE class_id=@bjid AND course_id=@kcid)

UPDATE score SET 成 =@cj WHERE student_id=@xsid AND 绩

task_id=@rwid END TRY

BEGIN CATCH --修 改记录错误处理

SET @status=0 --修 改记录失败时,状态变量值设置为

END CATCH

RETURN @status -- 返 回操作状态

GO

--存 调 储过程 用

--EXECUTE updateScore '0101120201','010105',90.09

4.参 考答案

--设 “ showTeacher” 。 计一个查询显示教师表信息的存储过程

(29)

USE jwgl GO

IF OBJECT_ID('showTeacher','P') IS NOT NULL DROP PROCEDURE showTeacher

GO

CREATE PROCEDURE showTeacher AS

SELECT * FROM teacher GO

--存 调 储过程 用

--EXECUTE showTeacher

5. 参考答案

--

“”“”“ 请 getStJd”, 设计一个根据学号计算学生学习成绩总绩点的存储过程

“”“ 已 <60 ,绩 =1;60<=成 <80 ,绩 知成绩转换成绩点的计算方法是成绩 点 绩 点

=1.5;80<=成 <90 ,绩 =2.5;成 >=90,绩 =3” 。 绩 点 绩 点

--函 数实现

CREATE FUNCTION dbo.getStJd(@xh VARCHAR(10)) RETURNS FLOAT

AS BEGIN

DECLARE @jd FLOAT

SET @jd=(SELECT SUM( 绩 ) 点

FROM (SELECT 学 , 姓 , 成 ,绩 =CASE 号 名 绩 点

WHEN 成 <60 THEN 1 绩

WHEN 成 >=60 AND 成 <80 THEN 绩 绩

1.5

WHEN 成 >=80 AND 成 <90 THEN 绩 绩

2.5

WHEN 成 >=90 THEN 3 绩

END

FROM class AS cl,student AS st,score AS sc

WHERE cl.id=st.class_id AND st.id=sc.student_id ) AS jd

WHERE 学 =@xh 号

)

RETURN @jd END

(30)

GO

--函 数调用

--PRINT dbo.getStJd('0101110201')

--存 储过程实现

USE jwgl GO

IF OBJECT_ID('getStJd','P') IS NOT NULL DROP PROCEDURE getStJd

GO

CREATE PROCEDURE getStJd

@xh VARCHAR(10) AS

DECLARE @jd FLOAT

SET @jd=(SELECT SUM( 绩 ) 点

FROM (SELECT 学 ,姓 ,成 ,绩 =CASE 号 名 绩 点

WHEN 成 <60 THEN 1 绩

WHEN 成 >=60 AND 成 <80 THEN 绩 绩

1.5

WHEN 成 >=80 AND 成 <90 THEN 绩 绩

2.5

WHEN 成 >=90 THEN 3 绩

END

FROM class AS cl,student AS st,score AS sc

WHERE cl.id=st.class_id AND st.id=sc.student_id ) AS jd

WHERE 学 =@xh 号

)

RETURN @jd

--GO

--存 调 储过程 用

--DECLARE @d FLOAT

--EXECUTE @d=getStJd '0101110104' --PRINT @d

6.参 考答案

--设 存储 过程“ getRandNumber”, 该 计一个 存储

程 随机产生 每 n组 组 5

且 间 随机 整数, 随机产生 一个 值在 间 值 的 的 在 整 数 [1 , 49] 之 然后 , [1 , n] 之

(31)

x,

最 , 出 随 数, 并且要求对 密。 后 机 存 储 要求 输 n组 x组 5个 过程 加 数中的第 的

USE jwgl GO

IF OBJECT_ID('getRandNumber','P') IS NOT NULL DROP PROCEDURE getRandNumber

GO

CREATE PROCEDURE getRandNumber

@n INT AS BEGIN

IF NOT Exists(SELECT * FROM sysObjects WHERE Name ='#temps' And Type In ('U'))

BEGIN

CREATE TABLE #temps(

id INT IDENTITY(1,1), aa INT,

bb INT, cc INT, dd INT, ee INT )

END

DECLARE @x INT,@a INT,@b INT,@c INT,@d INT,@e INT SET @x=1

WHILE(@x<=@n) BEGIN

SET @a=FLOOR(1+RAND()*49) SET @b=FLOOR(1+RAND()*49)

SET @c=FLOOR(1+RAND()*49) SET @d=FLOOR(1+RAND()*49) SET @e=FLOOR(1+RAND()*49)

INSERT INTO #temps VALUES(@a,@b,@c,@d,@e) SET @x=@x+1

END

SELECT * FROM #temps

SET @a=FLOOR(1+RAND()*@n)

SELECT * FROM #temps WHERE id=@a

(32)

END

--存 储过程调用

--EXECUTE getRandNumber 50

(33)

第 11章 游 标

一 、选择题

1.D 2.A 3.C 4.C 5.B 6.D

7.B 8.D

二 、填空题

1.

动 标 态 游 标 只 进游

2.<游

标 名 > <SELECT语 > 句

3. FETCH 语 INTO <@变 句

量 名 >

4.

游 标 调 存储 过程 用

5. 游 简单数据类型

标 量 变

三 、程

序 设计题

1. 参考答案

CREATE FUNCTION totalSPSN(@nj VARCHAR(4)) RETURNS INT

AS BEGIN

DECLARE csGrade CURSOR SCROLL

FOR SELECT 姓 FROM student AS st,class AS cl WHERE 名

cl.id=st.class_id AND cl. 年 =@nj 级

OPEN csGrade

DECLARE @n INT,@name VARCHAR(32) SET @n=0

FETCH NEXT FROM csGrade INTO @name WHILE(@@FETCH_STATUS=0)

BEGIN

SET @n=@n+1

FETCH NEXT FROM csGrade INTO @name END

RETURN @n END

-- 测 试

--SELECT dbo.totalSPSN('2011')

2. 参考答案

(34)

--createTask 学 ,学 ,学 年 期 制 CREATE PROCEDURE createTask

@xn VARCHAR(9), --传 入学年参数

@xq INT, --传 入学期参数

@xj INT --传 :2 、 入学制 、年

AS BEGIN

DECLARE @kcnj INT DECLARE @x INT

SET @x=CAST(LEFT(@xn,4) AS INT) -- 开 课结束年级

SET @kcnj=@x-(@xj-1) -- 开 课开始年级

WHILE(@kcnj<=@x) -- 开 课年级循环处理

BEGIN

DECLARE @kcxq INT

SET @kcxq=(@x-@kcnj)*2+@xq --开 课学期

DECLARE csClass CURSOR SCROLL --年 级中的班级游标

FOR SELECT sp.id,cl.id --游 标只返回专业

id 、 id 班级

FROM class As cl,specialty AS sp

WHERE sp.id=cl.specialty_id AND 年 =@kcnj 级

OPEN csClass

DECLARE @zyid INT,@bjid INT

--从 id 、 id 游标提取一个班的专业 班级

FETCH NEXT FROM csClass INTO @zyid,@bjid WHILE(@@FETCH_STATUS=0)

BEGIN

-- 生 (id) 成游标提取的专业 班级

(id) 指定学期的开课任务

INSERT INTO task

SELECT 学 =@xn, 学 =@xq, 年 期

起 ='01-'+LTRIM(STR(课 / 止周 时

周 ,2,0)), 课时

class_id=@bjid,course_id=id, teacher_id=NULL

FROM course

WHERE specialty_id=@zyid AND 开 课学期

=@kcxq

(35)

--取 下一个班 FETCH NEXT FROM csClass INTO @zyid,@bjid

END

CLOSE csClass DEALLOCATE csClass

SET @kcnj=@kcnj+1 --下 一开课年级

END END

-- 调 用测试

--EXECUTE createTask '2014-2015',1,3

3. 参考答案

CREATE FUNCTION totalScore(@xn VARCHAR(9),@xq INT)

RETURNS @fdTABLE TABLE(学 VARCHAR(9), --定 年 义返回表

学 INT, 期

班 VARCHAR(64), 级名称

课 VARCHAR(128), 程名称

总 INT, 人数

不 INT, 及格人数

及 INT, 格人数

中 INT, 等人数

良 INT, 人数

优 INT 人数

) AS

BEGIN

DECLARE @bjmc VARCHAR(64),@kcmc VARCHAR(128) --声 明变量

-- 声 明统计用变量

DECLARE @zrx INT,@bjg INT,@jg INT,@zd INT,@l INT,@y INT DECLARE @CJ FLOAT

DECLARE csCourse CURSOR SCROLL -- 声 明班级课程游标

FOR SELECT 班 ,课 级名称 程名称

FROM class AS cl,course AS co,task As ta,score AS sc

WHERE ta.course_id=co.id AND ta.class_id=cl.id AND

sc.task_id=ta.id AND ta.学 =@xn AND ta. 学 年 期

=@xq

GROUP BY 班 ,课 级名称 程名称

(36)

OPEN csCourse --打 开班级课程游标

-- 提 取班级的第一门课程

FETCH NEXT FROM csCourse INTO @bjmc,@kcmc WHILE(@@FETCH_STATUS=0)

BEGIN

SET @zrx=0 -- 初 : 始化统计变量 总人数

SET @bjg=0 -- 不 级格人数

SET @jg=0 -- 及 格人数

SET @zd=0 -- 中 等人数

SET @l=0 --良 人数

SET @y=0 --优 人数

DECLARE csScore CURSOR SCROLL --

声 明提取的课程的成绩游标

FOR SELECT 成 绩

FROM class AS cl,course AS co,task As ta,score AS sc

WHERE ta.course_id=co.id AND ta.class_id=cl.id AND

sc.task_id=ta.id AND ta.学 =@xn AND ta. 学 年 期

=@xq AND

cl.班 =@bjmc AND co.课 =@kcmc 级名称 程名称

OPEN csScore --打 开成绩游标

FETCH NEXT FROM csScore INTO @cj --

提 取课程的第一个成绩

WHILE(@@FETCH_STATUS=0) BEGIN

SET @zrx=@zrx+1 --统 计总人数

IF(@CJ<60) -- 统 计各段人数

SET @bjg=@Bjg+1 ELSE IF(@CJ<70)

SET @jg=@jg+1 ELSE IF(@CJ<80)

SET @zd=@zd+1 ELSE IF(@CJ<90)

SET @l=@l+1 ELSE

SET @y=@y+1

(37)

-- 提 取课程的下一个成绩 FETCH NEXT FROM csScore INTO @cj

END

--插 一 入 门课程的统计记录

INSERT INTO @fdTABLE

VALUES(@xn,@xq,@bjmc,@kcmc,@zrx,@bjg,@jg,@zd,@l,@y)

CLOSE csScore --关 闭成绩游标

DEALLOCATE csScore --释 放成绩游标

-- 提 取下一门课程

FETCH NEXT FROM csCourse INTO @bjmc,@kcmc END

CLOSE csCourse --关 闭课程游标

DEALLOCATE csCourse --释 放课程游标

RETURN END

-- 调 用测试

--SELECT *

--FROM dbo.totalScore('2011-2012',1)

--ORDER BY 班 级名称

(38)

第 12章 触 发

一 、选择题

1.C 2.D 3.A 4.C 5.C 6.A

7.C 8.D

二 、填空题

1.

被 动执 行 自

2.SDDL触

发 器 后 发器 触

3. DELETED 4.

声 创建 后触 发器 明

5.

声 创建数 明 据 库 作用域范围

6. INSERT 、UPDATE或DELETE CREATE、 ALTER 、 DROP

三 、程

序 设计题

1.参 考答案

CREATE TRIGGER dbo.csInsClass ON class

INSTEAD OF INSERT -- 创 建替代插入触发器

AS BEGIN

DECLARE @bjbh VARCHAR(8) DECLARE @zybh VARCHAR(4)

DECLARE @nj VARCHAR(2) DECLARE @f INT

SET @bjbh=(SELECT 班 FROM INSERTED) --取 级编号 验证的班级编号

SET @zybh=LEFT(@bjbh,4) --取 专业编号

SET @nj=SUBSTRING(@bjbh,5,2) --取 年级

SET @f=1

IF(@zybh!=(SELECT 专 ROM specialty WHERE id=(SELECT 业编号

specialty_id FROM INSERTED))) SET @f=-1

ELSE IF (@nj!=(SELECT RIGHT( 年 ,2) FROM INSERTED)) 级

SET @f=-1

ELSE IF EXISTS(SELECT * FROM class WHERE 班 =@bjbh) 级编号

SET @f=-1 IF(@f=-1)

(39)

PRINT ' 班 已 格 ' 级编号 存在或 式错误! ELSE

INSERT INTO class SELECT 班 , 班 , 年 ,specialty_id FROM 级编号 级名称 级

INSERTED END

--测 试

INSERT INTO class VALUEs('01011602','计 16-1','2016',1) --成 算机 功

GO

INSERT INTO class VALUEs('01021602','计 16-2','2016',1) --失 算机 败

GO

INSERT INTO class VALUEs('01011502','计 16-3','2016',1) --失 算机 败

GO

2. 参考答案

CREATE TRIGGER dbo.csUpBirthday ON student

INSTEAD OF UPDATE -- 创 建替代修改触发器

AS

IF UPDATE(出 ) 生日期

BEGIN

DECLARE @nj VARCHAR(4),@btd INT,@n INT

SET @nj=(SELECT 年 FROM class WHERE id=(SELECT class_id FROM 级

INSERTED))

SET @btd=(SELECT YEAR( 出 ) FROM INSERTED) 生日期

SET @n=CAST(@nj AS INT)-@btd SELECT * FROM INSERTED

PRINT @n

IF (@n<15 OR @n>20)

PRINT '出 生日期不合法,学生年

龄 间 在 15 到 20 岁之 为 ' 合法!

ELSE

UPDATE student SET 出 =(SELECT 出 FROM INSERTED) 生日期 生日期

END

3. 参考答案

CREATE TRIGGER dbo.trDelTask ON task

INSTEAD OF DELETE --创 建替代删除触发器

AS BEGIN

DECLARE @xn VARCHAR(9),@xq INT

SET @xn=(SELECT TOP 1 学 FROM DELETED) --取 年 出学年

(40)

SET @xq=(SELECT TOP 1 学 FROM DELETED) --取 期 出学期

DELETE score WHERE task_id IN(SELECT id FROM task WHERE 学 =@xn 年

AND 学 =@xq) --先删 记 期 除成绩 录

DELETE task WHERE 学 =@xn AND 学 =@xq --后删 记 年 期 除任务 录

END

--测 试

--DELETE task WHERE 学 ='2012-2013' AND 学 =1 年 期

(41)

第 13章 备 份 与 恢

一 、选择题

1.A 2.D 3.D 4.C 5.B 6.A

7.D 8. C

二 、填空题

1.

差 数据库 异 备 份 数 据文件和文件组备份

2. 大 志 简单 容量日

3.INIT

4. FILE=<n>

5. 志 事务日

三 、程

序 设计题

1. 参考答案:

--先 D盘 在

创 , 行如下代码: 建 D:\dbBackup文 夹 然后执 件

EXECUTE sp_addumpdevice

'DISK','myDBBak','D:\dbBackup\dataBackup.bak'

2. 参考答案:

--1.完 整备份

BACKUP DATABASE jwgl TO myDBBak WITH NAME='jwgl-完 ',INIT 整备份

--2.差 异备份

BACKUP DATABASE jwgl TO myDBBak WITH NAME='jwgl-

差 ',DIFFERENTIAL 异备份

--3.事

务 日 志 备份

BACKUP LOG jwgl TO myDBBak WITH NAME='jwgl- 事

务 日 志 备份 ',NOINIT

3. 参考答案:

(1)创 备份 设 建

EXECUTE sp_addumpdevice 'DISK','cwglDv','e:\cwglDb\cwglDb.Bak'

( 2 )

备 语句 份

--1.完 : 周 整备份

日 凌晨 2 时 行一 次 执

BACKUP DATABASE cwgl TO cwglDv WITH NAME='cwgl- 完 整

备 ',INIT 份

--2.差 : 每 的 异备份 天

晨 4时 行一 次 执

BACKUP DATABASE cwgl TO cwglDv WITH NAME='cwgl- 差 异

(42)

备 ',DIFFERENTIAL 份 --3.事

务 小 的第 钟 行一 次 日 执 志 备份 : 每 时 30 分 天每

BACKUP LOG cwgl TO cwglDv WITH NAME='cwgl- 事

务 日 志

备 ',NOINIT 份

( 3 )

如 系统 正常 ,备份 每周循 产生如下 集 果 策略 将 环 176个 : 备份

号 间 备 备 时 备 集序 号 份类型 份 份

1 完 星 整备份

期 日 2:00 1

2 日

志 期 日 备份 1 星 2:30 2

3 日

志 期 日 备份 2 星 3:30 3

4 差 备份 1 星 异

期 日 4:00 4

5 日

志 期 日 备份 3 星 4:30 5

6 日

志 期 日 备份 4 星 5:30 6

7 日

志 期 日 备份 5 星 6:30 7

8 日

志 期 日 备份 6 星 7:30 8

9 日

志 期 日 备份 7 星 8:30 9

10 日

志 期 日 备份 8 星 9:30 10

11 日

志 期 日 备份 9 星 10:30 11

12 日

志 期 日 备份 10 星 11:30 12

13 日

志 期 日 备份 11 星 12:30 13

14 日

志 期 日 备份 12 星 13:30 14

15 日

志 期 日 备份 13 星 14:30 15

16 日

志 期 日 备份 14 星 15:30 16

17 日

志 期 日 备份 15 星 16:30 17

18 日

志 期 日 备份 16 星 17:30 18

19 日

志 期 日 备份 17 星 18:30 19

20 日

志 期 日 备份 18 星 19:30 20

21 日

志 期 日 备份 19 星 20:30 21

22 日

志 期 日 备份 20 星 21:30 22

23 日

志 期 日 备份 21 星 22:30 23

24 日

志 期 日 备份 22 星 23:30 24

25 日

志 期 一 备份 23 星 0:30 25

26 日

志 期 一 备份 24 星 1:30 26

27 日

志 期 一 备份 25 星 2:30 27

28 日

志 期 一 备份 26 星 3:30 28

29 差 备份 2 星 异

期 一 4:00 29

30 日

志 期 一 备份 27 星 4:30 30

(43)

31 日

志 期 一 备份 28 星 5:30 31

32 日

志 期 一 备份 29 星 6:30 32

33 日

志 期 一 备份 30 星 7:30 33

34 日

志 期 一 备份 31 星 8:30 34

35 日

志 期 一 备份 32 星 9:30 35

36 日

志 期 一 备份 33 星 10:30 36

37 日

志 期 一 备份 34 星 11:30 37

38 日

志 期 一 备份 35 星 12:30 38

39 日

志 期 一 备份 36 星 13:30 39

40 日

志 期 一 备份 37 星 14:30 40

41 日

志 期 一 备份 38 星 15:30 41

42 日

志 期 一 备份 39 星 16:30 42

43 日

志 期 一 备份 40 星 17:30 43

44 日

志 期 一 备份 41 星 18:30 44

45 日

志 期 一 备份 42 星 19:30 45

46 日

志 期 一 备份 43 星 20:30 46

47 日

志 期 一 备份 44 星 21:30 47

48 日

志 期 一 备份 45 星 22:30 48

49 日

志 期 一 备份 46 星 23:30 49

50 日

志 期 二 备份 47 星 0:30 50

51 日

志 期 二 备份 48 星 1:30 51

52 日

志 期 二 备份 49 星 2:30 52

53 日

志 期 二 备份 50 星 3:30 53

54 差 备份 3 星 异

期 二 4:00 54

55 日

志 期 二 备份 51 星 4:30 55

56 日

志 期 二 备份 52 星 5:30 56

57 日

志 期 二 备份 53 星 6:30 57

58 日

志 期 二 备份 54 星 7:30 58

59 日

志 期 二 备份 55 星 8:30 59

60 日

志 期 二 备份 56 星 9:30 60

61 日

志 期 二 备份 57 星 10:30 61

62 日

志 期 二 备份 58 星 11:30 62

63 日

志 期 二 备份 59 星 12:30 63

64 日

志 期 二 备份 60 星 13:30 64

65 日

志 期 二 备份 61 星 14:30 65

(44)

66 日

志 期 二 备份 62 星 15:30 66

67 日

志 期 二 备份 63 星 16:30 67

68 日

志 期 二 备份 64 星 17:30 68

69 日

志 期 二 备份 65 星 18:30 69

70 日

志 期 二 备份 66 星 19:30 70

71 日

志 期 二 备份 67 星 20:30 71

72 日

志 期 二 备份 68 星 21:30 72

73 日

志 期 二 备份 69 星 22:30 73

74 日

志 期 二 备份 70 星 23:30 74

75 日

志 期 三 备份 71 星 0:30 75

76 日

志 期 三 备份 72 星 1:30 76

77 日

志 期 三 备份 73 星 2:30 77

78 日

志 期 三 备份 74 星 3:30 78

79 差 备份 4 星 异

期 三 4:00 79

80 日

志 期 三 备份 75 星 4:30 80

81 日

志 期 三 备份 76 星 5:30 81

82 日

志 期 三 备份 77 星 6:30 82

83 日

志 期 三 备份 78 星 7:30 83

84 日

志 期 三 备份 79 星 8:30 84

85 日

志 期 三 备份 80 星 9:30 85

86 日

志 期 三 备份 81 星 10:30 86

87 日

志 期 三 备份 82 星 11:30 87

88 日

志 期 三 备份 83 星 12:30 88

89 日

志 期 三 备份 84 星 13:30 89

90 日

志 期 三 备份 85 星 14:30 90

91 日

志 期 三 备份 86 星 15:30 91

92 日

志 期 三 备份 87 星 16:30 92

93 日

志 期 三 备份 88 星 17:30 93

94 日

志 期 三 备份 89 星 18:30 94

95 日

志 期 三 备份 90 星 19:30 95

96 日

志 期 三 备份 91 星 20:30 96

97 日

志 期 三 备份 92 星 21:30 97

98 日

志 期 三 备份 93 星 22:30 98

99 日

志 期 三 备份 94 星 23:30 99

100 日

志 期 备份 95 星 四 0:30 100

(45)

101 日

志 期 备份 96 星 四 1:30 101

102 日

志 期 备份 97 星 四 2:30 102

103 日

志 期 备份 98 星 四 3:30 103

104 差 备份 5 星 异

期 四 4:00 104

105 日

志 期 备份 99 星 四 4:30 105

106 日

志 期 备份 100 星 四 5:30 106

107 日

志 期 备份 101 星 四 6:30 107

108 日

志 期 备份 102 星 四 7:30 108

109 日

志 期 备份 103 星 四 8:30 109

110 日

志 期 备份 104 星 四 9:30 110

111 日

志 期 备份 105 星 四 10:30 111

112 日

志 期 备份 106 星 四 11:30 112

113 日

志 期 备份 107 星 四 12:30 113

114 日

志 期 备份 108 星 四 13:30 114

115 日

志 期 备份 109 星 四 14:30 115

116 日

志 期 备份 110 星 四 15:30 116

117 日

志 期 备份 111 星 四 16:30 117

118 日

志 期 备份 112 星 四 17:30 118

119 日

志 期 备份 113 星 四 18:30 119

120 日

志 期 备份 114 星 四 19:30 120

121 日

志 期 备份 115 星 四 20:30 121

122 日

志 期 备份 116 星 四 21:30 122

123 日

志 期 备份 117 星 四 22:30 123

124 日

志 期 备份 118 星 四 23:30 124

125 日

志 期 备份 119 星 五 0:30 125

126 日

志 期 备份 120 星 五 1:30 126

127 日

志 期 备份 121 星 五 2:30 127

128 日

志 期 备份 122 星 五 3:30 128

129 差 备份 6 星 异

期 五 4:00 129

130 日

志 期 备份 123 星 五 4:30 130

131 日

志 期 备份 124 星 五 5:30 131

132 日

志 期 备份 125 星 五 6:30 132

133 日

志 期 备份 126 星 五 7:30 133

134 日

志 期 备份 127 星 五 8:30 134

135 日

志 期 备份 128 星 五 9:30 135

(46)

136 日

志 期 备份 129 星 五 10:30 136

137 日

志 期 备份 130 星 五 11:30 137

138 日

志 期 备份 131 星 五 12:30 138

139 日

志 期 备份 132 星 五 13:30 139

140 日

志 期 备份 133 星 五 14:30 140

141 日

志 期 备份 134 星 五 15:30 141

142 日

志 期 备份 135 星 五 16:30 142

143 日

志 期 备份 136 星 五 17:30 143

144 日

志 期 备份 137 星 五 18:30 144

145 日

志 期 备份 138 星 五 19:30 145

146 日

志 期 备份 139 星 五 20:30 146

147 日

志 期 备份 140 星 五 21:30 147

148 日

志 期 备份 141 星 五 22:30 148

149 日

志 期 备份 142 星 五 23:30 149

150 日

志 期 备份 143 星 六 0:30 150

151 日

志 期 备份 144 星 六 1:30 151

152 日

志 期 备份 145 星 六 2:30 152

153 日

志 期 备份 146 星 六 3:30 153

154 差 备份 7 星 异

期 六 4:00 154

155 日

志 期 备份 147 星 六 4:30 155

156 日

志 期 备份 148 星 六 5:30 156

157 日

志 期 备份 149 星 六 6:30 157

158 日

志 期 备份 150 星 六 7:30 158

159 日

志 期 备份 151 星 六 8:30 159

160 日

志 期 备份 152 星 六 9:30 160

161 日

志 期 备份 153 星 六 10:30 161

162 日

志 期 备份 154 星 六 11:30 162

163 日

志 期 备份 155 星 六 12:30 163

164 日

志 期 备份 156 星 六 13:30 164

165 日

志 期 备份 157 星 六 14:30 165

166 日

志 期 备份 158 星 六 15:30 166

167 日

志 期 备份 159 星 六 16:30 167

168 日

志 期 备份 160 星 六 17:30 168

169 日

志 期 备份 161 星 六 18:30 169

170 日

志 期 备份 162 星 六 19:30 170

(47)

171 日

志 期 备份 163 星 六 20:30 171

172 日

志 期 备份 164 星 六 21:30 172

173 日

志 期 备份 165 星 六 22:30 173

174 日

志 期 备份 166 星 六 23:30 174

175 日

志 期 日 备份 167 星 0:30 175

176 日

志 期 日 备份 168 星 1:30 176

( 4 )

如 三的 系 遭遇灾 ,则 恢复次序及 果 统 难 在 周 7时 T-SQL语 如下 : 句

--1.恢 复周

日 完

整 备 份

RESTORE DATABASE cwgl FROM cwglDv WITH FILE=1,NORECOVERY,REPLACE

--2.恢 复周

的 差异 备份

RESTORE DATABASE cwgl FROM cwglDv WITH FILE=79,NORECOVERY

--3.恢 复周

三 时前 的事务日 志 差异 备份 之后 到 备份

RESTORE LOG cwgl FROM cwglDv WITH FILE=80,NORECOVERY RESTORE LOG cwgl FROM cwglDv WITH FILE=81,NORECOVERY

RESTORE LOG cwgl FROM cwglDv WITH FILE=82,RECOVERY

(48)

第 14章 自

动 处 代 理

( 略 )

第 15章 安

全 管 理

练 习 参 考 答 案 ( 仅 供 参 考 )

一 、选择题

1.A 2.B 3.C`` 4.D 5.C 6.A

7.D

二 操 、 作题

(略 )

(49)

第 16章 16章 JSP 集 第 与

成 目 开 发 Web 应 项 用

( 略 )

參考文獻

相關文件

How would this task help students see how to adjust their learning practices in order to improve?..

• following up the recommendation of offering vocational English as a new Applied Learning (ApL) course, as proposed by the Task Force on Review of School Curriculum with a view

Besides learning opportunities such as morning assemblies, school assemblies, class teacher periods and co-curricular activities, schools also make use of other

Schools may strategically enhance the professional capacity of teachers in curriculum leadership, learning and teaching strategies and assessment practices through participating

Strands (or learning dimensions) are categories of mathematical knowledge and concepts for organizing the curriculum. Their main function is to organize mathematical

The non-normalizable (zero) modes picked up by the AdS/CFT description localized on the AdS boundary, which corresponds to dual CFT operators and should be topological sector of

Schematic phase diagram of high-Tc superconductors showing hole doping right side and electron doping left side.. The common Features in

又要加上節制。有了節制、又要加上忍耐。有了忍