课后习题参考解答

更新时间:2024-05-08 12:14:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

课后习题解答

第一章 课后习题

一、选择题

1、数据库系统的核心是(A )

A、数据库管理系统 B、数据库 C、操作系统 D、数据

2、以下( C )不是数据库的模型 A、网状型 B、关系模型 C、层次型 D、实体联系型

3、SQL Server 2008个人版不能安装在下列那个操作系统上( C )

A、Windows 2000/XP B、Windows 98 C、Unix D、Windows NT

4、下列那个不是SQL Server的安装版本( A )

A、客户工具版 B、企业版 C、标准版 D、开发版

5、数据冗余是指( D )。

A、 数据和数据之间没有联系 B、数据有丢失

C、 数据量太大 D、存在重复的数据

6、下列哪一种说法是对SQL Server的描述是错误的(C ) A、客户机/服务器数据库。 B、关系型数据库。 C、层次化数据库。 D、企业级数据库。

二、简答题

1,SQLServer2008一共分为几个版本?各都是什么?

答:SQLServer2008共分5个版本,它们分别是:企业版、标准版、开发版、工作组版和简化版(EXPRESS) 2,如何理解数据完整性?

答:数据完整性是指数据的有效性和相容性,有效性是指表存放数据是正确有效的,不存在垃圾数据。

第二章 课后习题 一、选择题

1、下列不属于SQL Server的系统数据库是(C ) A、model B、tempdb C、pubs D、master

2、 你是一个SQL Server的数据库管理员,该SQL Server已经几乎没有任何空余空间了。你想要删除任何并非必要的内容,以获得更多的空间。你可以删除以下哪个数据库,而并不引起任何问题?(A ) A、Pubs B、Master C、Msdb D、Tempdb

3、下列关于SQL Server 2000数据库日志的说法错误是( A) A、日志文件是维护数据库完整性的重要工具。 B、所有的对SQL数据库的操作都需要写日志。 C、当日志文件的空间占满时,将无法写日志。

D、当修改数据库时,必先写日志。

4、SQL Server数据库的主数据文件的扩展名为(B )。 A、 .sql B、 .mdf C、 .mdb D、 .db

二、简答题

1, SQL Server数据库的系统数据库都有哪些?何时创建?

答:master tempdb msdb model ,数据库安装时由DBMS创建 2,文件组有哪些优点?

答:1)使用文件组可以将.mdf和.ndf文件放在不同磁盘上,减少磁盘驱动器争用,提高数据访问效率

2)系统管理员可以备份或恢复独立的文件或文件组,以此代替备份或恢复整个数据库,对于需要拥有有效备份和恢复策略的大型数据库来说,必须备份文件或文件组。

第三章 课后习题

一、选择题

1.在学生成绩表sc中的列Score用来存放某学生学习某课程的考试成绩(0~100分,没有小数),用下面的哪种类型最节省空间?(C) A、int B、smallint C、tinyint D、decimal(3,0)r

2.订单表Orders的列OrderID的类型是小整型(smallint),根据业务的发展需要改为整型(integer),应该使用下面的哪条语句? ( C )

A、ALTER COLUMN OrderID integer FROM Orders B、ALTER TABLE Orders(OrderID integer)

C、ALTER TABLE Orders ALTER COLUMN OrderID integer D、ALTER COLUMN Orders.OrderID integer

3.要求表中的列在组成主键的属性上不能为空值,这是( B ) A、参照完整性规则 B、实体完整性规则

C、用户定义完整性规则 D、域完整性规则

4.要在SQL Server中创建一个员工信息表,其中员工的薪水、医疗保险和养老保险分别采用三个字段来存储,但是该公司规定:任何一个员工,医疗保险和养老保险两项之和不能大于薪水的1/3,这一项规则可以采用(C )来实现。 A、 主键约束 B、 外键约束 C、 检查约束 D、 默认约束

