• 沒有找到結果。

SQL Server 2008数据库开发经典案例教程 - 万水书苑-出版资源网

N/A
N/A
Protected

Academic year: 2021

Share "SQL Server 2008数据库开发经典案例教程 - 万水书苑-出版资源网"

Copied!
21
0
0

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

全文

(1)

第 1 章 数据库基础 在信息技术飞速发展的今天, 掌握数据库技术是开发人员必备的技能之一, SQL Server 2008  是微软的关系数据库产品,它提供一个可靠的、高效的、智能化的数据平台。本章围绕着  SQL  Server 2008 数据库以及它所支持的平台、安装方法、客户端工具等开始数据库的学习。 目标: l 了解数据库存在的必要性和数据库的发展 l 了解 SQL Server 2008 数据库以及它所支持的操作系统平台 l 了解 SQL Server 2008 的安装方法 l 了解服务器上的后台服务 l 了解 SQL Server 2008 服务端组件和客户端工具 l 学会使用 SSMS 创建登录 

1.1 

认识数据库

在开始学习数据库之前,应该对数据库及数据库技术的某些基本概念有所了解,了解为 什么使用数据库和到目前为止数据库的发展状况。  1.1.1  数据库存在的必要性 很多人可能还没有意识到,其实自己一直都在使用数据库。当我们购买火车票或飞机票 时, 售票员通过查询售票系统就会了解到是否有某车次或航班的票务信息; 如果你在自动取款 机 ATM 上使用银行卡, 也要利用数据库进行密码验证和余额检查; 如果你在工作中登录网络, 也需要依靠数据库验证自己的名字和密码。 我们所经历的时代是一个信息时代,每时每刻都可能产生新的信息,用户又在时时刻刻 访问这些信息。安全有效地存储数据并进行快速简捷的检索和管理就交给数据库来完成了。 使用数据库存储数据主要有以下几个原因: (1)可以存储大量的数据,便于用户进行检索和管理。比如,现在如火如荼的电子商务 应用中, 琳琅满目的产品信息可以让用户快速地通过关键字查找到, 这些信息就是有组织地在 数据库中存储的;还有使用频率很高的搜索引擎 Google 和百度,它们巨大的数据量都是存放 在数据库中的。

数据库基础

1

(2)

SQL Server 2008

数据库开发经典案例教程

(2)可以保持数据的一致性、完整性,降低数据冗余。如果不通过数据库来存储数据而 是通过文件,则经常会出现同样的数据保存在多个地方,并且有不同的版本,造成数据的不一 致,并且浪费存储空间。 (3)实现应用程序的数据共享和安全。如果把数据存储在文件中,则数据很有可能被恶 意地查看或者更改。如果使用数据库,则通过用户授权可以限制某些用户只能查看某些数据, 而其他人可能对数据有较高的权限, 以此来保证数据的安全性。 而且只要将数据存放在数据库 中,任何有权限的用户可以通过不同的应用来访问数据,从而达到共享的目的。 (4)利用数据库可以智能地对数据进行分析和统计。对于企业来说,对数据进行统计和 分析是至关重要的。 比如一个超市, 对销售数据进行统计分析可以帮助业务人员进行更加理性 的进货,这种统计和分析为企业提供了有力的决策支持。在信息时代这种应用很广,也只有通 过数据库存储数据才能更好地实现该需求。 在知道了数据库存在的必要性后,我们有必要了解一下数据库的发展历史。  1.1.2  数据库的发展史 数据库技术从诞生到现在,在不到半个世纪的时间里,已形成了坚实的理论基础、成熟 的商业产品和广泛的应用领域。数据库的诞生和发展给计算机信息管理带来了一场巨大的革 命。三十多年来,国内外已经开发建设了成千上万个数据库,它已成为企业、部门乃至个人日 常工作、生产和生活的基础设施。同时,随着应用的扩展与深入,数据库的数量和规模越来越 大, 数据库的研究领域也已经大大拓广和深化了。 让我们沿着历史的轨迹来追溯一下数据库的 发展历程。  1.第一代数据库—层次模型和网状模型 最早的数据存储是基于文件系统的,随着数据量不断增大和数据安全性问题的出现,文 件系统已不再适用。 数据库系统的萌芽出现于 20 世纪 60 年代。 当时计算机开始广泛地应用于 数据管理,对数据的共享提出了越来越高的要求。传统的文件系统已经不能满足人们的需要。 能够统一管理和共享数据的数据库管理系统(DBMS)应运而生。数据模型是数据库系统的核 心和基础,各种 DBMS  软件都是基于某种数据模型的。最早出现的网状数据库和层次数据库 成为第一代数据库, IBM 公司在 1969 年推出了世界上第一个层次数据库系统 IMS (Information  Management System) 。  2.第二代数据库—关系型数据库 网状数据库和层次数据库已经很好地解决了数据的集中和共享问题,但是在数据独立性 和抽象级别上仍有很大欠缺。 用户在对这两种数据库进行存取时, 仍然需要明确数据的存储结 构,指出存取路径。而后来出现的关系数据库较好地解决了这些问题。 关系数据库是建立在关系模型之上的数据库,关系模型的主要特点是表中的记录由属性 之间的关系来进行连接,在保证数据集之间的逻辑关系表达的同时保持数据集之间的独立性。 在关系模型中,数据存储在由行和列组成的表中。使用关系数据库可以节省程序员的时间,以 便将注意力尽量放在数据库的逻辑框架上,而不需要在物理框架方面花费太多精力。  3.第三代数据库—面向对象数据库 随着信息技术和市场的发展,人们发现关系型数据库系统虽然技术很成熟,但其局限性 也是显而易见的:它能很好地处理所谓的“表格型数据” ,却对技术界出现的越来越多的复杂

