1、SQL Server数据库应用与开发数据库应用与开发第第1章章 数据库及数据库及SQL Server2005简介简介1.1 数据库的发展数据库的发展 1.3关系数据库管理系统 1.2数据库系统模型数据库系统模型 1.4 SQL Server 2005简介简介主要内容主要内容 数据库、数据库三种模型数据库、数据库三种模型数据库管理系统相关知识数据库管理系统相关知识关系数据库操作及规范。关系数据库操作及规范。SQL SERVER 2005的新特性的新特性SQL SERVER 2005的安装及配置的安装及配置介绍了介绍了T-SQL语言。语言。1.1 数据库的发展数据库的发展 1.1.1 数据库概念数
2、据库概念1.数据数据 数据是能够在计算机中存贮用于描述事物的记录符号数据是能够在计算机中存贮用于描述事物的记录符号 它包括两个方面:一是描述事物特性的数据内容;二是它包括两个方面:一是描述事物特性的数据内容;二是存储在某种媒体上的数据形式。存储在某种媒体上的数据形式。数据处理是指将数据转换成信息的过程。数据处理是指将数据转换成信息的过程。2.数据库数据库 数据库(数据库(DataBase 简称简称DB)是按一定组织结构存贮在计算)是按一定组织结构存贮在计算机中相关数据的集合。它不仅包括数据本身,而且还包括机中相关数据的集合。它不仅包括数据本身,而且还包括相关事物间的联系。它的特点是具有一定的组
3、织结构,数相关事物间的联系。它的特点是具有一定的组织结构,数据库中的数据还是相关的。据库中的数据还是相关的。数据库可以被多个用户、多个应用程序共享。其数据结构数据库可以被多个用户、多个应用程序共享。其数据结构独立于使用数据的程序,对数据的增加、删除、修改和检独立于使用数据的程序,对数据的增加、删除、修改和检索由系统软件统一进行。索由系统软件统一进行。3.数据库管理系统数据库管理系统 数据库管理系统数据库管理系统(DataBase Management System,简称简称DBMS)是在操作系统的支持下为用户提供数据库建立、数据操是在操作系统的支持下为用户提供数据库建立、数据操纵、数据库维护的
4、管理软件。它有以下几个功能:纵、数据库维护的管理软件。它有以下几个功能:1)数据定义)数据定义 2)数据操纵功能)数据操纵功能 3)数据库的运行管理)数据库的运行管理 4)数据库的建立与维护功能)数据库的建立与维护功能4数据库系统数据库系统 数据库系统(数据库系统(DataBase System,简称,简称DBS)由数据库、数)由数据库、数据库管理系统、应用系统、数据库管理员和用户五部分据库管理系统、应用系统、数据库管理员和用户五部分构成构成。1.1.2 数据库理论发展数据库理论发展1.人工管理阶段人工管理阶段 2.文件系统文件系统3.数据库系统数据库系统 数据库系统与人工管理和文件系统相比有
5、如下特点:1)数据结构化,采用特定的数据模型2)数据共享性高,减少数据冗余3)数据独立性高4)有统一的数据控制功能客观存在并且可以相互区别的事物称为实体。描述实体的特性称为属性。实体间的对应关系称为联系实体间联系的种类是指一类实体中可能出现的每一个实体与另一类实体中多少个具体实体存在联系联系可以归结为三种类型:一对一联系、一对多联系、多对多联系1.2数据库系统模型数据库系统模型数据模型通常由数据结构、数据操作和完整数据模型通常由数据结构、数据操作和完整 性约束三性约束三部分组成。部分组成。数据结构是研究对象类型的集合。数据结构是研究对象类型的集合。数据操作是指对数据库中各种对象的实例允许执行的
6、操作数据操作是指对数据库中各种对象的实例允许执行的操作的集合,包括操作及有关的操作规则。的集合,包括操作及有关的操作规则。数据约束条件是一组完整性规则的集合数据约束条件是一组完整性规则的集合。1.2 数据库系统模型数据库系统模型网状模型网状模型的基本特征是一个父结点允许有多个子结点,一个的基本特征是一个父结点允许有多个子结点,一个子结点也允许有多个父结点。网状模型有两个特点:子结点也允许有多个父结点。网状模型有两个特点:有一个以上结点无父结点;有一个以上结点无父结点;至少有一个结点有多于一个的父结点至少有一个结点有多于一个的父结点。1.2.1 网状模型网状模型 1.2.2 层次模型层次模型 层
7、次模型是以记录型结点构成的树型结构。它适合描述现实世界中主次分明的结构关系有且只有一个结点没有双亲结点,这个结点称为根结点;根以外的其它结点有且只有一个双亲结点 层次型模型数据之间是1:N的关系。层次模型在进行数据操纵过程中要注意完整性约束条件 层次数据库中不仅要存储数据本身,还要存储数据之间的层次关系 1.2.3 关系模型关系模型关系模型中数据的逻辑结构是一张二维表,它由行和列组成。关系模型反映属性间一对一关系,也可反映属性间一对多的关系和多对多的关系 关系的各种操作必须满足完整性约束条件,关系的完整性约束条件包括三大类:实体完整性、参照完整性和用户定义的完整性。在关系数据模型中,实体及实体
8、间的联系都用表来表示,表以文件形式存储。关系数据模型有以下优点:关系模型数据结构简单、清晰,用户易懂易用;关系模型具有更高的数据独立性、更好的安全保密性。1.2.4 面向对象数据模型面向对象数据模型面向对象数据模型(OO模型)是用面向对象观点来描述现实世界实体或对象的逻辑组织、对象间限制、联系等的模型。1主要的核心概念主要的核心概念1)对象对象是由一组数据结构和在这组数据结构上的操作的程序代码封装起来的基本单位。现实世界中的任一实体都模型化为一个对象每个对象都有一个唯一不变的标识称为对象标识。一个对象包括属性集合、方法集合和消息集合。属性描述对象的状态、组成和特性。方法描述了对象的行为特性2)
9、封装)封装封装是对象的外部界面与内部实行隔离的一种抽象,外封装是对象的外部界面与内部实行隔离的一种抽象,外部与对象的通信只能通过消息。部与对象的通信只能通过消息。每一个对象是其状态与行为的封装。每一个对象是其状态与行为的封装。封装的意义在于将对象的实现与对象应用互相隔离,有封装的意义在于将对象的实现与对象应用互相隔离,有利于提高数据独立性。利于提高数据独立性。封装隐藏了数据结构与程序代码等细节,提高程序的可封装隐藏了数据结构与程序代码等细节,提高程序的可靠性。靠性。3)类)类共享同样属性和方法集的所有对象的集合称为对象类,共享同样属性和方法集的所有对象的集合称为对象类,简称类。简称类。一个对象
10、是某一类的一个实例。一个对象是某一类的一个实例。4)类的层次结构在面向对象数据库模式中,一组类可形成一个类层次。如果类C1有一个子类C2,则称类C1为类C2的超类或父类。子类还可以定义子类,这样一组类形成一个有层次的结构,称为类层次。子类可以具有父类的所有属性、消息和方法,还可以有自己独特的父类没有的属性和方法。5)继承子类具有父类特性的机制我们称之为继承。继承有两个优点:一方面它是建模的工具,提供了对现实世界简明而精确的描述;另一方面它提供了信息重用机制,由于子类可以继承父类的特性,这样就可以避免许多重复定义工作。2面向对象数据库语言面向对象数据库语言在面向对象数据库(OODB)中,面向对象
11、数据库语言(OODB语言)用于描述面向对象数据库模式,说明并定义对象实例。OODB语言应具有以下功能:类的定义与操纵、方法的定义、对象的操纵。3模式演进模式演进面向对象数据模式为适应需求的变化而发生变化过程称为模式演进。模式演进过程包括建新的类、删除旧的类、修改类的属性和方法等。模式演进必须保持模式的一致性。它由模式一致性约束来保证。模式一致性约束包括唯一性约束、存在性约束和子类型约束等4对象对象-关系数据库关系数据库面向对象数据库必须满足两个条件:支持面向对象的数据模型、支持传统数据库系统所有的数据库特征。面向对象数据库系统必须保持传统数据库系统的数据存取方式和数据独立性,即应继承第二代数据
12、库系统已有的技术,对象-关系数据系统就是按这样的目标将关系数据库系统与面向对象数据库系统两方面的特征相结合。对象-关系数据库系统除具有关系数据库的各种特点外,还应具有扩充数据类型、支持复杂对象、支持继承、提供通用的规则系统等功能 1.3.1关系数据库规范化关系数据库规范化规范化的数据库设计可以尽可能地避免系统在应用过程中出现问题。不合理的关系模式可能会造成很多操作上问题:数据冗余 更新异常 插入异常 删除异常1.3 关系数据库管理系统关系数据库管理系统1.关系的性质关系的性质一个关系就是一张二维表格。一列对应一个字段,称为属性;一行对应一条记录,称为元组。一个关系中要有一个关键字,称为主键。关
13、键字可以唯一地标识一个元组。每一列上的数据属于同一种属性;没有完全相同的行,两行之间可以有重复的字段但不能所有字段都重复;行与行间顺序可互换;列与列间顺序可互换;列的名称在表中要唯一 2.数据依赖数据依赖操作异常与数据依赖有关,数据依赖是元组间相互关系。函数依赖如果在关系R中,数据元素Y的取值依赖于数据元素X的取值,那么称Y函数据依赖于X,或称为X决定Y,记作X-Y。传递依赖如果X,Y,Z分别是R中三个属性,Z函数据依赖于Y,Y函数据依赖于X,那么Z也函数依赖于X,称为Z传递依赖于X。3.第一规范化形式(第一规范化形式(1NF)关系模式要满足的条件称为规范化形式,简称为范式。第一范式要求元组中
14、的每一个数据项都不可再分,都是原子项,记作1NF。即要求二维表格中每一个属性都是单一的不可再分的数据。4.第二规范化形式(第二规范化形式(2NF)如果一个关系符合第一范式,并且每一个非关键字属性都完全依赖于主关键字,那么这个关系模式符合第二规范化形式简记为2NF。5.第三规范化形式(第三规范化形式(3NF)如果一个关系符合第二范式,并且所有非关键字属性间不存在函数依赖关系,那么称这个关系符合第三规范化形式,简记为3NF。3NF的实质是从符合2NF的关系中除去传递依赖。6.规范化形式间的关系规范化形式间的关系规范化的基本思想是逐步消除数据依赖中不合适的部分,使模式的各关系模式达到某种程序的“分离
15、”,即“一事一地”的模式设计原则。任何一个高层的规范化形式总是能够满足低层的规范化形式。为了提高规范化程度,必须对较低层的规范化形式的关系模式进行分解,即将一个低层的的关系模式分解成几个更小、更紧凑的关系模式。规范化程度低会造成数据冗余和操作异常,但是规范化程度低检索直接,处理比较简单;规范化程度高可以消除操作异常和减少数据冗余,但是在检索时要访问更多的关系表,需要做更多的关联操作,比较复杂。1、传统的关系运算、传统的关系运算进行传统的关系运算的两个关系必须具有相同的结构。并:两个关系的并运算是由这两个关系的元组组成的集合。交:两个关系R和S,它们的交是由既属于R又属于S的元组组成的集合。交运
16、算的结果是R和S 的共同元组。差:两个关系R和S,R差S的结果是由属于R但不属于S的元组组成的集合,即差运算是从R中去掉S中也有的元组。1.3.2 关系运算关系运算 2、专门的关系运算、专门的关系运算1)选择:从关系中找出满足条件元组的操作称为选择。选择是对关系表从行的角度水平方向抽取记录,经过运算得到的结果可以形成新的关系,但其中的元组是原关系的一个子集。2)投影:从关系模式中指定若干个属性组成新的关系称为投影。投影是从列的角度纵向对关系进行分解,经过投影运算可以得到一个新的关系,其包含的属性的个数小于等于原有关系,或者属性的排列顺序不同。3)联接:联接运算是将两个关系拼接成一个关系,生成的
17、新的关系包含两个关系满足条件的元组。联接是通过联接条件来控制的,联接条件中将出现两个表中的公共属性名,或者具有相同语义、可比的属性。SQL语言全称为结构化查询语言(语言全称为结构化查询语言(Structured Query Language),),SQL语言有如下的特点语言有如下的特点1)综合统一综合统一:SQL集数据定义、操纵、控制功能与一体,语言集数据定义、操纵、控制功能与一体,语言风格统一。数据操作符统一,每一种操作都只用一种操作符。风格统一。数据操作符统一,每一种操作都只用一种操作符。2)高度非过程化高度非过程化:用用SQL语言进行数据操作,无需了解存取路语言进行数据操作,无需了解存取
18、路径,存取路径的选择及操作过程由系统自动完成。径,存取路径的选择及操作过程由系统自动完成。3)面向集合的操作方式面向集合的操作方式:SQL语言采用集合操作方式,不仅操语言采用集合操作方式,不仅操作对象、查找结果可以是元组的集合,而且一次插入、删除、作对象、查找结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。更新操作的对象也可以是元组的集合。4)提供两种使用方式提供两种使用方式:SQL语言既是自含式语言,能够独立地语言既是自含式语言,能够独立地以联机交互的方式使用,它又是嵌入式语言,能够嵌入到高级以联机交互的方式使用,它又是嵌入式语言,能够嵌入到高级语言中供程序员设计
19、程序时使用。语言中供程序员设计程序时使用。5)语言简洁,易学易用语言简洁,易学易用:SQL核心功能只需要核心功能只需要9个动词就可以个动词就可以完成数据查询、定义、操纵和控制的功能。完成数据查询、定义、操纵和控制的功能。1.3.3 T-SQL语言简介语言简介 1.3.3.1 T-SQL概述概述T-SQL(Transact-SQL)语言是)语言是Microsoft公司在公司在SQL Server数据库管理系统中数据库管理系统中SQL的实现。它遵守的实现。它遵守Entry Level ANSI SQL-92的标准,用户和研发人员能使用标准的关系语的标准,用户和研发人员能使用标准的关系语句对表进行选
20、择、更新、插入和删除记录。句对表进行选择、更新、插入和删除记录。T-SQL语言由下面语言由下面4个部分组成:个部分组成:数据控制语言(数据控制语言(DCL):进行安全性管理。包括):进行安全性管理。包括GRANT、DENY和和REVOKE等。等。数据定义语言(数据定义语言(DDL):执行数据库任务,创建数据库及其):执行数据库任务,创建数据库及其对象。包括对象。包括CREATE、ALTER和和DROP等。等。数据操纵语言(数据操纵语言(DML):操纵数据库中各对象。包括):操纵数据库中各对象。包括SELECT、INSERT、UPDATE和和DELETE等。等。附加的语言元素:附加的语言元素:T
21、ransact-SQL语句的附加语言元素。包语句的附加语言元素。包括变量、运算符、函数、流程控制语句和注释等括变量、运算符、函数、流程控制语句和注释等 1标识符标识符 数据库对象的名称即为其标识符。对象标识符是在定数据库对象的名称即为其标识符。对象标识符是在定义对象时创建的。标识符随后用于引用该对象。义对象时创建的。标识符随后用于引用该对象。常规标识符格式规则:常规标识符格式规则:1)第一个字符必须是下列字符之一:)第一个字符必须是下列字符之一:Unicode 标准标准 3.2 所定义的字母。所定义的字母。Unicode 中定义中定义的字母包括拉丁字符的字母包括拉丁字符 a-z 和和 A-Z,
22、以及来自其他语言的字,以及来自其他语言的字母字符。下划线母字符。下划线(_)、“at”符号符号()或者数字符号或者数字符号(#)。在在 SQL Server 中,某些位于标识符开头位置的符号中,某些位于标识符开头位置的符号具有特殊意义。以具有特殊意义。以“at”符号符号“”开头的标识符表示局部开头的标识符表示局部变量或参数。以一个数字符号变量或参数。以一个数字符号“#”开头的标识符表示临时开头的标识符表示临时表或过程。以两个数字符号表或过程。以两个数字符号“#”开头的标识符表示全局开头的标识符表示全局临时对象。临时对象。2)不允许嵌入空格或其他特殊字符。)不允许嵌入空格或其他特殊字符。在在 T
23、ransact-SQL 语句中使用标识符时,必须用双引语句中使用标识符时,必须用双引号或括号分隔不符合规则的标识符。号或括号分隔不符合规则的标识符。2对象的引用对象的引用完整的对象名称由四个标识符组成:服务器名称、数据库名完整的对象名称由四个标识符组成:服务器名称、数据库名称、架构名称和对象名称。其格式如下:称、架构名称和对象名称。其格式如下:server.database .schema_name .object_name指定了所有四个部分的对象名称称为指定了所有四个部分的对象名称称为完全限定名称完全限定名称。在。在 Microsoft SQL Server 2005 中创建的每个对象必须具
24、有唯中创建的每个对象必须具有唯一的完全限定名称。例如,如果所有者不同,同一个数据库一的完全限定名称。例如,如果所有者不同,同一个数据库中可以有两个名为中可以有两个名为 xyz 的表。的表。大多数对象引用使用由三个部分组成的名称。默认服务器为大多数对象引用使用由三个部分组成的名称。默认服务器为本地服务器。由四个部分组成的名称通常用于分布式查询或本地服务器。由四个部分组成的名称通常用于分布式查询或远程存储过程调用远程存储过程调用 3批处理批处理批处理是包含一个或多个批处理是包含一个或多个 Transact-SQL 语句的组,语句的组,SQL Server 将批处理的语句编译为一个可执行单元,称为执
25、行计划。将批处理的语句编译为一个可执行单元,称为执行计划。执行计划中的语句每次执行一条。执行计划中的语句每次执行一条。编译错误(如语法错误)可使执行计划无法编译。因此未执行批编译错误(如语法错误)可使执行计划无法编译。因此未执行批处理中的任何语句。运行时错误(如算术溢出或违反约束)会产处理中的任何语句。运行时错误(如算术溢出或违反约束)会产生以下影响之一:生以下影响之一:大多数运行时错误将停止执行批处理中当前语句和它之后的语大多数运行时错误将停止执行批处理中当前语句和它之后的语句。句。某些运行时错误(如违反约束)仅停止执行当前语句,而继续某些运行时错误(如违反约束)仅停止执行当前语句,而继续执
26、行批处理中其他所有语句。执行批处理中其他所有语句。在运行时发生错误之前执行的语句不受影响,唯一的例外是如在运行时发生错误之前执行的语句不受影响,唯一的例外是如果批处理在事务中而且错误导致事务回滚,在这种情况下回滚运果批处理在事务中而且错误导致事务回滚,在这种情况下回滚运行到错误之前所进行的未提交的数据修改。行到错误之前所进行的未提交的数据修改。1.3.3.2 T-SQL流程控制流程控制T-SQL提供了用于编程的代码语法结构,可以用来进行顺序、提供了用于编程的代码语法结构,可以用来进行顺序、选择、循环等程序设计。选择、循环等程序设计。1SET语句语句SET语句为声明的变量赋值。其语法格式为:语句
27、为声明的变量赋值。其语法格式为:SET locl_variable=expression在使用赋值语句时要求指定的值与变量的数据类型相符。例如在使用赋值语句时要求指定的值与变量的数据类型相符。例如下面的语句声明了变量并进行赋值。下面的语句声明了变量并进行赋值。DECLARE A INTDECLARE B CHAR(10)SET A=365SET B=OlympicGO2IFELSE语句语句IFELSE的语句格式为:的语句格式为:IF Boolean_expressionsql_statement|statement_blockELSEsql_statement|statement_blockI
28、FELSE语句对条件表达式进行判断,如果表达式结果为语句对条件表达式进行判断,如果表达式结果为TRUE,则执行,则执行IF后面的语句;可选的后面的语句;可选的ELSE引入另一个引入另一个SQL语句,如果条件表达式结果为语句,如果条件表达式结果为FALSE,则执行,则执行ELSE后面的后面的语句。语句。3BEGINEND语句语句在程序设计中,往往要执行的操作不是一个简单的在程序设计中,往往要执行的操作不是一个简单的SQL语句语句就能够完成的,经常需要多条语句来完成一个任务。使用就能够完成的,经常需要多条语句来完成一个任务。使用BEGINEND可以将一组语句封闭起来成为一个组,每次执可以将一组语句
29、封闭起来成为一个组,每次执行都完成一组这样的语句。行都完成一组这样的语句。语法格式为:语法格式为:BEGINsql_statement|statement_blockEND并且并且BEGINEND语句可以嵌套使用语句可以嵌套使用 4WHILE、BREAK、CONTINUE语句语句 WHILE语句用来设置需要重复执行的语句块,即循环执行。在WHILE后面指定的条件表达式,只要其值为TRUE,指定的语句块就执行。在循环的语句块中通过设置BREAK可以无条件地退出循环,而执行CONTINUE可以使循环重新开始执行。5RETURN语句语句 RETURN从查询中无条件退出。当程序执行中遇到RETURN语
30、句,立即从过程、批处理或语句块中退出,RETURN之后的语句不执行。6WAITFOR语句语句 WAITFOR称为延迟语句,设定在达到指定时间或时间间隔之前,或者指定语句至少修改或返回一行之前,阻止执行批处理、存储过程或事务。其语法格式为:WAITFOR DELAY time_to_pass /*设定等待时间*/TIME time_to_execute /*设定等待到某一时刻*/7GOTO语句语句 GOTO语句将执行语句无条件地跳转到标签外,并从标签位置继续执行。8TRYCATCH语句语句 用于进行内部错误测试9GO语句语句 GO是一个程序段落结束的标识,通常用在一段程序的结尾处,标识此段程序至
31、此结束。不参与程序的运行。1.4 SQL Server 2005简介 1.4.1 SQL Server发展发展 SQL Server是美国微软公司推出的关系数据库管理系统,用户可以更方便快捷地管理数据库、设计开发应用程序。它有两种工作模式:一种是C/S(客户机/服务器)的工作模式,它使用Transact SQL语言在服务器与客户机间传送请求和答复。另一种是B/S(浏览器/服务器)工作模式,SQL Server 2005与XML结合下支持实现。SQL Server 2005共有5个版本,分别是企业版(Enterprise)、开发版(Development)、工作组版(Workgroup)、标准版
32、(Standard)、简易版(Express)。SQL Server2005的不同版本用于满足企业和个人的不同需求。1.4.2 SQL Server 2005新增功能新增功能1通过SQL Server Management Studio工具集成了所有SQL Server 2005服务。2增加了对用户自定义数据进行加密的功能,使安全性得到提高。3增加了对64位系统的支持,增强了复制的能力。4提供了故障转移集群和数据库镜像技术,使可用性更高。5引入了.NET规范语言,使之和VS.NET紧密结合在一起6对XML支持更强大,提供了新的XML数据类型,可以在数据库中存储XML文件。7提供更强大的T-SQ
33、L语言。8能使用SMTP发送电子邮件。9数据转换功能更强大。10可用HTTP直接访问SQL Server。11引入了新了SQL Server应用程序框架,包括Service Broker、Notification Services、SQL Server Mobile和SQL Server Express。12提供了基于服务器的企业级报表环境工具Reporting Services,可以通过Web Services进行管理。1.4.3 安装安装SQL Server 20051安装安装SQL Server 2005的系统要求的系统要求 CPU要求至少是P3处理器以下,主频最低要求600MHz,建议
34、使用1GHz以上。内存最小要求512M,建议使用1G以上。硬盘需求大小取决于安装组件的多少,但至少要有1.66G的可用硬盘空间用来存放安装过程中产生的临时文件。除此之外,还要求IE 6.0 SP1及以上版本,如果安装报表服务器要求IIS 5.0以上版本,ASP.NET 2.0版本。MDAC要求Microsoft 数据访问组件2.8 SP1或更高版本。2安装安装SQL Server 2005 在安装SQL Server 2005时如果操作系统不是Windows 2003则需要单独安装三个组件:Microsoft Windows Installer 3.1或更高版本、MDAC 2.8 SP1或更高
35、版本、Microsoft Windows.NET Framework 2.0。建议不要使用已有其它作用的服务器用于安装SQL Server 2005,以免服务器性能下降。1.4.4 服务器的后台服务服务器的后台服务 SQL Server 2005安装安毕后,其服务器端组件是以“服务”的形式在计算机系统中运行,“服务”是一种在后台运行的应用程序。运行的服务不在桌面上显示,在后台完成需要的操作。可以在操作系统【管理工具】的【服务】中查看。1SQL ServerSQL Server服务就是SQL Server 2005的数据引擎,是SQL Server 2005的核心服务。2SQL Server A
36、ctive Directory Helper这个服务用于支持与活动目录Active Directory的集成,它由所有已安装的实例共享,并且只能安装一次。3SQL Server AgentSQL Server代理,它按计划好的任务自动执行数据库管理员安排的作业4SQL Server Analysis Services提供联机分析处理(OLAP)和数据挖掘的服务。5SQL Server Browser它为所有SQL Server实例共享,它的功能是将SQL Server的连接信息6SQL Server FullText Search它的功能是是快速创建结构化和半结构化数据的内容和属性的全文索引7
37、SQL Server Integration Services执行如FTP、SQL语句和电子邮件消息传递等工作流功能的任务8SQL Server Reporting Services管理、执行、呈现、计划和传递报表。9SQL Server VSS Writer它是SQL Server编写服务器1.4.5 客户端上的管理工具客户端上的管理工具1SQL Server Management Studio 这是SQL Server 2005中最重要的用得最频繁的工具,它集成了SQL Server 2000中的企业管理器、查询分析器等功能为一体,还可以用它来编写XML语句。它在【开始】|【所有程序】|【
38、Microsoft SQL Server 2005】菜单中。2Reporting Services配置配置 它是用于报表服务配置,管理报表服务器。在【开始】|【所有程序】|【Microsoft SQL Server 2005】|【配置工具】菜单中。3SQL Server Configuration Manager SQL Server配置管理器,用于管理与SQL Server有关的连接服务。在【开始】|【所有程序】|【Microsoft SQL Server 2005】|【配置工具】菜单中。4SQL Server错误和使用情况报告错误和使用情况报告 在【开始】|【所有程序】|【Microsof
39、t SQL Server 2005】|【配置工具】菜单中。5SQL Server外围应用配置器外围应用配置器 它可以启用、禁用、SQL Server 2005安装的一些功能、服务和远程连接,以增加SQL Server的安全性。它在【开始】|【所有程序】|【Microsoft SQL Server 2005】|【配置工具】菜单中。6SQL Server Profiler 它是SQL Server事件探查器,用于从服务器上捕获SQL Server 2005事件的工具。可以查找导致SQL Server运行慢的查询;捕获导致某个问题的SQL语句;监视SQL Server性能等。它在【开始】|【所有程序
40、】|【Microsoft SQL Server 2005】|【性能工具】菜单中。7数据库引擎优化顾问数据库引擎优化顾问 可以完成对数据库的优化。它在【开始】|【所有程序】|【Microsoft SQL Server 2005】|【性能工具】菜单中。8Visual Studio 2005 利用它可以创建与SQL Server 2005相连的Analysis Services项目、Integration Services项目、报表服务器项目和报表模型项目等。它在【开始】|【所有程序】|【Microsoft Visual Studio 2005】中。1.4.6 启动及配置SQL Server 200
41、5 1连接到服务器连接到服务器 通过客户端管理工具SQL Server Management Studio可以连接到服务器上。2添加服务器注册添加服务器注册 把常用的服务器进行注册可以方便以后的管理和使用。在SQL Server Management Studio的【已注册服务器】窗口里列出的是常用的服务器与实例名。但这里保存的只是服务器连接信息,并不是真正已连接到服务器上了,在连接时还要指定服务器类型、名称、身份验证信息。3停止或暂停服务停止或暂停服务 单击【开始】|【所有程序】|【Microsoft SQL Server 2005】|【配置工具】,选择【SQL Server Configu
42、ration Manager】4配置服务启动模式配置服务启动模式 在SQL Server 2005的服务中,有些服务是默认自动启动的,如SQL Server 5配置服务器配置服务器 在SQL Server Management Studio中的【对象资源管理器】窗口里,右击要配置的服务器名,在快捷菜单中选【属性】第第2章章 数据库管理数据库管理2.1 SQL SERVER2.1 SQL SERVER中数据库概述中数据库概述 2.2 2.2 数据库管理数据库管理 主要内容主要内容 熟悉数据库及其对象熟悉数据库及其对象学习文件和文件组及事务日志学习文件和文件组及事务日志了解创建数据库系统的几个阶段
43、和原则了解创建数据库系统的几个阶段和原则熟练掌握创建和管理数据库熟练掌握创建和管理数据库2.1 SQL SERVER2.1 SQL SERVER中数据库概述中数据库概述 2.1.1 数据库及其对象数据库及其对象 1.数据库数据库 在在SQL Server 2005SQL Server 2005中数据库是数据和数据库对象的集合,中数据库是数据和数据库对象的集合,以磁盘文件的方式存放在计算机里。数据处理是指将数以磁盘文件的方式存放在计算机里。数据处理是指将数据转换成信息的过程。据转换成信息的过程。2.常见的数据库对象常见的数据库对象 表:表:是具体组织和存储数据的对象,由列和行组成。其是具体组织和
44、存储数据的对象,由列和行组成。其中每一列都代表一个相同类型的数据。中每一列都代表一个相同类型的数据。记录:记录:在表的结构建立完毕之后,表中的每一行数据就在表的结构建立完毕之后,表中的每一行数据就是一条记录。是一条记录。主键:主键:是表中的一列或多列的组合。它的值能唯一地确定是表中的一列或多列的组合。它的值能唯一地确定一条记录。一条记录。外键:外键:是这样一列或多列的组合,它存在于是这样一列或多列的组合,它存在于A表中,但不表中,但不是是A表的主键;它同时也存在于表的主键;它同时也存在于B表中,且是表中,且是B表的主键,表的主键,那么称这一列或多列是那么称这一列或多列是A表相对于表相对于B表的
45、外键。外键是用来表的外键。外键是用来实现表与表之间的关系的。实现表与表之间的关系的。索引:索引:是某个表中一列或若干列值的集合和相应的指向表是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。它提供了数中物理标识这些值的数据页的逻辑指针清单。它提供了数据库中编排表中数据的内部方法。据库中编排表中数据的内部方法。约束:约束:是是SQL Server实施数据一致性和数据完整性的方法实施数据一致性和数据完整性的方法或者说是一套机制,它包括主键约束、外键约束、或者说是一套机制,它包括主键约束、外键约束、Unique约束、约束、Check约束、缺省值和允许空等六种机制。约
46、束、缺省值和允许空等六种机制。默认值:默认值:功能就是在数据表中插入数据时,对没有指定具功能就是在数据表中插入数据时,对没有指定具体值的字段,数据库会自动提供默认的数据。体值的字段,数据库会自动提供默认的数据。规则:规则:是用来限制数据表中字段的有限范围,以确保列中是用来限制数据表中字段的有限范围,以确保列中数据完整性的一种方式。数据完整性的一种方式。存储过程:存储过程:是一组经过编译的可以重复使用的是一组经过编译的可以重复使用的Transact-SQL代码的组合。它是经过编译存储到数据库中的,所以运行代码的组合。它是经过编译存储到数据库中的,所以运行速度要比执行相同的速度要比执行相同的SQL
47、语句要快。语句要快。触发器:触发器:是一种特殊的存储过程,与表格相关联。当用户是一种特殊的存储过程,与表格相关联。当用户对数据进行插入、修改、删除或数据库(表)建立、修改、对数据进行插入、修改、删除或数据库(表)建立、修改、删除时激活,并自动执行。删除时激活,并自动执行。2.1.2 文件和文件组文件和文件组1文件文件 文件是数据库的操作系统文件,文件是数据库的操作系统文件,SQL Server 2005SQL Server 2005中的每中的每个数据库都由多个文件组成,个数据库都由多个文件组成,SQL Server 2005 SQL Server 2005 数据库数据库有以下三种类型的文件。有
48、以下三种类型的文件。1)1)主要数据文件主要数据文件 2)2)次要数据文件次要数据文件 3)3)日志文件日志文件 2 文件组文件组 出于方便对数据库文件的管理的考虑,可以将数据库文出于方便对数据库文件的管理的考虑,可以将数据库文件分成不同的文件组。文件组可以对此进程提供帮助。系件分成不同的文件组。文件组可以对此进程提供帮助。系统管理员可以为每个磁盘驱动器创建文件组,然后将特定统管理员可以为每个磁盘驱动器创建文件组,然后将特定的表、索引、或表中的的表、索引、或表中的 text、ntext 或或 image 数据指派给特数据指派给特定的文件组。定的文件组。SQL Server 2005提供了三种文
49、件组类型,它们提供了三种文件组类型,它们分别是主要文件组,用户自定义文件组和默认文件组。分别是主要文件组,用户自定义文件组和默认文件组。1)主要文件组)主要文件组2)用户自定义文件组)用户自定义文件组3)默认文件组)默认文件组事务日志是存放恢复数据所需的所有信息,是数据库中已发生的所有修改和执行每次修改的事务的一连串记录。当数据库损坏时,管理员可以使用事务日志还原数据库。每一个数据库必须至少拥有一个事务日志文件,允许拥有多个日志文件。事务日志是针对数据库改变所做的记录,它可以记录针对数据库的任何操作,并将记录结果保存在独立的文件中。对于任何事务过程,事务日志都有非常全面的记录,根据这些记录可以
50、将数据文件恢复成事务前的状态。2.1.3 事务日志事务日志 数据库设计是建立数据库及其应用系统的核心和基础,它数据库设计是建立数据库及其应用系统的核心和基础,它要求对于指定的应用环境,构造出较优的数据库模式,建立要求对于指定的应用环境,构造出较优的数据库模式,建立起数据库应用系统,并使系统能有效地存储数据,满足用户起数据库应用系统,并使系统能有效地存储数据,满足用户的各种应用需求。一般按照规范化的设计方法,常将数据库的各种应用需求。一般按照规范化的设计方法,常将数据库设计分为若干阶段:设计分为若干阶段:1需求分析阶段需求分析阶段2概念设计阶段概念设计阶段3逻辑结构设计阶段逻辑结构设计阶段4物理