5. 在SQL server 2008中,设计用户表时,固定长度的身份证号最好采用下面( A )数据类型进行存储。 A、Char

B、Text C、Varchar D、Int

二、简答题:

1,数据的完整性有哪几种,分别有什么作用?

答:数据的完整性是为了保证数据库数据准确又有意义,主要通过表的设计和约束来实现,

主要有实体完整性、域完整性和引用完整性

实体完整性:将数据行定义为特定表的唯一实体,用来保证主键的唯一性。 域完整性:是指列的取值范围,保证某列的值在某个范围内是有意义的数据。 引用完整性:是用来限制两个有关联关系的表之间的数据。 2, 说出你对自动编号Identity数据类型的理解?

自动编号即标识列,该列的值是自动增长的一些序号,该列的字段通常用来做主键,当输入含有标识列的表数据时,该列值是自动增长的。建表时该列的数据类型只能是数字。 三、代码题:

在员工管理系统中已经创建了员工信息表empInfo和部门信息表DeptInfo,而且这两个表都存放了不少数据。创建表的语句如下: CREATE TABLE DeptInfo (

DeptNo char(2) PRIMARY KEY, DeptName varchar(20) not null, Loc varchar(100) )

CREATE TABLE empInfo (

empNo char(8) PRIMARY KEY, empName varchar(20) not null, sal int null,

DeptNo char(2) not null )

员工信息表empInfo的列DeptNo,用来存放员工所在部门的编号。该列引用系信息表DeptInfo的列DeptNo,但是在创建表时没有创建该约束,请在不删除表的情况下,写出创建该约束的SQL语句。 解答:

ALTER TABLE empInfo ADD CONSTRAINT fk_emp_dept FOREIGN KEY(DeptNo) REFERENCES DeptInfo(DeptNo)

第四章 课后习题 一、选择题

1、在数据库管理系统中,能实现对数据库中的数据查询、插入、修改和删除,这类功能称为(C ) A、数据定义功能 B、数据管理功能 C、数据操纵功能 D、数据控制功能

2,在表中使用IDENTITY列时,每张表只允许有( A )IDENTITY列。 A、一个 B、两个 C、三个 D、四个

3, 下列哪一个命令为删除sample数据库的tb_name表(C ) A、delete from tb_name

B、delete from sample.tb_name C、drop table tb_name

D、drop table sample.tb_name

4、在SQL Server中,对数据的修改是通过(D )语句实现的。 A、MODIFY

B、EDIT C、REMAKE D、UPDATE

5、下列执行数据的删除语句在运行时不会产生错误信息的选项是(B )。 A、 Delete * From A Where B = '6'

B、 Delete From A Where B = '6' C、 Delete A Where B = '6' D、 Delete A Set B = '6'

第五章 课后习题

一、选择题:

1. 在SQL server 2008中提供了一些字符串函数,以下说法错误的是( B )。

A、select right(‘hello‘,3)返回值为:llo;

B、select trim(‘hello‘)返回值为:hello(前后都无空格); C、select replace(‘hello‘,’e‘,’o‘)返回值为:hollo; D、select ltrim(rtrim(‘hello‘))hello(前后都无空格);

2.在SQL server 2008中,有语句“update members set Salary=Salary+300”,下列表述正确的是( A )。

A、将members表中工资都增加300 B、删除工资为300的记录

C、查询工资为300的记录 D、修改members工资都扣除300

3.在SQL server 2008中,有students(学生表),包含字段:SID(学号),SName(姓名),Grade(成绩)。先要将所有的学生成绩加10分,以下SQL语句正确的是(D )。

A、update students set Grade=Grade+10 where SID=1; B、update * set Grade=Grade+10;

C、update * from students set Grade=Grade+10; D、update students set Grade=Grade+10;

4. 假设关系数据库中一个表S的结构为S(SN,CN,grade),其中SN为学生姓名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值范围0--100。若要把“张二的化学成绩80分”插入到S中,则可用( D )。