(3)

类型的数据无能为力。 “面向对象的数据库系统(Object_oriented database) ”或简称“OO 数据 库系统”出现了,然而数年的发展表明,面向对象的关系型数据库系统产品的市场发展的情况 并不理想。理论上的完美性并没有带来市场的热烈反应。其不成功的主要原因在于,这种数据 库产品的主要设计思想是企图用新型数据库系统来取代现有的数据库系统。 这对许多已经运用 数据库系统多年并积累了大量工作数据的客户, 尤其是大客户来说, 是无法承受新旧数据间转 换而带来的巨大工作量及巨额开支的。 另外, 面向对象的关系型数据库系统使查询语言变得极 其复杂, 从而使得无论是数据库的开发商家还是应用客户都视其复杂的应用技术为畏途。 因此, 到目前为止关系型数据库仍然是数据库应用的主流。 

1.2 

数据库的基本概念

虽然我们在日常生活中不知不觉地在使用数据库,但对究竟什么是数据库并不十分清楚, 因此学习数据库最好的方法是先了解一下数据库中涉及的一些重要基本概念。  1.2.1  数据和信息 数据是指某一目标定性、定量描述的原始资料,包括数字、文字、符号、图形、图像以 及它们能够转换成的数据等形式。如学习成绩、天气预报和股市行情等都是数据。 信息是向人们或机器提供关于现实世界新的事实的知识,是数据、消息中所包含的意义。 如学习成绩排名的结果、篮球比赛结果等都是信息。数据是原始事实,而信息是数据处理的结 果,信息与数据是不可分离的。数据中所包含的意义就是信息。信息是对数据解释、运用与计 算,不同知识、经验的人,对于同一数据的理解可以得到不同的信息。 在数据库中,数据是最基本的概念。  1.2.2  数据库 数据库(DataBase,DB)顾名思义就是存放数据的仓库,保存有组织数据的容器,是一 个以某种有组织的方式存储的数据集合, 这些数据是结构化的、 无害的, 并且不存在垃圾数据。 理解数据库的一种最简单的方法是把其想象成一个文件柜。 此文件柜是一个存放数据的物理位 置,不管数据是什么以及是如何组织的。  1.2.3  关系数据库 根据数据存储的数据模型不同,可分为不同类型的数据库。关系数据库操作起来相对容 易些。关系数据库是基于关系模型建立的,由一系列二维表格组成,将数据分类存储在多个二 维表中,用关系(外键)来体现各个表之间的关系。  1.2.4  实体、记录和表 实体就是一个客观存在的事物或者抽象的概念,比如一个学生就是实体,部门是一个抽 象的概念,它也是一个实体。 记录是用来描述实体的数据。比如学生有学号、姓名、年龄这三个特征,那么( ‘001’ , ‘王莉’ ,16)就是一个记录。

(4)

SQL Server 2008

数据库开发经典案例教程

表是用来存储结构化数据的二维表,由行和列组成,表也被称为实体集。  1.2.5  数据冗余和数据完整性 数据冗余即相同的数据存在于多个地方。这种情况多出现于我们设计的表不合理,导致 重复字段出现在多个表中,既浪费了存储空间,又会出现数据不一致性。比如我们有学生表, 存储学生学号、姓名和地址;另外一张成绩表存储学生学号、姓名、成绩、科目等。这样姓名 就存在于多个表了,一旦学生改了名字,如果只是修改了学生表而没有修改成绩表,则该学号 对应的学生将存在两个名字,从而造成了数据不一致。 数据完整性是指数据库中数据的有效性和相容性。比如我们用一个表来描述学生,其中 有性别这个特征。准确的数据应该是只能有“男”和“女” ,但是用户可能会输入错误,就会 导致不合法的数据存入数据库,借助于数据库完整性约束可以避免这个问题。 如果合理地设计数据库,以上问题均可以很好地解决。 

1.3  SQL Server 2008 简介 

