中文版SQL Server 2000开发与管理应用实例(txt+pdf+epub+mobi电子书下载)


发布时间:2020-08-05 20:49:09

点击下载

作者:邹建

出版社:人民邮电出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

中文版SQL Server 2000开发与管理应用实例

中文版SQL Server 2000开发与管理应用实例试读:

前言

关于本书

SQL Server是Microsoft公司推出的一个关系数据库管理系统,是目前应用最广泛的数据库系统之一。

易学易用是SQL Server的一大特点,它为初学者提供了友好的用户界面——企业管理器(Enterprise Manager),使得一些复杂的操作也因为有了操作向导的帮助而变得简单。一般来说,用户在掌握了一些SQL Server的基础知识后,再通过一些实际操作,就可以很快地胜任一些基于SQL Server的开发和管理工作。

然而,入门容易学精难。相信很多学习SQL Server的人都会经历下面这个阶段:经过一段时间的学习,当我们自认为已经会熟练地操作SQL Server,并且能熟练地使用Transact-SQL语句时,再到各个数据库论坛中去看看网友们提出的实际问题时,就会发觉,好像很多问题都会一点,但不能完全解决,或者不能充分考虑到处理这个问题需要涉及的各个方面。而看别人回复的解决方法,基本上都能看懂,但自己写出来就比较困难,有时也难以理解别人为什么会用这样的方法去解决问题。这个阶段说明我们已经掌握了SQL Server的基础知识,也能利用SQL Server来完成一些工作,但还是缺少实践经验,无法把所学的知识真正融会贯通。

根据以前在SQL Server数据库开发和管理方面的工作经验,再加上有一些朋友和网友的支持和建议,我萌发了编写这样一本书的想法。所幸的是,几经努力,这个想法变成了现实。本书总结了我在使用SQL Server 2000过程中遇到的各种常见问题和应用案例,还包括了我几年来在CSDN SQL Server版所解决的数千个问题。希望这本书,能够帮助读者很好地将所学的数据库知识融于实践,并将SQL Server应用水平提高到一个新的层次。同时也希望读者能够通过本书的学习,充分发挥数据库在数据管理和处理方面的强大功能,而不要停留在把数据库当作数据存储仓库的使用阶段。

本书结构

本书分为15章,主要包括数据库开发与管理两方面的内容,其中开发部分的内容占到70%以上,覆盖了日期处理、字符处理、排序规则、编号处理、数据统计与汇总、分页处理、树形数据处理、数据导入与导出、用户定义数据类型等主题。而管理部分的内容主要体现在第1章、第10章、第11章、第13章、第14章和第15章,包括作业、数据备份与还原、数据库安全、系统表应用实例、SQL Server应用疑难解答(也有部分开发内容)等主题。

本书的读者对象

本书适于已经掌握了SQL Server基础知识,但还缺少实践经验的读者,对初学者而言也是一本很好的入门与进阶的向导。本书涉及SQL Server数据库的管理和应用开发两方面的内容,所以既适合程序员又适合数据库管理员。

本书声明

1.本书包括的所有源代码可以到http://www.ucbook.com/download/SQLServer2000.zip进行下载,解压缩密码为sqlserver2000。

2.除特别说明外,本书中的操作系统指Windows 2000,数据库指SQL Server 2000,未特别指明的SQL Server视为SQL Server 2000。

3.虽然SQL Server为初学者和数据库管理员(DBA)提供了企业管理器这个友好的图形管理界面,使用户不用学习太多的Transact-SQL语句,就能完成数据库的配置管理和日常使用。然而,企业管理器只是提供了一个把用户处理要求转换成处理Transact-SQL语句的图形化工具,最终完成用户服务处理要求的,还是Transact-SQL语句。所以要学好SQL Server,最终还是要学好Transact-SQL语句,鉴于此,本书对于各种问题(包括配置管理)的解决方法,都将以Transact-SQL语句为主。