A、add into S values('张二','化学','80'); B、insert into S values('张二','化学','80'); C、add into S values('张二','化学',80); D、insert into S values('张二','化学',80);

5. 需要显示2001年1月1日—2001年12月31日雇佣的所有职员的姓名和雇佣日期。职员信息表tblEmployees包含列Name和列HireDate,下面哪些语句能完成该功能? D A. SELECT Name, HireDate FROM tblEmployees

B. SELECT Name, HireDate FROM tblEmployees

WHERE HireDate=’2001-01-01’ OR ‘2001-12-31’ C. SELECT Name, HireDate FROM tblEmployees

WHERE HireDate BETWEEN ‘2000-12-31’ AND ‘2002-01-01’ D. SELECT Name, HireDate FROM tblEmployees WHERE DATEPART(yy,HireDate)=’2001’

第六章 习题解答

一、选择题

1、在SQL server2008中,假定grade(成绩)表中包含字段:sid(学号),lang(语文成绩)。那么列出语文成绩在80分到90分的学生的SQL语句是( C )。

A、select*from grade where lang in(80,90); B、select*from grade having lang in(80,90); C、select*from grade where lang between 80 and 90; D、select*from grade having lang between80and90;

2、在SQL server 2008中,要查找eatables表中item_desc字段的值以“CHOCO”开头(如CHOCOLATE、CHOCOPIE)的所有记录。下列SQL语句正确的是( C )。

A、select*from eatables where item_desc like“CHOCO”; B、select*from eatables where item_desc =“CHOCO”; C、select*from eatables where item_desc like“CHOCO%”; D、select*from eatables where item_desc like“%CHOCO?”;

3、在SQL server 2008中,有一个product(产品)表,包含字段:pname(产品名称),要从此表中筛选出产品名称为“苹果”或“香蕉”的记录,下列语句正确的是( C )。

A、select *from product on pname=“苹果”or pname=“香蕉”; B、select *from product on pname=“苹果”and pname=“香蕉”; C、select *from product where pname=“苹果”or pname=“香蕉”; D、select *from product where pname=“苹果”and pname=“香蕉”;

4、在SQL server 2008中,当要处理学生表中name(学生姓名)列所有姓“王”的记录时,在SQL语句中where子句的写法应该是( C )。

A、where name=‘王%‘ B、where name like ’王*‘

C、where name like ‘王%‘ D、where name like ’*王%‘

第七章 习题解答

1、在SQL server2008中,假定grade(成绩)表中包含字段:cID(班级编号) lang(语文课成绩)math(数学课成绩)eng(英语成绩),那么计算不同班级每门课程的平均成绩的SQL语句是( D )。

A、select cid,avg(lang,math,eng),from grade group by lang,math,eng ; B、select cid,avg(lang)avg(math)avg(eng),from grade group by lang,math,

eng ; C、select cid,avg(lang math eng),from grade group by cid ;

D、select cid,avg(lang)avg(math)avg(eng),from grade group by cid

2、在SQL server2008中,有一个proinfo(商品信息)表,包含字段:proid(商品编码号),procatg(商品类别),proprice(商品价格),下列选项( B )可以查询每一类的平均价格。

A、select procatg,avg(proprice)from proinfo;

B、select procatg,avg(proprice)from proinfo group by procatg; C、select avg(proprice)from proinfo order by procatg; D、select avg(proprice)from proinfo ;

3、在SQL server2008中,当执行:Select au_id, title_id, sum(royaltyper)from titleauthor group by title_id, au_id order by title_id, au_idSQL语句时,会发生( A )。

A、在结果集中,对每一个不同的au_id的值和title_id的值的组合都会有一行; B、在结果集中,每一行中au_id的值都不会相同;

C、该语句会运行失败,因为查询输出的次序和分组的次序不一样; 该语句会运行失败,因为royaltyper列也应进行分组