SQL Server 是微软公司开发的一款关系型数据库产品,具有成本低、易上手、工具全等优 点,适用于大型或超大型数据库服务器端。微软软件的特点是版本分得细,可适合各种使用者 不同的需要。  1.3.1    SQL Server 2008 系统 微软公司期望市场不仅仅是把 SQL Server 2008 作为关系数据库来看,而是将其定位为一 个企业数据平台。虽然关系数据库引擎仍然是 SQL Server 2008 的核心,但是 SQL Server 2008  所能提供的服务广度远超过简单的关系数据库所提供的功能。SQL Server  2008 作为微软公司 新一代的数据库管理产品,虽然是建立在 SQL Server 2005 的基础之上,但是在性能、稳定性、 易用性等方面都有相当大的改进。除此之外,SQL Server  2008 还是一个可信任的、高效的、 智能的数据平台。  1.3.2    SQL Server 2008 的新增功能  SQL Server  2008 较之以前的版本,在可信任性、开发和管理生产效率、商业智能三个方 面均有新增功能,下面简要叙述一下部分新增功能。  1.可信任性 在实际应用中,数据和管理数据的系统都必须保证数据的安全和最终用户可以使用数据。  SQL  Server  2008 通过简单的数据加密、外键管理、备份压缩、性能数据的采集、资源控制器 等在企业数据管理方面有了很大的增强。  2.开发和管理生产效率  SQL  Server  2008  包 含 许 多 可 以 显 著 提 高 开 发 人 员 生 产 效 率 的 新 技 术 , 如 对 .NET  Framework 的支持、与 Visual Studio 紧密集成等。同时在改进安装、加速开发过程、管理非结 构化数据等方面增强了功能,为数据平台提供可靠性、安全性和易管理性。

(5)

3.商业智能 

SQL Server  2008 全面的集成、分析和报表功能使企业能够扩展现有应用程序的价值,而 无需考虑应用程序的基础平台。 

1.3.3    SQL Server 2008 的体系结构 

SQL Server 2008 的体系结构是指对 SQL Server 2008 的组成部分和这些组成部分之间关系 的描述。SQL  Server  2008  系统由  4  个部分组成:数据库引擎、Analysis  Services、Reporting  Services 和 Integration Services,如图 1­1 所示。 图 1­1  SQL Server 2008 系统组成 注意:SQL Server Compact Edition 不是 SQL Server 2008 系统的组成部分,它是一种功能 强大的轻型关系数据库引擎,支持结构化查询语言(SQL)语法,提供与 SQL  Server 一致的 开发模型和 API,使开发桌面应用程序变得非常容易。  1.数据库引擎 数据库引擎是 Microsoft SQL Server 2008 系统的核心服务,是存储和处理关系(表格)类 型的数据或 XML 文档数据的服务,负责完成数据的存储、处理和安全管理。例如,创建数据 库、创建表、创建视图、查询数据和访问数据库等操作都是由数据库引擎完成的。 提示:通常情况下,使用数据库系统实际上就是在使用数据库引擎。数据库引擎是一个 复杂的系统,它本身包含了许多功能组件。例如,复制和全文搜索等。  2.Analysis Services  Analysis Services 的主要作用是通过服务器和客户端技术的结合提供联机分析处理和数据 挖掘功能。 相对于联机分析处理来说, 联机事务处理由数据库引擎负责完成。 通过使用 Analysis  Services,用户可以进行如下操作: (1)设计、创建和管理来自于其他数据源的多维结构,通过对多维数据进行多角度的分 析,可以使管理人员对业务数据有更全面的理解。

(6)

SQL Server 2008

数据库开发经典案例教程

(2)完成数据挖掘模型的构造和应用,实现知识的发现、表示和管理。  Analysis Services 的服务器组件是作为 Windows 服务来实现的。  3.Reporting Services  Reporting Services 是一种基于服务器的解决方案, 用于生成从多种关系数据源和多维数据 源提取内容的企业报表,发布能以各种格式查看的报表,以及集中管理安全性和订阅。创建的 报表可以通过基于 Web 的连接进行查看,也可以作为 Windows 应用程序的一部分进行查看。  4.Integration Services  Integration Services 是一个数据集成平台,负责完成有关数据的提取、转换和加载等操作。 对于 Analysis  Services 来说,数据库引擎是一个重要的数据源,而 Integration  Services 是将数 据源中的数据经过适当的处理并加载到 Analysis Services 中,以便进行各种分析处理。 

1.4 

安装 SQL Server 2008 

在学习 SQL Server 2008 数据库之前,需要了解 SQL Server 2008 各种版本的区别和安 装方法。 

1.4.1    SQL Server 2008 的版本 

