2020年6月15日第1页第1章概述本章概述本章要点本章内容2020年6月15日第2页本章概述MicrosoftSQLServer2008系统是由微软公司研制和发布的分布式关系型数据库管理系统,可以支持企业、部门以及个人等各种用户完成信息系统、电子商务、决策支持、商业智能等工作。MicrosoftSQLServer2008系统在易用性、可用性、可管理性、可编程性、动态开发、运行性能等方面有突出的优点。本章将对MicrosoftSQLServer2008系统进行概述,以使用户对该系统有整体的认识和了解,为后面各章的深入学习奠定坚实的基础。2020年6月15日第3页本章要点使用数据库的原因数据库的基本概念和特点MicrosoftSQLServer简史MicrosoftSQLServer系统的体系结构数据库和数据库对象的特点管理工具的特点数据库管理员的任务2020年6月15日第4页本章内容1.1为什么使用数据库1.2什么是数据库1.3MicrosoftSQLServer简史1.4MicrosoftSQLServer系统的体系结构1.5数据库和数据库对象的特点1.6管理工具1.7数据库管理员1.8本章小结1.1为什么使用数据库毫无疑问,使用数据库的目的是方便地存储和管理大量的业务数据。但是,有人可能会存在这样的疑问:为什么使用数据库来存储和管理数据,为什么不提倡使用像Excel这样的电子数据表等工具来存储和管理这些业务数据呢?下面,通过一个示例说明为什么要使用数据库。2020年6月15日第5页示例2020年6月15日第6页原因采用电子数据表来存储和管理数据,不仅仅可能造成数据的不一致和混乱,而且还有其他更严重的问题。例如,电子表格只能处理有限的数据列和数据行,对于数百万、数千万等巨大的数据量很难有效地处理;电子表格无法提供安全、方便地权限管理和控制手段;电子表格很难有效地实现多个数据之间的关联;电子表格很难有效地实现并发控制、增量维护等管理方式等。这些问题只能通过使用数据库来解决,数据库是一种有效地管理大量的、安全的、并发的、关联的、一致的数据工具,因此需要使用数据库存储和管理数据。2020年6月15日第7页1.2什么是数据库数据库是采用计算机技术统一管理的相关数据的集合,数据库能为各种用户共享,具有冗余度最小、数据之间联系密切、有较高数据独立性等特点。数据库管理系统(DatabaseManagementSystem,简称为DBMS)是位于用户与操作系统之间的一层数据管理软件,它为用户或应用程序提供访问数据库的方法,包括数据库的建立、查询、更新以及各种数据库控制等。DBMS总是基于某种数据模型,这些模型可以分为层次模型、网状模型、关系模型、面向对象模型等。2020年6月15日第8页数据库技术MicrosoftSQLServer是一种基于关系模型的DBMS。数据库系统是实现有组织地、动态地存储大量关联数据、方便多用户访问的计算机软件、硬件和数据资源组成的系统,是采用数据库技术的计算机系统。数据库技术是研究数据库的结构、存储、设计、管理和使用的一门计算机软件学科。在实际应用中,经常把数据库管理系统简称为数据库系统。2020年6月15日第9页数据库产品数据库产品是由专门开发DBMS的厂商提供的。当前,数据库市场上的常见数据库产品包括甲骨文公司的Oracle系统,IBM公司的DB2系统和Informix系统,赛贝斯公司的SybaseASE系统,微软公司的MicrosoftSQLServer系统和Access系统,以及MySQL公司的开源数据库系统等。本书重点讲述微软公司的MicrosoftSQLServer系统的功能和特点。2020年6月15日第10页1.3MicrosoftSQLServer简史通常,把MicrosoftSQLServer简称为SQLServer。严格地说,SQLServer和MicrosoftSQLServer是不同的,MicrosoftSQLServer是由微软公司开发的SQLServer系统。但是,最早的SQLServer系统并不是微软开发出来的,而是由赛贝斯公司推出的。2020年6月15日第11页列表1987年,赛贝斯公司发布了SybaseSQLServer系统1988年,微软公司、Aston-Tate公司参加到了赛贝斯公司的SQLServer系统开发中1990年,微软公司希望将SQLServer移植到自己刚刚推出的WindowsNT系统中1993年,微软公司与赛贝斯公司在SQLServer系统方面的联合开发正式结束1995年,微软公司成功地发布了MicrosoftSQLServer6.0系统1996年,微软公司又发布了MicrosoftSQLServer6.5系统1998年,微软公司又成功地推出了MicrosoftSQLServer7.0系统2000年,微软公司迅速发布了与传统SQLServer有重大不同的MicrosoftSQLServer2000系统2005年12月,微软公司艰难地发布了MicrosoftSQLServer2005系统2008年8月,微软公司发布了MicrosoftSQLServer2008系统2020年6月15日第12页SQLServer2008系统主要特点2008年8月,微软公司发布了MicrosoftSQLServer2008系统,其代码名称是Katmai。该系统在安全性、可用性、易管理性、可扩展性、商业智能等方面有了更多的改进和提高,对企业的数据存储和应用需求提供了更强大的支持和便利。2020年6月15日第13页1.4MicrosoftSQLServer系统的体系结构MicrosoftSQLServer是一个提供了联机事务处理、数据仓库、电子商务应用的数据库和数据分析的平台。体系架构是描述系统组成要素和要素之间关系的方式。MicrosoftSQLServer系统的体系结构是对MicrosoftSQLServer的主要组成部分和这些组成部分之间关系的描述。MicrosoftSQLServer2008系统由4个主要部分组成。这4个部分被称为4个服务,这些服务分别是数据库引擎、分析服务、报表服务和集成服务。这些服务之间相互存在和相互应用,它们的关系示意图如图1-3所示。2020年6月15日第14页体系结构2020年6月15日第15页1.5数据库和数据库对象的特点本节介绍MicrosoftSQLServer2008的数据库和数据库对象的特点。首先介绍数据库的类型和特点,然后详细介绍数据库中各种对象的类型和特点2020年6月15日第16页数据库的类型和特点MicrosoftSQLServer2008系统提供了两种类型的数据库,即系统数据库和用户数据库。系统数据库存放MicrosoftSQLServer2008系统的系统级信息,例如系统配置、数据库的属性、登录账户、数据库文件、数据库备份、警报、作业等信息。MicrosoftSQLServer2008使用这些系统级信息管理和控制整个数据库服务器系统。用户数据库是由用户创建的、用来存放用户数据和对象的数据库。2020年6月15日第17页系统数据库master数据库是最重要的系统数据库,它记录了SQLServer系统级的所有信息,这些系统级的信息包括服务器配置信息、登录账户信息、数据库文件信息、SQLServer初始化信息等等,这些信息影响整个SQLServer系统的运行。model数据库是一个模板数据库。该数据库存储了可以作为模板的数据库对象和数据。当创建用户数据库时,系统自动把该模板数据库中的所有信息复制到用户新建的数据库中,使得新建的用户数据库初始状态下具有了与model数据库一致的对象和相关数据,从而简化数据库的初始创建和管理操作。msdb是与SQLServerAgent服务有关的数据库。该系统数据库记录有关作业、警报、操作员、调度等信息,这些信息可以用于自动化系统的操作。tempdb是一个临时数据库,用于存储查询过程中所使用的中间数据或结果。实际上,它只是一个系统的临时工作空间。2020年6月15日第18页OLTP和OLAP在数据库技术领域,按照OLTP数据存储模型组织数据的应用环境称为OLTP环境。OLTP数据存储模型也称为OLTP数据库。OLAP数据存储模型与OLTP数据存储模型截然不同。从结构上来看,OLAP数据存储模型的常见结构是星型结构或雪崩结构。从使用目的来看,OLAP数据库的主要作用是提高系统对数据的检索和分析速度。2020年6月15日第19页示例数据库(用户数据库)AdventureWorks不是系统数据库,而是一个示例OLTP数据库。该数据库存储了某个假设的自行车制造公司的业务数据,示意了制造、销售、采购、产品管理、合同管理、人力资源管理等场景。用户可以利用该数据库来学习SQLServer的操作,也可以模仿该数据库的结构设计用户自己的数据库。AdventureWorksLT也是一个示例OLTP数据库,但是其数据库对象和数据都少于AdventureWorks数据库,是一个经过简化的轻量级的示例数据库。对于数据库技术的初学者来说,可以从AdventureWorksLT数据库学起。AdventureWorksDW是一个示例OLAP数据库,用于在线事务分析。用户可以利用该数据库来学习SQLServer的OLAP操作,也可以模仿该数据库的内部结构设计用户自己的OLAP数据库。2020年6月15日第20页数据库对象的类型和特点数据库是数据和数据库对象的容器。数据库对象是指存储、管理和使用数据的不同结构形式。在MicrosoftSQLServer2008系统中,主要的数据库对象包括数据库关系图、表、视图、同义词、存储过程、函数、触发器、程序集、类型、规则、默认值等。设计数据库的过程实际上就是设计和实现数据库对象的过程。2020年6月15日第21页1.6管理工具MicrosoftSQLServer2008系统提供了大量的管理工具,实现了对系统进行快速、高效的管理。这些管理工具主要包括MicrosoftSQLServerManagementStudio、SQLServer配置管理器、SQLServerProfiler、“数据库引擎优化顾问”以及大量的命令行实用工具。其中,最重要的工具是MicrosoftSQLServerManagementStudio。下面,分别介绍这些工具的特点和作用。2020年6月15日第22页MicrosoftSQLServerManagementStudioMicrosoftSQLServerManagementStudio是MicrosoftSQLServer2008提供的一种集成环境,将各种图形化工具和多功能的脚本编辑器组合在一起,完成访问、配置、控制、管理和开发SQLServer的所有工作,大大方便了技术人员和数据库管理员对SQLServer系统的各种访问。MicrosoftSQLServerManagementStudio启动后主窗口如图1-6所示。2020年6月15日第23页SQLServer配置管理器在MicrosoftSQLServer2008系统中,可以通过“计算机管理”工具或“SQLServer配置管理器”查看和控制SQLServer的服务。通过右击某个服务名称,可以查看该服务的属性,以及启动、停止、暂停、重新启动相应的服务。2020年6月15日第25页SQLServerProfiler使用摄像机可以记录一个场景的所有过程,以后可以反复地观看。能否对MicrosoftSQLServer2008系统的运行过程进行摄录呢?答案是肯定的。使用SQLServerProfiler工具可以完成这种摄录操作。从MicrosoftSQLServerManagementStudio窗口的“工具”菜单中即可运行SQLServerProfiler。SQLServerP