4、 在SQL server2008中,执行如下的SQL语句:select*from item as a left join

ordredetails as b on a.icode=b.itemcod,将返回( C )。

A、item和orderdetails表中的相关记录以及orderdetails表中其余的不相关记录; B、item和orderdetails表中的相关记录;

C、item和orderdetails表中的相关记录以及item表中其余的不相关记录; D、提示语法错误;

5、在SQL server 2008中,学生表student中包含字段:学生编号sid(主键),学生姓名SaName。成绩表score包含字段:课程编号cid,学生编号sid(外键),学生成绩score;其中学生表包含10行数据,成绩表包含6行记录(且sid列没有重复值),那么执行sql语句:select*from student left outer join score on student.sid=score.sid,将返回( C )条记录。

A、0 B、6 C、10 D、16

6、在SQL server2008中,假定grade(成绩)表中包含字段:sID(学号)cID(班级编号) lang(语文课成绩)math(数学课成绩),那么计算所有学生人数和各科最高成绩的SQL语句是( A )。

A、select count(*),max(lang),max(math)from grade;

B、select count(*),max(lang),max(math)from grade group by sID; C、select sum(*),max(lang),max(math)from grade group by sID;

第八章 习题解答

1, 在SQL Server2008数据库中创建了如下两个表: CREATE TABLE 雇员表 (

雇员代号 int IDENTITY(10001,1) PRIMARY KEY, 雇员姓名 varchar(20) NOT NULL, 通信地址 varchar(200) NULL )

CREATE TABLE 订单表 (

订单号 int IDENTITY(1,1) PRIMARY KEY, 雇员代号 int NOT NULL, 客户代号 int NOT NULL,

订购日期 datetime NOT NULL, 订购金额 money NOT NULL )

需要获得2003年9月1日每个雇员的最高的一笔销售金额,要求列出“雇员代号”、“雇员姓名”、“订购日期”、最高的“订购金额”。下面哪些语句能完成该功能? ( B ) A. SELECT a.雇员代号, a.雇员姓名,b.订购日期,b.订购金额

FROM 雇员表 a LEFT JOIN 订单表 b ON a.雇员代号=b.雇员代号

WHERE b.订单日期=‘09/01/2003’

AND 订单金额 IN (SELECT MAX(订单金额) FROM 订单表)

B. SELECT a.雇员代号, a.雇员姓名,b.订购日期,MAX(订购金额)

FROM 雇员表 a LEFT JOIN 订单表 b

ON a.雇员代号=b.雇员代号 AND b.订单日期=‘09/01/2003 GROUP BY a.雇员代号,a.雇员姓名, b.订购日期

C. SELECT a.雇员代号, a.雇员姓名,b.订购日期,MAX(订购金额)

FROM 雇员表 a INNER JOIN 订单表 b ON a.雇员代号=b.雇员代号 WHERE b.订单日期=‘09/01/2003

GROUP BY a.雇员代号,a.雇员姓名, b.订购日期, b.订单号

D. SELECT a.雇员代号, a.雇员姓名,b.订购日期,MAX(订购金额)

FROM 雇员表 a INNER JOIN 订单表 b ON a.雇员代号=b.雇员代号 WHERE b.订单日期=‘09/01/2003

AND 订单金额 IN (SELECT MAX(订单金额) FROM 订单表)

第九章课后答案 一. 选择题

1. 下面说法正确的是(B)

A. 所谓的ER模型就是实体对象模型 B. 所谓的ER模型就是实体关系模型 C. ER模型是建立设计数据库的唯一方法 D. 实体一定是客观存在的事物。

2.关于ER图的描述,下述说法正确的是(A,D) A.矩形表示实体 B.圆形表示属性 C.正方形表示关系 D.椭圆表示属性

3.ER模型中的关系类型有以下哪几种(ABCD) A. 一对一 B.一对多 C. 多对一 D. 多对多