SQL  Server  2008  一共有  5  个版本:企业版(Enterprise) 、标准版(Standard) 、开发版 (Development) 、 工作组版 (Workgroup) 和简易版 (Express) , 并免费集成了 SQL Server Compact  3.5。SQL Server 2008 的不同版本能够满足企业和个人不同的性能和价格要求。需要安装哪些  SQL  Server  2008 组件,可以根据企业或个人的需求确定。了解各个版本之间的不同区别,有 助于用户进行选择。  1.企业版(SQL Server 2008 Enterprise Edition) 支持  32  位和  64  位系统,能支持超大型企业进行联机事务处理,能进行高度复杂的数据 分析,具有数据仓库和大型网站所需的性能水平,拥有全面商业智能和分析能力,能够满足大 型企业的大多数关键业务要求。  2.标准版(SQL Server 2008 Standard Edition) 支持  32  位和  64  位系统,适合中小型企业使用,它包括电子商务、数据仓库和业务流解 决方案所需的基本功能。  3.工作组版(SQL Server 2008 Workgroup Edition) 只支持 32 位系统,小型企业的数据库不能对规模和用户数量设置限制。工作组版能服务 于企业的部门或分支机构,或作为一个前端 Web 服务器。它包含 SQL Server 产品系列的核心 数据库特点,且便于升级至标准版或企业版。  4.开发版(SQL Server 2008 Developer Edition) 功能和企业版完全一样,只是许可方式不同,只能用于开发和测试,不能作为服务器使用。  5.简易版(SQL Server 2008 Express Edition) 只适用于 32 位系统,是一个免费的、使用简单的 SQL Server 2008 轻量级版本,该版本可 以免费下载,免费重复安装使用,并且适于开发新手使用。

(7)

6.SQL Server Compact 3.5  SQL Server Compact 是一个针对开发人员而设计的免费嵌入式数据库, 可以运行于所有的  Windows 平台之上,包括 Windows XP 和 Windows Vista 操作系统。 因为本书的目标对象主要是大中专院校的学生和开发人员,所以我们建议读者安装简易 版(SQL Server 2008 Express Edition) 。  1.4.2    SQL Server 2008 的安装 在开始安装 SQL Server 2008 之前, 应先确定运行 SQL Server 2008 对计算机的软硬件配置 要求,并卸载之前的任何旧版本,SQL Server  2008 可以安装在 32 位操作系统和 64 位操作系 统之上,对于不同的平台,对系统的要求也不一样。下面以目前比较普遍的 32 位操作系统为 例,简单介绍软硬件的环境需求。  1.安装 SQL Server 2008 的系统要求 (1)CPU 与内存要求。 表 1­1 列出了在 32 位平台上安装和运行 SQL Server 2008 对 CPU 与内存的要求。 表 1­1  安装和运行 SQL Server 2008 对 CPU 和内存的要求  SQL Server 版本  CPU 要求 内存要求  Enterprise Edition  Standard Edition  Workgroup Edition  最小要求 512MB,建议 2GB 以上  Express Edition  Pentium  III 及兼容处理器, 主频最低要求 1.0GHz,建议  2.0GHz 以上 最小要求 256MB,建议 1GB。对于数据 库引擎,最大不超过 1GB  (2)硬盘空间要求。  SQL Server  2008 对于硬盘空间的要求取决于所选组件的多少。由于在安装过程中会产生 大量的临时文件,所以在安装 SQL Server 2008 时,至少要有 2.0GB 的可用硬盘空间来存放这 些临时文件。表 1­2 列出了不同的组件对硬盘空间的要求。 表 1­2  安装 SQL Server 2008 对硬盘空间的要求 组件 硬盘空间要求 数据库引擎和数据文件、复制以及全文搜索  280MB  Analysis Services 和数据文件  90MB  Reporting Services 和报表管理器  120MB  Integration Services  120MB  客户端组件  850MB  SQL Server 联机帮助和 SQL Compact 联机帮助  240MB  2.安装 SQL Server 2008  在明白了 SQL Server 的版本区别及系统要求之后,下面了解一下 SQL Server 2008 的主要 安装步骤。 SQL Server 2008 与 SQL Server 2005 的最大不同是它提供了一个功能树来安装 SQL

(8)

SQL Server 2008

数据库开发经典案例教程

  Server 2008 的所有组件。 (1)准备安装。 确认以管理员身份登录,从而能够在机器上创建文件和文件夹,这显然是成功安装所必 需的。 (2)启动安装程序。 在安装程序文件夹中双击 setpup.exe 可执行文件进行安装,当安装程序启动后,先检测是 否有.NET  Framework  3.5  环境。如果没有会弹出安装此环境的对话框,此时可以根据提示安 装.NET Framework 3.5。安装窗口打开后在其中选择“安装”选项,如图 1­2 所示,然后单击 “全新 SQL Server 独立安装或向现有安装添加功能”超链接启动安装程序,如图 1­3 所示。 图 1­2  开始安装 图 1­3  选择安装项目 注意:安装程序检查 SQL  Server 安装程序支持文件时可能会发生问题,必须更正所有失 败安装才能继续。 (3)功能选择。 安装过程中多数步骤都是使用默认选项,在功能选择时可选择全部功能进行安装。

(9)