4.广大读者如有好的建议或在学习本书中遇到疑难问题,欢迎到CSDN社区的SQL Server版(http://community.csdn.net/expert/forum.asp)进行探讨,也可发电子邮件联系我(zjcxc@21cn.com)或本书责任编辑(dujie@ptpress.com.cn),希望和大家一起学习和交流。

感谢

我自己在SQL Server技术水平方面的提升主要是受益于CSDN社区的SQL Server版,本书的出现也得益于此。写书的最初想法,也是缘于许多网友的提议,大家对书的编写思路和内容结构进行了大量的讨论,并提出了许多有价值的看法,在此深表感谢。

同时要感谢陈小春等人在本书编写过程中所付出的心血和努力,他们在搭建实验环境、整理数据、排版方面为我分担了许多压力。邹建(微软最有价值专家)2005年6月

作者简介

邹建,网名zjcxc, CSDN eMag MS SQL Server电子杂志主编,CSDN社区MS SQL Server版大版主。2003.11~2004.02连续4次获得“微软社区之星”称号,2004年9月当选Microsoft Most Valuable Professional(MVP,微软最有价值专家)。

熟悉数据库技术,对MS SQL Server数据库体系结构、备份恢复、设计、管理、性能优化等都有深入研究,项目经验丰富,擅长SQL Server数据库设计、管理及性能优化。曾任职于某软件公司,目前任职于某外资IT企业,首席DBA,负责员工数据库技能的提升、数据库设计、疑难问题的排除及数据库应用的研发。

如何学习SQLServer

如何学习SQL Server一直是一个被普遍关注的话题,在网上有很多关于这方面的讨论,也经常有网友问我这方面的问题。下面把我在学习SQL Server过程的一些心得体会,写出来与大家分享,希望对大家有一点帮助。

我觉得,在学习数据库之前,首先应该考虑的是要学习哪种数据库技术。目前数据库种类繁多,应用有所不同,学习氛围、学习资料和学习条件都会有所不同。但不论如何,在决定之前你应该深思熟虑,考虑清楚到底要不要学,有没有办法持之以恒。若无法坚持下来,建议一开始就不要学。

对于我自己来说,之所以会选择SQL Server,最初的原因无非是工作需要,在通过一段时间的学习应用后,慢慢对它产生了兴趣,也就从工作必需变成了兴趣所致。

兴趣和工作需要是很好的学习动力。如果既没有兴趣,又没有工作压力的话,就很难支撑你在数据库学习中深入下去。

在学习SQL Server的初期,我觉得还是有必要看一两本内容不深但比较全面的书,这样可以对SQL Server的基本构架和基本操作方法有所了解,再结合书中的理论进行一些操作实践,就基本上能够应付一些工作,可以算是入门了。

但学会SQL Server,与能熟练(更高层次的叫“精通”)地使用SQL Server是两个完全不同的层次。即使对于没有任何基础的普通用户,1个月左右的时间也足以学会SQL Server。但要熟练地使用SQL Server,那就无法简单地通过时间来衡量。

就我本身的经历而言,学会SQL Server没有什么难度,而且在学会的时候,由于缺少检验的机会(仅仅是应付工作,遇到的问题不是太多,也没有遇到比较综合的问题),往往自以为对SQL Server已经能够熟练应用了。但在实际应用时,总会有不顺畅的感觉,例如,遇到一个需求,大致知道应该怎么去处理,但在写Transact-SQL处理时,往往需要经常地查资料;对于有些需求,虽然知道有几种实现方法,但无法确定各个方法的优劣;去数据库技术论坛看看,发现网友提出的很多问题自己都不会答,即使能够回答的某些问题,也总是要想很久才能写出正确的解决方法。其实,这些就是停留在“会SQL Server”层次的典型表现。

如果要想突破这个层次,达到熟练SQL Server的层次,没有实践是无法实现的。

所幸的是,网络的出现迅速地改变了我们学习和获取知识的方式,为我们带来了一个前所未有的实践环境。在网络中,我们可以接触到丰富的信息(问题和答案),这些信息来自于不同层面、不同领域,远远超出我们在实际生活中所接受到的,可以有效地帮助我们拓展自己的视野和提升自己的技能。

因此,我建议每一位读者,多找时间上网看看,可以经常地访问一些人气比较旺的专业论坛、资深技术人员的博客(BLOG)、微软的技术网站和新闻组等,这些都是学习和实践的好场所。一方面可以提高自己,另一方面可以帮助其他网友,记住这是一个互动的过程,只有多与人沟通、交流,你才能进步得更快。我自己就是在论坛中,通过学习和解决网友提出的问题,使得自己的技术水平有了极大的提高。

另外,我想提醒大家的是,学好SQL Server是一个长期的过程,没有捷径可走,你必须努力和勤奋。而且知识是不断更新的,所以一定不要放慢学习的脚步,也不要奢望找到一个完整的知识库,啃完后就可以天下无敌。

最后,我在这里列出了几道题,有兴趣的读者,可以通过以下问题来检验一下自己对SQL Server的掌握水平,仅供参考。(1)对同样一种处理要求,你能写出多少种解决的Transact-SQL语句,它们分别适用于哪些情况下?(2)什么时候应该使用存储过程?什么时候应该使用用户定义函数?什么时候应该使用视图?什么时候应该直接使用Transact-SQL语句?(3)在维持表间数据关系的时候,什么时候适合使用触发器?什么时候适合使用外键约束?(4)作业和触发器,它们各自应该在哪些情况下使用?(5)什么时候该用索引?(6)合理的数据库备份方案应该如何制订?(7)数据库安全应该从哪些方面着手?(8)随便访问一些数据库方面的论坛,对于网友提出的问题,有多少是你知道的?有多少是你能马上回复出来的?

对于上述问题,(1)~(5)是考查你对Transact-SQL的掌握程度,(6)~(7)考查你对数据库管理的掌握程度,而(8)是从实际问题中检查你对SQL Server的综合掌握程度。

如果上述的大多数问题你都能正确肯定地回答出来,说明你已经能够熟练地使用SQL Server了。第1章安装和配置SQLServer很多用户在实际工作中会遇到不少关于安装和配置SQL Server的问题。因此,本章将主要介绍SQL Server的各个版本功能及如何根据需要选择合适的版本,详述了安装SQL Server中经常遇到的问题和解决方法以及与安装SQL Server相关的一些问题,并说明了会影响SQL Server使用的一些设置。1.1SQLServer的版本和版本选择

安装SQL Server之前,先要解决的问题是如何选择合适的SQL Server版本,SQL Server的版本包括企业版、标准版、个人版、开发人员版、企业评估版、Windows CE版以及可免费分发的Desktop Engine(MSDE)。对于以学习为目的的用户来说,一般只要根据自己使用的操作系统选择对应支持的版本就可以了,一个最简单的选择标准是:Server型操作系统(例如Windows 2000 Server、Windows Server 2003)对应企业版;工作站型操作系统对应个人版或开发版。而在具体的应用中,考虑到购买SQL Server本身的成本、与之相关的软硬件投资成本及以后的升级问题,所以应该根据应用的需求和系统环境来选择合适的SQL Server版本。

在版本选择中所要用到的参考信息如表1-1、1-2、1-3所示。表1-1 SQL Server各版本简介表1-2 SQL Server的不同版本和支持它们所必须安装的操作系统表1-3 SQL Server各版本支持的功能注意:① Windows Server 2003要求应用SQL Server 2000 Service Pack 3或更高版本。② 个人版包含标准版的全部功能,但Analysis Services不能在Windows 98或Windows Me上安装。③客户端工具不包含图形工具。④客户端工具和仅连接仅仅是SQL Server的一个组件,它只提供对SQL Server的操作支持,不具有数据处理功能,所以只安装客户端工具或仅连接不能提供数据库服务。⑤ 企业评估版上只能应用SQL Server 2000 Service Pack 3a或者Service Pack 4。1.2安装SQL Server的常见问题

一些用户可能会认为安装SQL Server是一件很简单的事情。通常来说,SQL Server的安装过程非常简单,一般只需要放入安装光盘,执行安装程序,并随安装向导的提示单击【下一步】按钮即可完成全部的安装过程。但是,在千变万化的应用系统环境中存在着各种各样的安装问题,以下列出了几个常见的问题。(1)安装过程中提示无法正确读取(或调用)xxx文件。

这种问题通常是无法正确读取光盘文件造成的,可以尝试把安装文件复制到硬盘后再进行安装。如果是通过网络或直接从硬盘安装的,则应该检查网络是否正常,并且要确保所有的安装文件都是从安装光盘复制后,未经改变的。(2)安装过程中,提示“安装程序配置服务器失败。参考服务器错误日志和C:\WINDOWS\sqlstp.log了解更多信息”。

出现这种问题多数是在出现故障需要重新安装SQL Server时,由于之前没有完全卸载SQL Server或无法卸载而引起的。要解决这个问题可以在注册表中查找并删除所有的MSSQLSERVER项,并且删除SQL Server的遗留目录,然后重新启动系统再次进行安装即可。(3)在不带网卡的Windows 98计算机上安装SQL Server 2000个人版或Desktop Engine(MSDE 2000),需要Windows 98第二版。(4)SQL Server安装程序在安装有多个网卡或SPX的计算机上安装MS DTC时可能遇到问题。

如果SQL Server安装程序停止响应,应检查\Windows或\WinNT目录中的Sqlstp.log,看是否正在安装MS DTC。如果这是问题所在,则卸载一个网卡或SPX,然后重试SQL Server安装程序。(5)安装定义中,不能选择安装“服务器和客户端工具”这一项。

出现这种状况,是因为所安装的SQL Server版本不被操作系统所支持,选择支持用户操作系统版本的SQL Server即可,具体可以参考表1-2。(6)安装过程中,提示“SQL Server 2000 SP2 and below不受该版本的Windows支持”。

这是在Windows 2003上安装SQL Server的典型提示。提示是正常的,Windows 2003要求应用SQL Server 2000 Service Pack 3或更高版本,目前还没有集成了SQL Server 2000 Service Pack 3的SQL Server安装程序包。解决的方法也很简单,选中【不要再显示这个消息】复选框,单击【继续】按钮,待SQL Server安装完成后,再安装SQL Server 2000 Service Pack 3即可。(7)执行SQL Server安装程序时,提示错误“以前的某个程序安装已在安装的计算机上创建挂起的文件操作。运行安装程序之前必须重新启动计算机”,根据错误提示重新启动计算机,错误依然存在。

出现这种错误,是因为注册表中,挂起文件的注册项不能被正确地清理所致,打开注册表:单击【开始】à【运行】菜单,在【运行】对话框的【打开】文本框中输入“regedit”,单击【确定】按钮,打开【注册表编辑器】,在左侧的窗格中找到如下项:

然后在右边的窗格中删除PendingFileRenameOperations子键即可。(8)系统文件损坏,组件冲突或硬件问题也可能会导致SQL Server安装失败。

当尝试了上面所有的解决办法,仍然不能正常安装SQL Server时,就应该考虑系统文件是否被损坏或系统是否产生冲突,一般可以用操作系统安装盘对操作系统进行修复安装。如果是硬件引起的,那就很难查明原因,一般可以尝试用硬件替换法来查找原因。笔者曾经遇到过因为电源问题而导致无法安装SQL Server的情况。1.3如何理解实例

在项目实施过程中,不少用户会有这样的需求:要求开发一套基于SQL Server的新系统,这套系统验收通过后,要和一个原有的SQL Server系统合并,共用一个服务器,所以不能为新系统提供单独的服务器。但是要保障新系统的开发而又不影响旧系统的正常运行,所以要求新系统使用单独的SQL Server服务。在SQL Server 2000以前的版本中,这样的要求是无法满足的,但在SQL Server 2000中,就可以在原有SQL Server实例的基础上,再添加一个实例来解决问题。

所谓的“实例”,就是一个SQL Server数据库引擎。SQL Server 2000支持在同一台计算机上同时运行多个SQL Server数据库引擎实例。每个SQL Server数据库引擎实例各有一套不为其他实例共享的系统及用户数据库。应用程序连接同一台计算机上的SQL Server数据库引擎实例的方式与连接其他计算机上运行的SQL Server数据库引擎的方式基本相同。由于实例各有一套不为其他实例共享的系统及用户数据库,所以各实例的运行是独立的,一个实例的运行不会受其他实例运行的影响,也不会影响其他实例的运行。在一台计算机上安装多个SQL Server实例,就相当于把这台计算机模拟成多个数据库服务器,而且这些模拟的数据库服务器是独立且同时运行的。

实例包括默认实例和命名实例两种。一台计算机上最多只有一个默认实例,也可以没有默认实例,默认实例名与计算机名相同,修改计算机名会同步修改默认实例名(SQL Server 7.0只能被安装为默认实例,在修改计算机名后,会导致SQL Server服务无法启动,需要执行SQL Server安装程序进行自动修复才能解决启动问题),客户端连接默认实例时,将使用安装SQL Server实例的计算机名。

一台计算机上可以安装多个命名实例,客户端连接命名实例时,必须使用以下计算机名称与命名实例的实例名组合的格式:

在同一台计算机上安装SQL Server 7.0和SQL Server 2000时,由于SQL Server 7.0只能安装为默认实例,所以应该先安装SQL Server 7.0,将SQL Server 2000安装为命名实例。1.4如何实现无值守安装

安装SQL Server虽然简单,但为了避免重复劳动,提高工作效率,可以采用无值守安装SQL Server。

无值守安装自动使用存储在安装程序初始化文件中的信息,在安装程序界面中完成项目输入,从而实现在无人工干预的情况下自动完成安装过程,适用于需要在不同的计算机上安装相同配置的SQL Server的情况。

实现无值守安装,首先需要创建安装程序初始化文件,一般常用的方法是通过安装程序来自动生成配置文件,具体的步骤如下。(1)将Microsoft SQL Server 2000安装盘插入CD-ROM驱动器中。如果该光盘不自动运行,则双击该安装盘根目录中的Autorun.exe文件。(2)选择【SQL Server 2000组件】,选择【安装数据库服务器】,然后在SQL Server安装向导的【欢迎】对话框中单击【下一步】按钮。(3)在【计算机名】对话框中,选择需要的选项,如图1-1所示,然后单击【下一步】按钮。图1-1 【计算机名】对话框(4)在【安装选项】对话框中单击【高级选项】单选按钮,如图1-2所示,然后在打开的【高级选项】对话框中,单击【记录无值守.ISS文件】单选按钮,如图1-3所示,单击【下一步】按钮。图1-2 【安装选项】对话框图1-3 【高级选项】对话框(5)在后续的安装程序对话框中,为无值守安装选择所需的选项,包括用户信息、许可证协议、安装定义、安装类型、组件选择、身份验证模式等内容。完成各项选择之后,在【安装程序信息】对话框中,如图1-4所示,单击【下一步】按钮,进入【选择许可模式】对话框,设置合适的许可模式,如图1-5所示,这里选择【每客户】单选按钮,并将【设备】微调框中输入“10”,单击【继续】按钮。图1-4 【安装程序信息】对话框图1-5 【选择许可模式】对话框(6)进入【安装完毕】对话框,会得到如下信息“安装程序收集到创建无值守安装文件(.iss)所需的信息,以便使用较新的SQL Server无值守安装”,如图1-6所示,单击【完成】按钮,完成SQL Server的安装。图1-6 【安装完毕】对话框(7)最后将%windir% \Setup.iss文件复制出来存档。例如,要将文件复制到D:\存档,可以参考下面的操作步骤:【开始】à【程序】à【运行】菜单,在【打开】文本框中输入“cmd/C"copy %windir%\setup.iss d:\"”,如图1-7所示,单击【确定】按钮完成文件复制。图1-7 复制%windir% \Setup.iss文件

这一步需要特别注意,因为每次运行SQL Server安装程序时,%windir% \Setup.iss都将重建。

如果不将%windir% \Setup.iss复制出来存档的话,即使按照上述步骤建好了无值守安装程序初始化文件后,再直接运行SQL Server安装程序,并指定安装程序初始化文件为windir%\Setup.iss,结果仍不能自动安装SQL Server,而是进入安装向导,因为执行安装程序的时候,安装程序已经重建了%windir% \Setup.iss。笔者在最初进行无值守安装配置时,就因为这个问题困扰了很久。

创建好安装程序初始化文件后,在命令提示符下,输入如下的命令来实现无值守安装(假设SQL Server安装程序位于Z:\,安装程序初始化文件名为:C:\setup.iss)

执行上述命令后,不会有任何屏幕提示,仅在【Windows任务管理器】中,增加了一个setupsql.exe进程,如图1-8所示,这表示SQL Server安装在自动进行。图1-8 setupsql.exe进程

如果用户希望在屏幕上显示安装进度信息,可以创建如下的批处理文件来进行无值守安装:

这样,在安装程序进行时,就会打开一个命令提示窗口,如图1-9所示,该窗口直到安装程序完成后才关闭。从图1-9中,可以看到此SQL Server安装程序位于G:\SIMPCHIN\SQL2000\ENT\x86\setup\,而安装批处理文件和安装程序初始化文件均放在F:\中。图1-9 安装命令提示窗口

最后,在无值守安装中,还需要说明的是,整个安装程序初始化文件都可以在“记事本”之类的文本处理软件中直接创建,具体的可以参考SQL Server联机丛书:1.5Desktop Engine

如果用户要处理的数据量较少、并发用户数不多,一般都不会考虑在数据库方面进行投资,因为他们的业务处理本来就相对简单,而且也不会考虑请专人负责数据库和服务器的管理。而作为软件开发商,如果要为客户提供数据库,那将是一笔不少的投资(可能根本就收不回成本)。所以对于这类用户,一般都会选择免费数据库。

谈到免费数据库,呼声很高的应该是MySQL,如果已经购买了全套的Office,还可以考虑采用Access数据库。对于前者,开发者必须掌握MySQL,并且熟悉它的管理才能开发出好的产品。而对于后者,由于是文件型数据库,对多用户的支持较差,而且数据量大时,管理将变得十分困难。

如果是熟悉SQL Server数据库开发的程序员,最好的选择是免费的Desktop Engine(MSDE 2000),使用它,既可以免费分发,又可以使用SQL Server的大部分功能。由于与SQL Server兼容,所以如果只是数据库支持的话,就不需要考虑程序代码的修改。借助SQL Server提供的数据库管理方面的SQL语句,或者专门的SQLDMO对象,在编写数据库管理处理程序方面,也十分方便。1.5.1 MSDE2000概述

SQL Server 2000 Desktop Engine(MSDE 2000)是SQL Server关系数据库引擎的一个可再分发版本,它具有客户机/服务器的体系结构(MSDE在数据库服务器,而不是在客户机上执行对数据库的操作),以提供服务的方式在后台运行。与SQL Server2000完全兼容,且具有其他SQL Server 2000版本中的数据库引擎的大多数功能。但它不包括那些适用于大型生产型数据库的一些功能,如并行查询和索引视图等。

对于Visual Studio或者Access 2000开发人员来说,他们可以在不单独对MSDE 2000进行注册的情况下,免费发布使用MSDE 2000创建的数据库应用程序。MSDE 2000与SQL Server的兼容性意味着:开发人员可以对现有的以MSDE 2000作为数据引擎、桌面和共享的数据库应用程序代码不作任何修改,就可以直接将其移植到SQL Server中。1.5.2 获取MSDE 2000

可以从几个位置获得MSDE 2000:(1)MSDE 2000随几个Microsoft开发程序(例如Visual Studio开发工具、Visual Studio.NET开发工具)一起分发。(2)可以使用SQL Server 2000 Service Pack 3a(SP3a)或更高版本中的MSDE 2000文件来安装MSDE 2000实例,前提是拥有安装MSDE 2000的许可。(3)在SQL Server 2000光盘上有MSDE 2000的早期版本。建议不要使用这些文件安装MSDE 2000的新实例,而应使用最新的SQL Server 2000 Service Pack中的文件。(4)从www.microsoft.com免费下载。1.5.3 安装MSDE 2000

MSDE 2000使用与SQL Server 2000的其他版本不同的安装方法。MSDE 2000安装程序使用Windows安装程序技术,并且被设计为可以随应用程序一起分发并通过应用程序安装程序来安装。Desktop Engine Setup.exe实用工具通常由应用程序的安装实用工具来调用,但也可以从命令提示符窗口运行。MSDE 2000安装实用工具没有图形化用户界面。但它可以接受一组开关和参数,用于指定该实用工具应该执行的操作。

表1-4列出了常用的MSDE 2000安装参数和开关。表1-4 常用的MSDE 2000安装参数和开关

可以在命令提示符下,指定参数用以安装MSDE 2000:

也可以通过.ini文件以便使用相同的参数运行安装程序。可以使用“记事本”一类的文本编辑工具创建一个mysetup.ini,并保存到MSDE 2000的安装目录下,文件内容如下:

然后在运行安装程序时,使用“/settings”开关指向该.ini文件:

可以在.ini文件中指定SAPWD="AStrongPassword"参数用以设置sa密码,但出于安全性考虑,不建议将密码存放到.ini文件中,因为密码是明文的。

如果需要使用一份详细日志来验证安装是否成功,或者帮助调试出现的任何问题。可以指定“/L*v ”。是安装程序用来记录其所有操作的日志文件的名称。如果指定名称时没有包含路径,将在当前文件夹中创建日志文件。如果从安装盘执行安装程序,则必须指定一个指向计算机硬盘上某个文件夹的完整路径。

下面的示例创建了一个名为c:\MSDELog.log的日志文件:

如果安装成功,在日志末尾将显示如下所示的条目:

如果安装不成功,在日志末尾将显示如下所示的条目:

如果安装失败,在错误日志中搜索字符串“value 3”。该字符串的后10行是有关自定义操作的故障通知。该通知中包含有关故障本质的附加信息。1.5.4 管理MSDE 2000

MSDE 2000不包括图形化管理工具或向导,通常使用下列机制来管理MSDE 2000实例。(1)可以通过以下两种编程方法让应用程序完全管理Desktop Engine的实例:

使用SQL Server管理API,如SQL-DMO、DTS和复制编程对象。

使用常规数据库API(如ADO.NET、ADO、OLE DB和ODBC)运行Transact-SQL语句。(2)下列命令提示实用工具由MSDE 2000安装程序安装,并且可以与用户的应用程序所安装的MSDE 2000副本一起随意使用:bcp.exe、cnfgsvr.exe、dcomscm.exe、osql.exe、sqlmangr.exe、scm.exe、sqladhlp.exe和svrnetcn.exe。还有dtsrun.exe实用工具,但它不能在开发过程中使用。(3)如果MSDE 2000是随SQL Server 2000的其他版本一起安装的,则可使用SQL Server 2000图形化工具来管理MSDE 2000实例。1.5.5 支持的并发用户数和数据库容量

从技术和授权的角度上来讲,MSDE支持的用户数可以达到255个,建议并发用户数不超过20个。如果要使MSDE数据库系统表现出优越的性能,建议并发用户数不超过5个。当然,这些建议都是理论值,具体的并发用户支持,还要取决于用户处理的数据量和系统环境。

MSDE数据库中数据部分的大小不能超过2GB。数据库的总大小(包括日志文件)可以超过2GB。1.6SQL Server Service Pack

在使用SQL Server的时候,有时可能会遇到如下一些莫名其妙的问题:(1)数据库访问速度不稳定,同样的处理,在不同的模块中速度差别很大,在查询分析器中测试却正常。检查过网络和系统,没有发现问题。(2)数据处理出现偏差,有时出现查询计算错误,或者不定时出现数据更新错误,例如,有时round(4687.5)变成4688,而round(6562.5)则变成6562。(3)修改了计算机的IP地址后,需要重新启动SQL Server服务才能正常访问SQL Server。(4)在查询分析器中,按【Ctrl+F5】组合键做Transact-SQL语句的语法检查时,要很久才能得到检查结果。(5)在启动SQL Server后,再拨号上网,则其他计算机无法正常访问SQL Server;但先拨号上网,再启动SQL Server,则访问正常。(6)本机可以正常访问SQL Server实例,但无法在其他计算机上访问,已经排除网络和防火墙限制的问题。

其实,这些问题都是因为没有为SQL Server安装最新Service Pack而导致的。Service Pack解决了绝大部分SQL Server中的已知问题,并且改进和增加了部分SQL Server的功能,所以应该及时安装最新的Service Pack。1.6.1 确定已安装SQL Server的版本

要确定已安装的SQL Server 2000数据库引擎或MSDE 2000的版本,可以使用osql或isql实用工具在命令提示符下,或者在SQL查询分析器的“查询”窗口中键入下述命令之一:

表1-5列出了上述两个语句的结果和它们对应的SQL Server 2000版本和级别。表1-5 SQL Server 2000 版本和级别1.6.2 SQL Server Service Pack 4介绍

最新的SQL Server Service Pack是SP4,它是一个累积性的Service Pack,包含自以前的Service Pack发布以来所有的修补程序,即包含SP1、SP2、SP3和SP3a中提供的所有修复程序。

SQL Server 2000 SP4支持在Windows 2003 SP1的X64或兼容处理器上以Windows-on-Windows 64模式运行SQL Server 2000(32位)。

SQL Server Service Pack 4包含如下一些特性:(1)Database Components SP4安装程序确定是否要将已安装的Microsoft数据访问组件版本升级为MDAC 2.8 SP1,运行Windows 2000的计算机将升级到MDAC 2.8 SP1,运行Windows XP或Windows Server 2003的计算机将不升级到MDAC 2.8 SP1。在安装了相同或更高版本的MDAC的计算机上,不会安装MDAC 2.8 SP1。

MDAC 2.8 SP1包括了到MSXML 3.0 SP7的升级。MDAC 2.8 SP1还更新了SQL Server 2000附带的SQLXML 1.0。(2)SP4包含了对SQL Server 2000组件的更改,可以解决Slammer蠕虫造成的问题。(3)可以对SQL Server 2000企业评估版应用SP4,以便将修复程序应用于该版本SQL Server的实例。(4)SP4解决了一些用户在SQL Server 2000 SP3中安装Microsoft数据访问组件(MDAC)时遇到的安装问题。(5)如果将SQL Server 2000 SP4或SP3a的某个实例配置为不支持网络连接,则该实例也将停止使用UDP端口1434。(6)SP4消除了OPENXML对操作系统安装的MSXML版本的依赖性。Database Components SP4将安装MSXML技术的内部版本,该版本向后兼容MSXML 2.6。(7)SP4更新了SQL Server 2000联机丛书的更新。1.6.3 SQL Server Service Pack 4的内容

SQL Server Service Pack 4由4个部分组成,可以根据实际需要独立运行其中的一个或几个组件,具体如表1-6所示。

自解压缩文件名中的LLL代表因语言而异的指示符。例如,语言为简体中文的Database Components SP4自解压文件名为SQL2000-KB884525-SP4-x86-CHS.exe。SQL Server 2000 Service Pack是针对各种语言提供的。要升级SQL Server 2000实例,必须获取与实例语言相同的Service Pack。表1-6 SQL Server Service Pack 3a组件及说明

Database Components SP4只能对企业版、标准版、开发版或个人版中的SQL Server 2000数据库引擎实例使用。SQL Server 2000 SP4的其他部分应用于其他SQL Server 2000组件,例如Analysis Services、MSDE 2000或SQL Server 2000(64位)。1.6.4 安装SQL Server Service Pack 4的常见问题

以下列出安装SQL Server Service Pack 4时的一些常见问题。(1)获取的SQL Server Service Pack 4安装文件是自解压缩文件(参考表1-6),因此安装SQL Server Service Pack 4前,需要先执行自解压缩文件进行解压缩,将安装程序解压缩到某个临时文件夹,然后再执行解压缩后的setup.bat,才能进行真正的Service Pack安装。(2)如果在同一台计算机上同时安装了MSDE 2000和其他版本的SQL Server 2000数据库引擎的单独实例,则必须对MSDE 2000实例应用MSDE 2000 SP4,对SQL Server 2000数据库引擎的实例应用Database Components SP4。(3)如果同一台计算机上安装了多个SQL Server实例,则要分别为每个实例安装一次Service Pack。(4)安装Service Pack后,如果再安装其他数据库相关的软件,可能会导致Service Pack失效。如果在安装了某些程序后,数据处理出现未安装Service Pack的症状,建议再次安装Service Pack。(5)在Windows NT 4.0、Windows Me和Windows 98平台上不支持SQL Server 2000 SP4。这些系统上只能安装SP4以前的SQL Server Service Pack,例如安装SQL Server Service Pack SP3a。(6)MSDE 2000A已经包含了Desktop Engine SP3a,所以不需要为它安装Desktop Engine SP3a。如果操作系统支持,应该为其安装MSDE 2000 SP4。1.7SQL Server服务

当安装好SQL Server后,其实是在系统中加入了许多服务应用程序,彼此分工合作,配合完成各种数据处理,了解这些服务的作用,会有利于更好地使用和管理SQL Server。具体的说明如表1-7所示。表1-7 SQL Server 2000的各种服务和功能说明

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载