4.关于范式的作用下列说法正确的是(B,C,D) A. 使用范式可以提高数据库的效率 B. 使用范式可以消除数据冗余 C. 范式可以用来检验数据库设计的是否合理,规范数据库 D. 范式可以消除插入异常,删除异常,更新异常 5.关于范式的说法正确的是(D) A.范式级别越高越好 B.范式最高级别为3级 C.第二范式要求每个列必须是不可再分的 D.第三范式要求不能存在传递依赖 二。简答题

1.简述数据库设计的步骤

标识实体,标识关系,设计表,规范化

2.描述三个范式的基本要求

1NF:每一列不可再分,2NF:非主键字段必须完全依赖主键字段 3NF:不存在传递依赖

3.如何将ER模型转化为数据库表

所有的实体都对应一章表,一对一合并为一张表,一对多在多的一端 创建外键关联主表,多对多是三张表,由关系的多端的主键字段组合成 一章新表

第十章课后答案: 一. 选择题:

1. 关于变量的使用正确的是(A,B) A. Declare @@no int

B. Declare @name varchar

Set @name='hello,world' print @name

C. 用户可以定义局部变量和全局变量

D. 使用Select语句和Set语句给变量赋值是完全一样的 2. 下面哪个全局变量是合法的(A,B) A. Select @@ServiceName B. Select @@ServerName C. Select @@RowCounts D. Select @@ErrorNum

3. 关于T-SQL中逻辑结构的说法正确的是(D) A. IF ?.ELSE不能嵌套使用

B. For循环结构适合知道循环次数的循环方式 C. While和Do While执行结果完全一样 D. 可以使用break语句跳循环

4. CASE语句的说法正确的是(C): A. CASE语句可以使用IF?ELSE替代 B.CASE语句可以不需要END C.CASE?.WHEN?.有两种表达方式 D.不能给CASE表达式起别名 5.关于批处理的说法正确的是() A.所谓的批就是一系列命令的集合 B.多个批之间用分号(;)进行分隔 C.一个批必须包含多条SQL语句

D.批之间相互不受影响,即其中一个批失败了不影响其它批的执行 二。简答题

1.简述局部变量的多种赋值方式的区别 以set和select分别介绍

2.简述T-SQL中批命令的概念和用法

批就是一系列sql命令的集合,一次性发送到服务器执行 批之间用GO语句结束 三。代码题

1.使用T-SQL计算1~100的和 declare @result int declare @count int set @count=1 set @result=0

while(@count<=100) begin

set @result=@result+@count set @count=@count+1 end

print '1~100的和为:'+cast(@result as varchar(4))

2.统计各个季度的销售额,并按照销量显示评价,销量>50显示“业绩优秀”,销量在20

到50之间显示“业绩一般”,否则显示“业绩差” select DATEPART(q,SalesDate)季度, SUM(a.quantity) 销售量, 评价=case

when SUM(a.quantity)>50 then '业绩优秀'

when sum(a.Quantity) between 20 and 50 then '业绩一般' else '业绩差' end

from salesdetails a,SalesMaster b

where a.SalesMasterID=b.SalesMasterID group by datepart(q,SalesDate)

第十一章课后习题答案 一. 选择题:

1. 关于事务的说法正确的是(D) A. 事务是一些SQL操作

B. 一个事务必须包含至少2个SQL语句 C. 事务的类型有自动事务,显式事务

D. 事务要么提交,要么回滚,不存在中间状态 2. 关于事务的隔离级别说法正确的是(D) A. 默认的隔离级别为未提交读 B. 隔离级别对并发行没有任何影响 C. 事务隔离级别越高,并发性越好 D. 事务隔离级别越高,并发行越差

3. 以下哪些(A,B)特性属于事务的特性 A. 原子性 B. 持久性 C. 单独性 D. 并发性