(4)实例配置。 安装向导进行到“实例配置”界面,出现选择对话框,实例就是虚拟的 SQL Server  2008  服务器,SQL Server 2008 默认的实例名是 MSSQLSERVER,用户也可以自己指定实例名,在 同一台计算机上只能有一个默认的实例,这里建议选择默认实例。 (5)安全配置。 在安装向导进行到“数据库引擎配置”窗口时,需要指定连接 SQL Server 时使用的安 全设置。在安装过程中建议选择“混合模式” 。选择“混合模式”单选按钮后,向导要求输 入 SQL Server 系统管理员账户的密码,单击“添加当前用户”按钮添加系统管理员并设置 密码。

注意: SQL Server 2008 提供两种身份验证模式: Windows 身份验证和 SQL Server 身份验证。  Windows 身份验证模式是在 SQL Server 中建立与 Windows 用户账户对应的登录账户,这样, 在登录了 Windows 操作系统之后, 登录 SQL Server 就不用再输入用户名和密码了。 SQL Server  身份验证模式是在 SQL Server 中建立专门用来登录 SQL Server 的账户和密码,这些账户和密 码与 Windows 无关,默认的管理员用户名是 sa。 

1.5    SQL Server 2008 后台服务

数据库安装完成后, 就可以使用 SQL Server 2008 了, 如何使用呢?下面将介绍 SQL Server  2008 的后台服务、管理工具以及如何使用 SQL Server Management Studio 工具和查询编辑器。  1.5.1  服务器上的后台服务  SQL Server  2008 服务器程序安装完毕后,其服务端组件是以“服务”的形式在计算机系 统里运行的, “服务”是一种在系统后台运行的应用程序。常见的服务有 Web 服务、打印机服 务和日志服务等, 服务在后台默默地完成需要完成的任务。 查看方式为: 在控制面板中选择 “管 理工具”→“服务”选项。 如图 1­4 所示, 在 Windows 操作系统的 “服务”窗口里可以查看已经安装了哪些 SQL Server  2008 服务组件,下面介绍部分主要组件。  1.SQL Server 服务  SQL Server 服务是 SQL Server 2008 的数据库引擎,也是 SQL Server 2008 的核心服务。只 有在启动 SQL  Server 服务之后,用户才能与数据库引擎服务器建立连接,才能对数据库进行 维护和操作。  2.SQL Server Agent 服务  SQL Server Agent 即 SQL Server 代理,它可以执行数据库管理员安排的管理任务,也就 是所说的“作业” 。SQL  Server 代理可以在事先规定好的时间自动或通过事件响应去运行这 些作业。 提示:一个作业可以包含一个或多个步骤,每个步骤完成一个任务,例如数据库备份、 执行 SQL 语句等。

(10)

10 

SQL Server 2008

数据库开发经典案例教程

图 1­4  查看 SQL Server 2008 服务组件  3.SQL Server Browser 服务  SQL Server Browser 服务的功能是将 SQL Server 的连接信息提供给客户端计算机。 该服务 启动后从注册表里读取计算机上的所有实例信息, 当客户端请求访问数据库时, 该服务就派上 用场了。  4.SQL Server Integration Services 服务 

SQL  Server  Integration  Services 为 SSIS 包的存储和执行提供管理支持。包括执行如 FTP  操作、SQL  语句执行和电子邮件消息传递等工作流程功能的任务,用于提取和加载数据的数 据源和目标,用于清理、聚合、合并和复制数据的转换、管理服务等。  5.SQL Server Reporting Services 服务  SQL Server Reporting Services 的功能是管理、执行、呈现、计划和传递报表,用于生成从 多种关系数据源和多维数据源提取内容的企业报表, 发布能以各种格式查看的报表, 以及集中 管理安全性订阅。 注意:对 SQL  Server 服务,在配置管理器中启动、断开和查看更为方便,在下面的客户 端管理工具中会体现。  1.5.2  客户端管理工具 安装完 SQL  Server  2008 客户端后,在 Windows 操作系统的“开始”→“所有程序”→  Microsoft SQL Server 2008 菜单下安装了很多图形化的管理工具。

(11)

