复旦大学网络教育学院SQL server实用技术考试复习提纲祥解.docx
- 文档编号:27612635
- 上传时间:2023-07-03
- 格式:DOCX
- 页数:16
- 大小:25.43KB
复旦大学网络教育学院SQL server实用技术考试复习提纲祥解.docx
《复旦大学网络教育学院SQL server实用技术考试复习提纲祥解.docx》由会员分享,可在线阅读,更多相关《复旦大学网络教育学院SQL server实用技术考试复习提纲祥解.docx(16页珍藏版)》请在冰豆网上搜索。
复旦大学网络教育学院SQLserver实用技术考试复习提纲祥解
课程名称:
SQLserver2000实用技术
教师:
任久春
期末考试复习提纲
复旦大学网络教育学院
一、名词解释
1、SQLServer注册
注册后也就纳入了集成的管理工具的管理范围。
DBA可以在企业管理器中集中监控、管理分布式的多台数据库服务器。
即使是本机的管理工具要管理数据库也需要注册。
2、内连接、外连接、自然连接
内连接:
内联结是默认的联结类型,表中的行互相联结,结果集的行数等于每个表的满足条件的行数的乘积,参与联结的表是平等的。
外联结:
参与联结的表有主次之分,主表的每一行数据去匹配从表的数据列,符合联结条件的数据将直接返回到结果集中,不符合联结条件的数据列将以NULL填充后返回到结果集中。
要注意可能产生的无意义的数据组合。
自然连接:
在等值联结中消除重复列的就是自然联结。
这是实际工作中使用较多的查询
3、关系型数据库
指采用了关系模型来组织数据的数据库,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。
4、候选码、主码和外码。
候选码:
能够惟一区分表中的任何两条记录的字段或者字段的组合就称为候选码。
主码:
定义表结构时确定一个候选码作为惟一区分记录的依据,任何一个表的主码只有一个。
外码:
某个关系的主码相应的属性在另一关系中出现,此时该主码在就是另一关系的外码,一个表的主码是另外一个表的外码,则两个表之间就建立了关联。
5、排序规则
排序规则是指定了SQLServer字符的物理存储模式,以及存储和比较字符所使用的规则。
6、聚簇索引、非聚簇索引。
聚簇索引中索引存储的值的顺序和表中的数据的物理存储顺序是完全一致的。
非聚簇索引存储的数据顺序一般和表的物理数据的存储不同。
7、共享内存、命名管道和TCP/IP协议。
共享内存:
进程之间利用共享的内存来传递数据。
命名管道:
命名管道是早期的UNIX网络采用的分布式IPC机制,通过特定的共享机制在客户机和服务器进程间进行通信。
TCP/IP套接字机制是目前广泛使用的分布式IPC,基到底层的TCP/IP协议来实现。
TCP/IP协议中文译名为传输控制协议/互联网络协议,是Internet最基本的协议,简单地说,就是由底层的IP协议和TCP协议组成的。
8、数据完整性。
数据完整性是指存储在数据库中数据的正确和相容,就是指数据库中不应该存在不符合语义的数据。
9、实体完整性
实体完整性是指在现实世界中,任何一个实体都有区别于其他实体的特征。
实体与实体之间是可以惟一区分的。
10、域完整性
域完整性就是指列的完整性,要求列(字段)的数据具有正确的数据类型、格式和有效的数值范围。
11、参照完整性
参照完整性是指在两个表的主键和外键之间的数据的完整性。
12、用户定义完整性
用户定义完整性不包括在实体、域和参照完整性之内,是用户希望定义的数据的完整性。
13、作业
作业是由SQLServer代理程序按顺序执行的一系列指定的操作。
14、操作员
通常就是DBA,或者是DBA授予某些管理权限的用户。
15、事务、锁、死锁。
事务是对数据库进行操作的最基本的逻辑单位。
锁代表的就是对数据库资源的一种权限。
死锁指SQLServer数据库系统中有两个事务,双方都要等待对方释放资源才能进行下一步的操作,这种情况就会发生死锁。
16、嵌套查询、父查询、子查询、笛卡尔积。
一个SELECT-FROM-WHERE查询语句块可以嵌套在另外一个查询块的WHERE子句中,称为嵌套查询。
其中外层查询也称为父查询(主查询),内层查询也称为子查询(从查询)。
笛卡儿积查询是指两个表的笛卡儿积是两个表记录的交叉乘积,其结果会产生一些无意义的组合值。
17、角色、服务器角色、数据库角色。
角色是一种权限机制,是对权限的集中管理机制,当若干个用户都被赋予同一个角色时,它们都继承了该角色拥有的权限,若角色的权限变更了,这些相关的用户权限都会发生变更。
因此,角色可以方便管理员对用户权限的集中管理。
服务器角色是执行服务器级管理操作的用户权限的集合。
这些角色是系统内置的,DBA不能创建服务器角色,只能将其他角色或用户添加到服务器角色中。
数据库角色是对数据库对象操作的权限的集合。
分为固定的数据库角色(系统创建的)和用户自定义数据库角色(可分为标准角色和应用程序角色两种)。
18、规则(rule)、默认、约束。
规则:
是对录入数据列中的数据所实施的完整性约束条件,它指定了插入到数据列中的可能值。
默认先定义再设置到相应的数据列,是独立的数据对象,其作用域为整个数据库。
约束定义了列允许的取值,是强制完整性的标准机制。
19、事务保存点、存储过程、
事务保存点是对事务做上若干个标记,这样回滚事务就不必回滚整个事务,而是可以回滚到指定的保存点。
存储过程是存储在SQLServer数据库中的一种编程对象。
它是一组Transact-SQL语句,它可以被编译之后执行,其作用好比是一个编程语言中的过程,可以被客户机管理工具、应用程序、其他存储过程调用,同时可以传递参数。
20、触发器。
触发器是一种特殊类型的存储过程。
当使用UPDATE、INSERT或DELETE等语句对表进行修改操作时,DBA常用触发器来实现自动触发的处理方法。
可以实现强制性的、复杂的业务规则或要求。
同时还可以保证数据的一致性。
21、警报
警报是指设定的作业执行的极限条件。
二问答题
1、作为网络关系型数据库系统,SQLServer2000具有哪些特点?
P6
答:
SQLServer2000作为网络关系型数据库系统,具有以下特点:
(1)需要网络操作系统支持,包括WindowsNTServer,WindowsServer2000等。
(2)数据库系统管理工具、前端开发工具和后台数据库是可以分离的,通常我们所说的网络数据库管理系统指的是管理工具和后台数据库的总和。
(3)具有强大的网络功能和分布式功能,可以根据软硬件和网络环境的不同组合成各种工作模式。
(4)技术先进,支持超大规模数据库技术、并行查询、多线程服务器等。
(5)提供完备的数据安全性方案,提供完善的数据库备份和恢复手段。
2、什么是IPC?
它包含哪两个部分?
IPC译为进程间通信,SQLServer2000网络采用了客户机/服务器的体系结构,客户机上启用的是客户机进程,服务器上启用的是服务器进程,所以,SQLServer2000的客户机和服务器之间的操作对操作系统来讲是一种进程间的通信机制。
一个IPC包含两个组成部分:
(1)通信协议:
定义了利用IPC通信的两个进程之间传递的数据分组格式;
(2)API:
应用编程接口,是一组定义好的函数,应用程序通过这些函数来使用IPC机制,发出命令并反馈结果。
3、SQLServer2000服务器的两种身份验证方式有什么区别?
答:
(1)Windows身份验证模式,客户机使用Windows操作系统的用户帐户和密码连接数据库服务器时,SQLServer2000使用Windows操作系统来进行身份验证。
(2)混合身份验证模式,客户机使用用户帐户和密码连接服务器时,服务器首先在数据库中查询是否有相同帐户和密码的用户,若有则接受连接,若数据库没有相应帐户和密码,则向Windows操作系统请求验证客户机的身份,若两者都没有则拒绝连接。
4、SQLServer2000提供了哪几种日志类型?
分别在什么场合下应用?
答:
SQLServer2000提供了3种日志类型,分别是:
(1)完全恢复模型,SQLServer2000数据库将忠实、完整地记录所有的日志,主要应用于十分重要的生产数据库,如银行、电信系统,任何日志都不能缺少,在发生故障时可能要求能恢复到历史上的某个时刻,一旦发生故障时必须能够保证数据不丢失,数据能够恢复到发生故障时的状态。
(2)大容量日志记录恢复模式,SQLServer2000发现是大容量操作数据的语句就简化日志记录,不记录足够的细节,这样就可以大大减少日志记录的数量,由于日志记录不完全,所以一旦这样的操作发生故障就可能导致不能恢复的后果,主要应用于DBA在某些场合需要对SQL数据库执行一些大批量的数据录入、更新或者删除操作(比如一次需要导入上万条数据等)。
(3)简单恢复模式,SQLServer2000数据库虽然会记录下数据库的所有日志操作,但检查点进程的发生会自动截断日志中的不活动部分(已经完成的部分),这样每发生一次检查点,日志已经完成的部分就被删除了,可能导致无法恢复到历史上某个时刻的情况,主要应用于某些数据库数据安全性要求不高,而对性能要求很高,那么就可以选择工作在简单恢复模型。
5、SQLServer2000系统数据库默认要建立哪几个数据库?
简要说明其作用。
答:
SQLServer2000系统数据库默认要建立4个系统数据库,分别是:
(1)master系统数据库,是最重要的数据库,存储的是SQLServer2000的系统信息,包括磁盘空间、文件分配和使用、系统级的配置参数、所有的登录帐户信息、初始化信息和其他数据库的信息等。
(2)model系统数据库存储了所有用户数据库和tempdb数据库的模板。
它包含有master数据库的系统数据表的子集,这些子集用来创建用户数据库。
(3)msdb系统数据库,是SQLServer2000代理服务使用的数据库,为警报、作业、任务调度和记录操作员的操作提供存储空间。
(4)tempdb系统数据库,是一个临时数据库,它为所有的临时表、临时存储过程,以及期货的临时操作系统的空间。
tempdb数据库的数据是暂时,不是永久存储的,每次重启都会导致以前数据的丢失。
6、SQLServer2000的每个数据库包含了数据文件和日志文件。
请分别说明它们的功能和相应的文件扩展名。
答:
数据文件:
用于存放所有的数据和数据库中建立的所有逻辑数据对象。
又分为主要数据文件(扩展名mdf)和次要数据文件(扩展名ndf)两类,一个数据库必须且只有一个主要数据文件,可以有零到多个次要数据文件。
日志文件:
记录了用户对数据库进行的所有操作。
扩展名为Idf,一个SQLServer2000至不要有一个日志文件,也可以有多个日志文件。
7、SQLServer2000文件组的建立有那些目的?
答:
文件组是SQLServer2000数据文件的一种逻辑管理单位,若干个分布在不同的硬盘驱动器上的数据文件可以组织成一个文件组,文件组可以跨越不同的数据库。
建立文件组有以下两个目的:
(1)可以更好地分配和管理存储空间,通过控制在特定磁盘驱动器上单独放置数据和索引来提高数据库的性能。
(2)由于操作系统对物理文件的大小进行了限制,所以当某个磁盘上的数据文件超过单个文件允许的最大值时,可以使用文件组中存储在其他驱动器上的数据文件扩充存储空间。
8、为什么SQLServer2000提供三种日志恢复模型选择呢?
答:
因为有如下3种情况:
(1)生产数据库的数据十分重要,比如银行、电信的收费系统,不允许有任何差错,所以就要求日志必须完整。
那么这样的数据库就必须工作在完全恢复模式下。
(2)经常进行大容量的数据操作,比如一次性需要在数据库中输入10万条数据,那么这样的数据操作的日志记录就会十分庞大,对于这些事务,可以简化一下,只记录必要的操作就够了,不必记录所有的日志,可以大大提高数据库的性能,由于日志不完整,可能导致数据无法恢复的后果,这就是大容量日志记录恢复模式的原理。
(3)对数据库的性能要求很高,而对数据的安全性要求相对较低,就可以采取简单恢复模式。
9、为什么在删除大容量的表的所有记录时DELETE语句会特别慢?
如何解决呢?
答:
这是因为DELETE语句每删除一条记录这会产生一个完整的事务,一个完整的事务又包含了若干个日志记录,大量的日志记录需要写操作,所以将导致删除速度慢。
SQLServer2000提供的TruncateTable语句可以满足这个要求,TruncateTable语句在功能上与不带WHERE子句的DELETE语句相同,但由于TruncateTable语句通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放操作,所以大大减少了日志的数量,从而可以加快删除数据的速度。
10、数据文件和日志文件可以放在同一个文件组吗?
为什么?
答:
不可以,文件组是SQLServer2000数据文件的一种逻辑管理单位,所以,文件组只能包含数据文件,事务日志文件不能是文件组的一部分。
11、IDENTITY列有什么意义?
定义IDENTITY列要注意哪些事项?
答:
IDENTITY列定义后,其取值是基于上一行的列值和定义的步长自动生成,不需要在INSERT语句中指定。
IDENTITY产生的值是惟一的,所以可以惟一标识一行记录。
定义IDENTITY列要注意:
(1)每个表只允许一个IDENTITY列;
(2)IDENTITY列的值不允许被更新;(3)IDENTITY列不允许出现NULL值;(4)只有在下列数据类型才能定义IDENTITY列:
INT、SMALLINT、TINYINT、NUMERIC(小数部分为0)、DECIMAIL(小数部分为0)。
12、经常进行UPDATE的表适合用聚簇索引吗?
为什么?
答:
不适用,因为聚簇索引中索引存储的值的顺序和表中的数据的生理存储顺序是完全一致的,经常UPDATE更新操作会导致数据在硬盘上大量的移动操作,会降低性能。
13、SQLServer2000中如何实现数据完整性?
分别说明其具体含义。
答:
SQLServer2000提供了完整的数据完整性机制,主要包括3类:
规则、默认和约束。
规则是对录入数据列中的数据所实施的完整性约束条件,它指定了插入到数据列中的可能值。
默认如果允许表某列为NULL,那么当输入记录时即使没有输入某列的值,SQL会自动添加上默认指定的值,默认不依附于表的数据对象,默认的作用范围可以在整个数据库。
约束定义了列允许的取值,是强制完整性的标准机制。
14、从逻辑角度看SQLServer2000,它包含哪些逻辑对象?
简要说明这些对象的功能。
答:
逻辑角度看SQLServer2000包括以下逻辑对象:
(1)数据表:
数据表用来存储批量的数据,由行(记录)和列(字段)组成;
(2)视图:
如数据表的窗户,管理员定义这些视图后,用户就只能查看他可以看到的表数据;
(3)索引:
数据表中若干数据行的关键字(键值)的列表,用于快速查询数据;
(4)数据类型:
定义将放入数据表中的数据的类型;
(5)存储过程:
一组SQL(结构化查询)语句的集合,类似于程序的模块;
(6)触发器:
一种特殊类型的存储过程,主要用于强制复杂的业务规则或要求,但不返回结果,用来保证数据的完整性。
15、索引有哪些优点和缺点?
哪些列适合作索引?
哪些列不适合呢?
答:
索引的优点能够提高加快数据查询的速度,尤其是当表的数据很多,而SELECT的查询又非常频繁时,建立索引和不建索引会有很大差异,缺点是会占用存储空间,尤其当表上建立了很多索引时,这种空间的开销会导致UPDATE、DELETE和INSERT操作效率的降低。
如:
主码列、在某范围内频繁搜索的列或按照顺序频繁检索的列、连接中频繁使用的列适合作索引;其它如:
很少或从不在查询中使用的列、数量很少的列、Bit、text和image列不适合作索引。
16、SQLServer2000中默认和默认值有什么区别?
P206
答:
默认和默认值主要有以下区别:
(1)存在的范围不一样:
默认值与表共生共亡;默认是单独的数据库对象。
(2)定义的方法不一样:
默认值在数据表定义或修改时设置;默认先定义后再设置到相应的数据列。
(3)删除的方法不一样:
默认值在结构设计或修改时删除;默认必须先将数据表或自定义的数据类型里的绑定关系去除完毕后,再单独删除。
三.分析题
复习疑难解答,书的疑难解析
2.7.7(P47)
1、安装过程中使用windows验证还是混合验证?
答:
通常来讲,在局域网环境,windows验证是默认的和最常用的推荐安全模式。
因为所有的身份验证由windows操作系统来完成,客户机上的应用系统不需要封装账户和口令,从而更安全。
而在Internet环境一般采用SQLServer2000验证。
即使在局域网,安全的做法也可以先选择混合验证并且为sa账号提供一个密码,在安装完成和处理完一些其他的安全项目后,再把验证模式改为windows身份验证模式。
如果安装过程选择windows验证,将把sa登录创建为无效并且没有密码,这样一旦windows系统出现问题,将导致SQLServer2000数据库也无法登录,所以建议混合验证。
3.8.1到3.8.11(P62-P70)
2、在windows2003上SQLServer2000客户机无法连接?
答:
windows2003默认屏蔽了SQL1433端口,所以如果采用TCP/IP协议无法正常连接
解决办法两种:
(1)调整SQL服务器的端口,一般不采用;
(2)安装最新的SQLServer2000服务补丁SP4,同时,安装windows2003最新补丁SP1。
3、怎样在windowsXP上开放1433端口?
答:
1433作为SQLServer2000服务器默认的服务端口,不需要DBA手工启动,只要服务器正常启动,并配置使用TCP/IP协议的SQLServer2000网络,则1433端口就会默认被启用,可以在DOS命令行方式使用netstat命令来查看端口是否启用。
4、服务管理器中无服务器名该如何处理?
答:
有两种解决办法:
(1)如果在本地,则将服务管理器下方运行的名称输入,或者直接输入Local即可。
(2)查看“客户端网络实用工具”,切换到“别名”选项卡。
在“服务器别名”单元格查看已经建立的别名。
在“服务器”下拉列表框中输入别名即可。
5、企业管理器中注册名为Local如何更改?
答:
默认情况下,企业管理器会在安装SQL完毕后自动注册一个名为Local的服务器别名。
如果要进行更改,可以删除该别名后重新注册即可。
6、“SQLServer不存在或访问被拒绝”问题如何解决?
答:
(1)检查物理网络连接是否有问题,可通过ping测试网络连接是否通畅;
(2)检查SQL服务器的端口是否正常启动;(3)对照检查服务器网络实用工具和客户端网络实用工具配置的网络参数是否匹配。
7、“无法连接到服务器,用户XXX登录失败”问题如何解决?
答:
身份验证方式不同,在企业管理器中调整SQL服务器的身份验证方式。
8、windows身份验证失败如何处理?
答:
DAB可以通过直接个性注册表中的相关更改SQL服务器的身份验证方式。
浏览以下注册表键:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode]
该注册表键值:
1:
windows身份验证方式;2:
混合身份验证方式,更改为2即可。
9、“系统找不到指定的路径”故障如何解决?
答:
产生原因可能是SQL服务或代理服务对应的后台可执行文件的路径被更改了,注册表中没做相应更改,解决方法是在注册表中调整正确的服务的可执行文件的路径。
SQL服务的注册表项:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQLServer\ImagePath]
SQL代理服务的注册表项:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLServer\Agent\ImagePath]
更改执行文件路径即可。
10、“拒绝访问”故障如何解决?
答:
在注册表中设置服务的启动帐户对以下的注册表项必须有完全控制的权限。
服务启动帐户对下列文件夹必须具有安然无恙全控制权限:
C:
\ProgramFiles\MicrosoftSQLServer
11、什么是“隐藏服务器”?
答:
在“服务器网络实用工具”配置基于TCP/IP时,单击属性,在“TCP/IP配置”中选择[隐藏服务器]复选框。
这样就可以SQL客户机管理无法探测到服务器的名称,但这并不影响客户机的连接,可以增强服务器的安全性。
12、为什么选择“强制协议加密”后服务器无法启动?
答:
SQL支持基于SSL协议对网络数据报进行加密,需要安装一个数字证书。
选择“强制协议加密”可对数据报文进行加密,但由于没有给服务器颁发数字证书,所以服务器无法正常启动,经实践颁发数字证书后,服务器仍无法正常启动,一般情况下不要选择该选项。
5.9.2到5.9.4(P109-P112)
13、如何降低日志文件的空间?
选择合适的恢复模型;使用“自动收缩”功能;最终解决办法,不断备份数据库或者日志文件就可以了,因为备份操作将释放当前日志文件的空间。
14、数据库文件的命名必须以mdf、ndf、Idf为扩展名吗?
答:
SQL并不强制要求以mdf、ndf、Idf为扩展名命名,但推荐使用上述扩展名以标识文件的用途。
15、tempdb数据库为什么不可以恢复?
答:
tempdb数据库是一个临时数据库,主要存储中间结果,一旦关闭SQLServer2000服务器,系统会自动临时结果,所以无法备份和恢复tempdb数据库,这样做也没有任何意义。
6.9.3到6.9.4(P132-P133)
16、IDENTITY列有什么意义?
答:
IDENTITY列定义后,其取值是基于上一行的列值和定义的步长自动生成,不需要在INSERT语句中指定。
IDENTITY产生的值是惟一的,所以可以惟一标识一行记录。
17、为什么用INSERT语句插入数据无法成功?
答:
使用INSERT语句插入数据时,要注意以下事项:
(1)插入字符型和日期类型数据时,需要使用单引号。
插入数据类型时,不能使用单引号。
(2)应该保证列名和列数据的次序对应。
(3)如果是非NULL列,则必须保证有值,即使这个非NULL列没有出现在INSERT语句中,也必须赋值。
(4)IDENTITY列的值由系统自动产生,无需手工输入。
12.10.1到12.10.3(P266-P267)
18、检查点有什么作用?
答:
SQL每次恢复过程要从头到尾扫描日志文件,如果日志文件的内容很大,这样的扫描和恢复操作将耗费大量的资源,有些圆满事务的结果已经写入数据库(不需要Redo),无谓的Redo操作显得多余,为提高恢复的效率,减少在恢复时必须前滚的修改量,增加了日志的检查点,每产生一个检查点,都完成以下操作:
(1)将内存缓冲区中的所有日志记录写到物理存储上;
(2)将数据缓冲区中的所有已经更新的数据写到物理存储介质上;(3)在日志文件中写入一个检查点记录
检查点记录将记录在检查点发生时尚未提交的活动事务列表。
19、为什么无法执行差异备份?
答:
创建差异数据库备份必须以至少一次的完全数据库备份为基础,所以如果还没有对数据库执行完全数据库备份,则无法执行差异数据库备份。
20、什么时候需要备份master系统数据库?
答:
任何语句或系统存储过程更改了master系统数据中的信息(如更改服务器范围的配置选项)后,应考虑备份master数据库,下列时机需要备份master系统数据库:
(1)创建或删除用户数据库;
(2)添加登录或执行其他与登录安全有关的操作;
(3)更改任何服务器范围的配置选项或数据库配置选项;
(4
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 复旦大学网络教育学院SQL server实用技术考试复习提纲祥解 复旦大学 网络教育学院 SQL server 实用技术 考试 复习 提纲