4. 以下哪些(A,C,D)属于事务的隔离级别 A. 未提交读 B. 不可重复读 C. 已提交读 D. 可序列化

5. 关于死锁的说法正确的是(A,C) A. 死锁就是资源循环竞争引起的 B. 死锁是不可避免的

C. 降低事务的隔离级别可以降低死锁的风险

D. 如果出现死锁只能停掉服务器重启SQLServer才能解决 二。简答题:

1.简述事务的概念和特性

事务是不可分割的一系列SQL操作,要么全都执行要么都不执行 特性:ACID(原子性,一致性,隔离性,持久性)

2.简述死锁的解决方案

降低事务的隔离级别,SELECT 语句加 With(NoLock)

第十二章 视图索引 课后答案 一. 选择题

1. 关于视图的说法正确的是(A) A.视图是一张虚拟的表

B.用户不能通过视图修改表中的数据 C.视图会根据SQL语句创建对应的表 D.视图只能来自于多个表 2.以下哪些属于视图的优点(A,B) A.使用视图可以简化数据的操作 B.使用视图可以提高安全性 C.视图使用起来更加麻烦 D.使用视图比直接写SQL语句复杂 3.以下哪些属于索引的优点(B,C) A.使用索引可以提高数据增删改的效率 B.使用索引可以提高数据查询的效率 C.使用索引可以提高数据排序的效率 D.使用索引对数据操作没有影响

4.以下哪些SQLServer的索引类型(A,B,C,D) A.聚集索引 B.组合索引 C.唯一索引 D.非聚集索引 5.关于索引的说法正确的是(C) A.索引只能建立在表上 B.一个表允许有多个聚集索引 C.索引越多数据增删改效率越低 D.只要用户会用表的某个字段进行查询,就应该以该字段创建索引

二.简答题 1.简述视图的优势 安全,简单 2.简述索引的优点和缺点,创建索引的原则 优点:查询排序效率高 缺点:增删改效率低,因为要重建索引 原则:经常做条件筛选的列,经常排序的列,做关联条件的列适合做索引 三.代码题

1.给图书表BookInfo的BookName添加索引,并用创建的索引进行查询 --创建索引

create NONCLUSTERED index ix_bookname on BookInfo(BookName)

--查询

SELECT * FROM BookInfo WITH (INDEX=ix_bookname) WHERE BookName like 'C#%'

第十三章 存储过程 一. 选择题

1. 关于存储过程的优点说法正确的是(A,B,C,D) A. 模块化编程 B. 减少网络传输 C. 执行效率高 D. 安全性好

2.关于存储过程的说法正确的是(B,D)

A. 存储过程既可以存在服务器端又可以存在客户端 B.存储过程可分为系统的和用户的 C.存储过程一定要有参数

D.存储过程有输入参数和输出参数

3。执行带参数的存储过程时,正确的语法是(B) A.过程名(参数) B.过程名 参数 C.过程名=参数 D.以上三种都可以

4.要将一个存储过程执行结果返回一个整型变量时,不正确的语法是(C) A.过程名(@整型变量) B.过程名 @整型变量 C.过程名=@整型变量 D.@整型变量=过程名

5.删除存储过程用的关键字是(C) A.Delete B.Truncate C.Drop D.Alter 二.简答题

1.简述存储过程的概念以及优缺点

概念:一些预编译好的,完成特定功能的,存储在服务器端的SQL语句 优点:安全,高效,模块化,网络传输少 缺点:不便调试,不能跨数据库 三.代码题

1.按用户输入的年份统计该年份各个季度的图书的销售量,按销量降序排列。 create proc select_book_by_year @year int as

select DATEPART(q,a.salesdate)季度,SUM(b.quantity)销量

from SalesMaster a, SalesDetails b where a.SalesMasterID=b.SalesMasterID and datepart(yyyy,a.SalesDate)=@year group by datepart(q,a.SalesDate) order by SUM(b.quantity) desc