1.SQL Server Management Studio  SQL  Server  Management Studio(SSMS)是 SQL Server  2008 中最重要的管理工具,提供 了用于数据库管理的图形工具和功能丰富的开发环境,下面会有详细介绍。  2.Reporting Services 配置  Reporting Services 配置即报表服务器配置,作用是配置和管理 SQL Server 2008 的报表服 务器。 3.SQL Server Configuration Manager  SQL Server Configuration Manager(SQL Server 配置管理器)是一个管理工具,用于管理 与 SQL Server 有关的连接服务,打开方法为:在 Windows 操作系统中单击“开始”→“所有 程序”→Microsoft SQL Server 2008→ “配置工具”→SQL Server Configuration Manager 选项启 动 SQL Server 配置管理器,如图 1­5 所示。 图 1­5    SQL Server 配置管理器  SQL Server 配置管理器将服务管理器、 服务器网络实用工具和客户端网络实用工具三个工 具集成在了一起。 (1)SQL Server 服务:可以用来启动、暂停、恢复和停止服务,还可以查看和更改每个 服务的登录方式和启动模式。 (2)SQL Server 网络配置:用来配置服务器端的网络协议和连接选项,其中包括查看别 名属性或启用、禁用协议等功能。 (3)SQL Native Client 10.0 配置:用来配置客户端的网络协议和连接选项。  4.SQL Server 错误和使用情况报告 微软公司希望收集用户使用数据库时的错误信息,以便于改进 SQL Server。 在 Windows 操作系统中单击“开始”→“所有程序”→Microsoft SQL Server 2008→“配 置工具”→“SQL Server 2008 的错误和使用情况报告”选项,会打开如图 1­6 所示的窗口。  5.SQL Server Profiler  SQL Server Profiler 即 SQL Server 事件探查器,它是用于从服务器上捕获 SQL Server 2008  事件的工具。 捕捉到的事件保存在一个跟踪文件中, 根据这个跟踪文件可以分析有问题的查询 并找到问题所在。使用方法如下: (1)在 Windows 操作系统中单击“开始”→“所有程序”→Microsoft  SQL  Server  2008

(12)

12 

SQL Server 2008

数据库开发经典案例教程

→“性能工具”→SQL Server Profiler 选项,打开如图 1­7 所示的窗口。 图 1­6  “错误和使用情况报告设置”窗口 图 1­7    SQL Server Profiler 窗口 (2)单击“文件”→“新建跟踪”选项,连接到服务器后,出现如图 1­8 所示的“跟踪

(13)

属性”对话框,在“常规”选项卡里可以设置跟踪名称、所用模板、文件的保存地址与名称、 跟踪的停止时间等;在“事件选择”选项卡里可以设置要跟踪的事件和事件列。 图 1­8  “事件选择”选项卡 (3)设置完成后单击“运行”按钮,出现如图 1­9 所示的跟踪窗口,根据跟踪结果可以 分析出现的问题。 图 1­9  查看跟踪信息  6.数据库引擎优化顾问  SQL Server  2008 提供的数据库引擎优化顾问可以找出数据库使用性能低下的原因,方便 数据库的管理和优化。 它所做的只是对数据库数据访问情况进行评估, 找出可能导致性能低下 的原因,然后给出优化的建议。

(14)

14 

SQL Server 2008

数据库开发经典案例教程

 

1.6  SQL Server 2008 的工作模式

先了解一下数据库服务器的工作模式,在使用  SQL  Server  2008  之前,必须先连接  SQL  Server 数据库服务器,在连接到数据库服务器之前,要保证 SQL  Server 服务必须已经启动。 该服务是位于 Windows 操作系统平台服务中的 SQL Server(MSSQLSERVER) ,如果安装的是  Express 版,服务名则是 SQLEXPRESS。  1.6.1  数据库服务器的工作模式  SQL Server 2008 支持 C/S 工作模式,C/S 模式即客户机/服务器(Client/Server)模式的简 称,在该种模式下,服务器通常是硬件配置和性能比较高、安装了服务器软件的计算机,客户 机就是安装了客户端软件的一般计算机。 在这种模式下,主要的接收、处理数据以及计算、统计等工作都在客户端完成。客户端 处理完数据后再提交给服务器, 服务器的主要功能是完成数据的管理工作。 这样很多工作在客 户端就处理完了,有效减轻了服务器的负担,而且客户端的响应速度也很快。缺点是这种模式 大多运行在局域网中,维护和升级比较困难。C/S 模式示意图如图 1­10 所示。 Workstation_1 Workstation_2 数据库服务器 Mainframe Server Workstation_3 图 1­10  C/S 模式示意图  1.6.2  连接与断开数据库服务器  SQL Server 2008 在 C/S 工作模式下,服务器(Server)主要完成数据的存储和管理任务, 客户端(Client)主要完成数据运算和结果显示任务。在使用数据库之前,必须使客户端与数 据库服务器相连接,由于 SQL Server 2008 允许将服务器端和客户端安装在同一台计算机上, 所以利用 SQL Server 2008 客户端连接 SQL Server 2008 服务器有两种类型: 一种是连接本地数 据库服务器,另一种是连接网络数据库服务器。  SQL Server Management Studio(SSMS)是一个强大的客户端管理工具,用它来管理数据  Internet 局域网  Workstation_1  Workstation_2  Workstation_3  数据库服务器  Mainframe Server

(15)