第十四章 触发器 一. 选择题

1. 以下哪些是SQLServer2008的触发器类型(A,B,D) A. DML触发器 B. DDL触发器 C. TCL触发器 D. 登录触发器

2.以下哪些是DML触发器的类型(B,D) A.BEFORE触发器 B.INSTEAD OF触发器 C.CLS触发器 D.AFTER触发器

3.关于触发器的说法正确的是(A,C) A.使用约束能够完成的验证完全可以用触发器实现 B.约束比触发器更为灵活 C.触发器可以防止恶意或错误的 INSERT、UPDATE 以及 DELETE 操作 D.及联引用完整性不能通过触发器来实现 4.触发器执行过程中产生的临时表是(B) A.delete,insert B.deleted,inserted C.view,table D.viewed,tabled

5.当删除(D)时,与他关联的触发器也将同时被删除。 A.视图 B.临时表 C.存储过程 D.表 二.简答题 1.列举触发器的优点 (1) 触发器能够实施比外键约束,检查约束和规则对象等更为复杂的数据完整性检查。 (2) 和约束相比,触发器提供了更多的灵活性。约束将系统错误信息返回给用户,但这些错误并不是总能有帮助,而触发器则可以打印错误信息,调用其他存储过程,或根据需要纠正错误。

(3) 无论对表中的数据进行何种修改,录入或更新,触发器都能被激活,对数据实施完整性检查。

(4) 触发器能够级联修改数据库中的内容。 2.当一个表同时具有触发器和约束时,如何执行? 先约束后触发器

三.代码题 在图书表BookInfo上建立一个删除触发器DeleteBook,该触发器对BookInfo表中的数据删除时给出提示,并取消当前的操作。 create trigger deletebook on bookinfo for delete as

raiserror('不能删除图书信息',10,1) rollback transaction

第十五章 1. 什么是JDBC?

JDBC是一种用于执行SQL语句的Java API, 可以为多种关系数据库提供统一访问, 它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个 标准的API,据此可以构建更高级的工具和接口,

使数据库开发人员能够用纯 Java API 编写数据库应用程序。 2. 使用JDBC访问数据库的步骤是什么? ① 装载数据库驱动程序;

② 通过JDBC建立数据库连接; ③ 访问数据库,执行SQL语句; ④ 断开数据库连接。

第十六章

1. 什么是事务日志备份?

事务日志是自上次备份事务日志后对数据库执行的所有事务的一系列记录, 可以使用事务日志备份将数据库恢复到特定的点或恢复故障点 2. SQLServer2008中三种数据库还原方式有什么区别? 1. 完全还原方式

完全还原方式使用数据库备份和事务日志备份将数据库还原到故障点或特定的点。 为了保证这种程度,包括大容量操作内的所有操作都将被完整的写入日志。 由于还原到任意点,这样数据文件的丢失和损坏不会导致工作损失。 但是如果事务日志损坏,则必须重新做最新的日志备份后进行的修改。 2. 简单还原方式

简单还原方式将数据还原到上次备份处,但是无法将数据还原到故障点。 常用于还原最新的数据库完全备份和差异备份。

这种方式允许高性能大量复制操作,以及可以回收日志空间 。但是必须重建最新的数据库或者差异备份后的更改。 3. 大容量日志记录还原方式

大容量日志记录还原方式为某些大规模或大容量操作提供了最佳和最少的日志适用空间。 与完全还原方式类似,必须十分注意保护事务日志记录,

当日志备份包括大容量更改时,大容量日志记录还原方式只允许数据库还原到事务日志 备份的结尾处。不支持即时点还原。这种方式节省日志空间,

适用最小的日志空间。但是如果日志损坏或者日志备份后发生了大容量操作, 则必须重做自上次备份后所做的更改

本文来源:https://www.bwwdw.com/article/pdwg.html

Top