库服务器时要连接 SQL Server 实例,并且可以连接和管理网络上的多个 SQL Server 实例。  1.连接数据库服务器 在确认 SQL Server 服务已启动后,在“开始”菜单中选择 SQL Server Management Studio  选项进入如图 1­11 所示的连接数据库服务器界面。 图 1­11  连接服务器 连接到服务器需要提供三项内容:服务器类型、服务器名称和身份验证方式。 (1) “服务器类型”下拉列表框中提供了  5  种可选服务器类型:数据库引擎、Analysis  Services、Reporting Services、SQL Server Compact Edition 和 Integration Services,描述了现在 要连接的 SQL Server 的服务类型,默认数据库引擎代表的就是数据库服务。 (2) “服务器名称”下拉列表框罗列出所有可供连接的实例,可以直接用机器名表示, 也可以用(local)或.来替代,代表本机的默认实例;如果安装的是 Express 版,需要填写本机 名\EXPRESS 或.\EXPRESS,服务器名称也可以点击下拉列表框在“本地服务器”或“网络服 务器”选项卡中查找。 (3)身份验证:连接之前,需要选择身份验证模式,系统提供了两种身份验证模式: l  Windows 身份验证:用当前登录操作系统的身份去登录。 l  SQL Server 身份验证:用 Windows+SQL Server 的混合模式进行验证,需要用合法的  SQL  Server 登录用户去访问,默认系统在安装以后会自动产生一个 sa 的登录用户, 具有最高权限。 单击“连接”按钮,即可连接到数据库服务器如图 1­12 所示显示了服务器成功连接后的 对象资源管理器界面。 对象资源管理器是服务器中所有数据库对象的树视图。根据连接的服务器类型不同,该 树视图显示的内容会有所不同。此树视图可以包括数据库引擎、Analysis  Services、Reporting  Services、Integration Services  和  SQL Server Mobile  的数据库。对象资源管理器包括与其连接 的所有服务器的信息。打开  Management  Studio  时,系统会提示您将对象资源管理器连接到 上次使用的设置。  2.断开数据库服务器 如图 1­13 所示单击“文件”→“断开与对象资源管理器的连接”命令,即断开了与数据 库服务器的连接。

(16)

16 

SQL Server 2008

数据库开发经典案例教程

图 1­12  对象资源管理器 图 1­13  断开与服务器的连接  3.启动、停止、暂停和重新启动 SQL Server 服务 只有启动 SQL  Server 服务才能连接到数据库服务器,服务启动后也可以停止、暂停和重 新启动 SQL Server 服务,方法有以下几种: (1)使用 SQL Server 配置管理器。 (2)使用 SQL Server Management Studio(SSMS) 。右击服务器名,在弹出的快捷菜单中 选择“停止” 、 “暂停” 、 “重新启动”选项,如图 1­14 所示。 (3)使用操作系统的服务管理功能。由于 SQL Server 服务是以“服务”的方式在后台运 行的,所以可在 Windows 操作系统的“服务”窗口中进行启动、停止、暂停和重新启动操作。 (4)使用命令提示符。 选择“开始”→“附件”→“命令提示符”命令,在弹出的命令提示符窗口中可以用命 令来启动或停止 SQL Server 服务。 l 启动 SQL Server 默认实例:net start mssqlserver。 l 停止 SQL Server 默认实例:net stop mssqlserver。

(17)

图 1­14  使用 SSMS 管理服务  1.6.3  SQL Server Management Studio 介绍

在 SQL Server 2008 中没有像 SQL Server 2000 那样独立的查询分析器和企业管理器工具。 但是它提供了一个统一的管理工具 SQL  Server  Management  Studio,简称 SSMS,它提供了一 种新的集成环境,用于访问、配置、控制、管理和开发  SQL Server  的所有组件。它将一组多 样化的图形工具与多种功能齐全的脚本编辑器组合在一起, 可为各种技术级别的开发人员和管 理员提供对  SQL Server  的访问。  1.SSMS 简介  SQL Server 是作为单独的 Windows 进程在基于 Windows 的计算机上运行的,它可以运行 在独立的桌面计算机上,也可以运行在服务器或者网络计算机上。在“任务管理器”的“进程” 选项卡中可以看到许多进程,其中有  SQLSERVER.EXE,该进程(或服务)在它自己的进程 空间中运行,与机器上的其他进程相隔离。SQL Server 不受任何不与其组件通信的其他软件影 响。如果必须关闭其他组件的进程,SQL Server 引擎仍将继续运行。  SQL  Server 作为服务运行,该服务由 Windows 自身进行监控。Windows 确保给服务提供 恰当的内存、处理能力和处理时间,保证所有一切都运作良好。因为 SQL  Server 是作为服务 运行的,所以它没有供用户使用、与用户进行交互的界面。因此,至少要有一个单独的工具, 能够将用户的命令和函数传递到  SQL  Server,进而再传到底层数据库。完成这一使命的  GUI  工具就是 SSMS。  SSMS 中的一个重要工具就是查询编辑器(Query Editor)。该工具可用于编写和执行程序 代码。 代码可以是对象, 也可以是用来操作数据的命令, 甚至可以是完整的任务 (如备份数据)。 这里所用的代码称为  Transact  SQL(T­SQL)。T­SQL 其实是微软在支持美国国家标准化组织 (ANSI)发布的 ANSI­92 标准的基础上进行扩展的数据库查询语言。

(18)

18 

SQL Server 2008

数据库开发经典案例教程

  2.SSMS 的使用 在默认情况下,SSMS  在启动后,将会显示如图  1­15  所示的“对象资源管理器”组件窗 格,表示服务器已经成功注册。SSMS 是一个集成化的开发环境,除了管理数据库外还可以编 写和执行 T­SQL 脚本。 图 1­15    SSMS 主界面 (1)管理数据库:单击 展开,显示 SQL  Server 数据库和数据库对象等信息,在此可 直接管理 SQL Server 数据库,包括建立数据库及数据库对象、维护数据库安全等,如图 1­16  所示。 图 1­16  管理数据库界面 (2)使用查询编辑器:单击“新建查询”按钮,右边自动打开一个查询编辑器代码窗 格,多次单击“新建查询”按钮,将会出现多个查询编辑器代码选项卡,如图 1­17 所示。

(19)

图 1­17  使用查询编辑器界面 除此之外,还可以设置界面输出格式和查看帮助等。  1.6.4  创建数据库登录账户 在实际应用中,经常要根据不同的用户设置不同的访问权限来限制对数据库的操作。可 以创建不同的登录账户并设置权限来实现,操作步骤如下: (1)在“对象资源管理器”窗口中,选择“安全性”节点下的“登录名”并右击,在弹 出的快捷菜单中选择“新建登录名”选项,如图 1­18 所示,弹出“登录名新建”对话框 图 1­18  新建登录名

(20)

20 

SQL Server 2008

数据库开发经典案例教程

(2)在“登录名”文本框中输入登录名,指定用 SQL Server 身份验证的密码和该用户登 录后默认使用的数据库。 在 SQL  Server 中对密码默认实施了一些保护措施,提高了安全性,建议选中“强制实施 密码策略”复选框。 (3)建立了登录名后,还需要赋予一些操作权限。即使没有设置用户也有一些基本的权 限。详细的权限管理在后面的章节中会有专门的介绍。 注意:新建登录时如果选择的是 Windows 身份验证,则单击“搜索”按钮查找当前系统 下的账户,否则是用混合验证模式,直接输入有效的登录名。 l 使用数据库可以安全、高效地实现数据的存储和管理。 l  SQL Server 2008 支持 C/S 工作模式,服务器(Server)主要完成数据的存储和管理任 务,客户端(Client)主要完成数据运算和结果显示任务。 l  SQL Server 2008 在管理、安全性方面有了很大的改进。 l 要使用 SQL Server 2008 数据库,必须先启动数据库服务。

l  SQL  Server  2008  主要的客户端管理工具包括:SQL  Server  Management  Studio、  Reporting  Services 报表配置、SQL  Server  Configuration  Manager 配置管理器、SQL  Server 错误和使用情况报告、SQL Server Profiler 事件探测器。

课后练习

一、选择题  1.数据库系统的核心是( ) 。  A.数据库管理系统  B.数据库  C.操作系统  D.数据  2.以下( )不是数据库的模型。  A.网状型  B.关系模型  C.层次型  D.实体联系型  3.SQL Server 2008 个人版不能安装在( )操作系统上。  A.Windows 2000/XP  B.Windows 98  C.UNIX  D.Windows NT  4.下列( )不是 SQL Server 的安装版本。  A.客户工具版  B.企业版  C.标准版  D.开发版  5.数据冗余是指( )。  A.数据和数据之间没有联系  B.数据有丢失  C.数据量太大  D.存在重复的数据

(21)

6.下列说法中对 SQL Server 的描述错误的是( ) 。  A.客户机/服务器数据库  B.关系型数据库  C.层次化数据库  D.企业级数据库 二、简答题  1.SQL Server 2008 共分为几个版本?分别是什么?  2.如何理解数据完整性?

參考文獻

相關文件

  SOA 記錄裏,記載著關於該 域名權責區域的一些主 要網域名稱伺服器 ( primary DNS server) 和其它 相關的次要名稱伺服器 ( secondary DNS server)

例如 : http ( 網頁伺服器所用的協定 ) 定義了 client 如何向 server request 網頁及 server 如何 將網頁及其中的各種內容回傳給 client 。. 提供服務給 application layer

(A)SQL 指令是關聯式資料庫的基本規格(B)只有 SQLServer 2000 支援 SQL 指令(C)SQL 指令 複雜難寫,適合程式進階者使用(D)是由 Oracle

每個 zone 交由一部 name server負責的作 法會有一個問題,萬一這個 name server 當 掉,可能造成 Internet上其它機器無法取得屬 於這個 zone 的資料(就是 domain name

[r]

Web 伺服器 Internet information services 6 相關應用工具 SQL Server 2005 Analysis services. SQL server business intelligence development Studio Visual

Registry Server 是建構於第三方具有公信力的一個組織,而 Registry Server 在 Web Service 的架構中,主要的功能類似於提供服務查詢(Yellow

首先遊戲廠商將 Master Server 啟動。第一台 Local Game Server 啟動後,向 Master Server 登入,Master Server 會告知這台 Local Game Server