口碑权威的白癜风医院 http://m.39.net/baidianfeng/a_4910787.html

《SQLSERVER数据库管理系统》课程教案

专业班级教师授课时间

第一讲SQLSERVER简介

SQLSERVER(Structuredquerylanguageserver):结构化查询语言,是一个关系数据库管理系统。最初是由MicrosoftSybase和Ashton-Tate三家公司共同开发的,并于年推出了第一个OS/2版本。后来在WindowsNT推出后,Microsoft专注于开发推广SQLServer的WindowsNT版本,而Sybase则专注于SQLServer在UNIX操作系统上的应用。

1数据库的基本概念1.1.1数据管理的三个阶段

一、数据及数据管理

数据:对客观存在的事物的一种描述,例数字、文字、图像、声音等。数据经过数字化以后才能被计算机识别和处理,其是数据库中存储的基本对象。

数据管理:数据被数字化以后,需要对其进行分类、组织、编码、存储、检索和维护,即进行数据管理。主要是为了从原始数据中提取对人们有价值的信息,以提高工作效率。

数据管理的三个阶段(按时间划分)

人工管理阶段:20世纪50年代中期以前,数据管理过程由人工完成,主要用于科学计算。该阶段的数据管理和程序合为一体,各程序使用自己的数据,数据的建立是针对某一应用程序的,应用程序间无法共享数据资源,存在大量的重复数据,也难以维护应用程序间的数据一致性。

文件管理阶段:20世纪50-60年代中期,数据管理由统一的软件管理。随着计算机软硬件水平的提高,产生了依附于操作系统的专门数据管理系统——文件系统,该阶段程序和数据是分离的,数据保存在文件中,并可以文件为单位进行数据共享,但不能以记录或数据项为单位进行共享。缺点是每种类型的数据都有自己的文件存储结构,数据的最小存取单位是记录,而不是数据项。数据库系统管理阶段:20世纪60年代后期,进入数据库系统管理阶段,该阶段主要用于企业管理,因此需要更高的数据共享能力。其将一个单位或一个部门志需的数据综合地组织在一起,构成数据库,由数据库管理系统(DBMS)软件实现对数据库的定义、操作和管理。主要表现为:数据结构化:其实现整体数据结构化,可面向整个组织,而不是某一应用程序,同时其数据的存取灵活,可对任一数据项、记录或一组数据进行处理。数据的共享性好,冗余低:数据与数据之间有关系,可被多个用户使用或被多个应用程序共享使用,可避免数据之间的不相容性和不一致性。数据独立性好:包括数据的物理独立性和逻辑独立性。即存储在数据库中的数据物理结构发生变化或数据的逻辑结构发生改变,不会影响应用程序代码。数据由DBMS管理和控制:可对数据进行安全性保护、完整性检查、并发控制以及数据恢复等功能。

二、数据库管理系统的组成

1、由用户、数据库管理员、软件、数据库及硬件组成。

用户:使用数据库的人员,分为:终端用户:通过应用系统的用户接口使用数据库,采用B/S和C/S方式访问,主要进行对个别表的操作;应用程序开发人员:设计和编写可使用数据库的应用程序,以供终端用户作用。数据库管理员:DBA,负责数据库系统的管理、维护、使用。软件:主要指DBMS及其相关的子系统。是介于用户和操作系统的一组软件,数据库管理系统是用于管理数据的计算机软件。主要负责数据库的配置、存取、管理和维护工作。用户和应用程序在数据库中进行的所有操作都要通过DBMS。例SQLSERVER。数据库:是存放数据的仓库,在计算机中,数据库是数据和数据库对象的集合。所谓数据库对象是指表、视图、存储过程、触发器等。硬件:存储数据库和DBMS的硬件,要求CPU处理速度要快、内存要足够大、磁盘空间足够大、数据传输率高。2、按功能划分,数据库管理系统包括以下基本模块:

数据库定义模块:主要用于对数据库中的相关对象进行定义。数据控制模块:包括数据检索、读取、写入、修改及删除等。数据库运行管理模块:包括多用户环境下的事务处理和自动恢复、并发控制和死锁检测、安全性检查、完整性检查和执行、运行日志的组织管理工作,为数据的正常运行提供了保证。数据库组织管理模块:用来分类组织、存储和管理各种数据。包括:数据字典、用户数据等。数据库的建立和维护模块。包括数据库建立、数据转储和恢复、数据库性能检测等。2数据模型数据库这一概念提出后,先后出现了几种数据模型。其中基本的数据模型有三种:层次模型系统、网络模型系统和关系模型系统。60年代末期由美国IBM公司的E.F.CODD博士提出的关系模型具有数据结构简单灵活、易学易懂且具有雄厚的数学基础等特点,现已成为数据库的标准。目前广泛使用的数据库软件都是基于关系模型的关系数据库管理系统

实体、属性、关系实体:客观存在并可相互区分的事物,如一个学生。在关系模型中实体通常是以表的形式来表现的。表的每一行描述实体的一个实例。

实体集(Entityset):指同类实体的集合。如全体部门就是一个实体集

属性:实体所具有的特征。如人的姓名、身高、体重等。一个实体可由若干属性来刻画,表的每一列描述实体的一个特征或属性。

关系:指实体之间的关系,即实体之间的对应关系。关系可以分为三种:(1)一对一的联系。对于实体集A中的每一个实体,实体集B中至多只有一个实体和它有联系。如:一个人只有一种性别,一个人→性别为一对一的联系;(2)一对多的联系。对于实体集A中的每一个实体,实体集B中有多于一个实体和它有联系。

(3)多对多的联系。对于实体集A中的每一个实体,实体集B中有多于一个的实体和它有联系,反之对于实体集B中的每一个实体,实体集A中也有多于一个的实体和它有联系。如:一门课被很多学生选修,同样,一个学生也可以选修很多课程。通过关系就可以用一个实体的信息来查找另一个实体的信息

关系模型关系模型用二维表的集合来表示数据和数据间的联系。每个表有多个列,每列有唯一的列名。在关系模型中,无论是从客观事物中抽象出的实体,还是实体之间的联系,都用单一的结构类型——关系来表示。在对关系进行各种处理之后,得到的还是关系——一张新的二维表。

二维表中的列称为(字段)即属性,列值称为属性值,其取值范围称为值域。二维表中的行称为记录,表示一个实体。

特点:(1)结构简单、概念清楚;(2)行和列无次序;(3)能够直接反映实体之间的三种关系;(4)通过公共属性可建立表与表之间的联系,从而建立实体间的联系;(5)实现了数据的完整性;(6)具有严格的理论基础;(7)关系中不允许有完全相同的两行存在。

3关系数据库管理系统简介。关系数据库的定义:定义:是基于关系模型的的一种数据库,是一些相关的表和其他数据库对象的集合。含义:A、信息存放在二维表格结构的表中,可包含多个这样的数据表;B、表与表之间是相互联系的,这种联系是通过主键和外键所体现的参照关系实现的;C、数据库还包含了其他数据库对象,如视图、存储过程、触发器等。主键和外键键是关系模型中的一个重要概念,它是逻辑结构,不是数据库的物理部分。(1)主键(PrimaryKey):由表中的某一列或某几列组成,该列或列的组合的值能惟一地标识一行记录。一个表只有一个主键,值惟一且不允许为空值(null),用于实施实体完整性。

(2)外键(ForeignKey):指一个表中含有与另一个表的主键PK相同的列组,那么该列组称为外键,其用于实施参照完整性,用来描述表和表之间的联系。

一个表不一定有外关键字,而且外关键字的值也不一定惟一,允许有空值和重复值。

(3)·公共键(CommonKey)如果两个表中具有相同的列和列组,那么列和列组被称为这两个表的公共键。

主表:如果公共键是其中一个表的主键,那这个表就称为主表;

从表:外键所在的表称为从表。

(4)创建外键的优点:A、提供了表与表之间的联系;B、根据主表中的主键值来检查参照该主键的外键值的合法性,保证了外键值的有效性。

关系数据库的特点:采用SQL语言来操纵数据库中的数据;能保证数据的完整性;作为一个便于修改的系统,其会排除数据冗侠,加快数据访问速度;可能过安全性检查来限制应用程序对数据库的访问。几种常见的关系数据库简介MSsqlserver:微软公司,运行于nt/server系统,支持T-sql和ANSISQL92标准。Oracle8:oracle公司,需要较多的硬件资源支持,操作复杂;Sybasesqlserver:sybase公司,主要运行于UNIX系统;DB/2:IBM公司,适合于IBM自己的大型机系统。1.2MSSQLSERVER简介

MSSQL是运行在NT系统上,基于client/server体系的关系型数据库管理系统,其使用T—SQL语言在客户机和服务器之间发送请求。

1C/S体系结构SQL把所有工作负荷分解成在SERVER机器上的任务和在CLIENT中的任务,任务分配如下:

CLIENT:负责向用户提供数据处理和操作界面,其运行在一台、多台客户机或server上,其通过网络与SERVER通信。请求另一计算机的服务的计算机称为客户机(Client)。Server:负责管理数据库的结构和分配可用的服务器资源,运行在服务器上。1.2.2mssqlserver版本

SQLSERVER的服务器环境可以是Win、WinNT或者Win9X。

企业版:支持所有SQLSERVER功能,主要用于大型WEB站点和企业联机事务处理及数据仓库系统等的数据库产品的服务器。标准版:用于小型的工作组或部门数据库服务器使用;个人版:用于单机系统或客户机。开发版:用于程序开发应用程序,这些程序需要SQL作为数据存储设备,不能作为正式服务器使用。企业评估版:可从WEB上免费下载的功能完整的版本,但试用期为天。Windows系列主要操作系统所支持的SQLSERVER版本

说明:SQLSERVER各版本的客户端软件可在任何版本的win或win98/xp上运行,只有服务器组件才必

须在特定的操作系统上使用。

1.2.3MSSQL与winNT的集成

MSSQL是与windowsNT完全集成的,并且利用了NT的许多功能,如与安全性系统集成、支持多协议、多线程、作为NT的服务运行、利用NT的性能监测器和使用Microsoft索引服务器等。

1.2.4SQLSERVER的服务

MSSQLServer服务:指SQLSERVER的RDBMS(关系型数据库管理系统),是SQLSERVER的核心部分,其直接管理和维护数据库。主要负责处理来自客户端的T—SQL语句,处理存储过程,并将执行结果返回客户端。SQLServerAgent服务:代理服务器,独立的一个服务,需要单独启动,主要负责:创建和管理作业(能按照事先设定好的计划自动地执行相应的功能)、创建和管理报警(能针对系统出现的错误自动地进行报警)、创建和管理操作员。MSDTC服务:分布式事务协调器,独立程序,用于保证在多个服务器之间的事务能同时完成或取消,协调多服务器之间事务的一致性,确保多服务器之间数据的完整性。1.2.5在线手册和T-SQL使用帮助

F1或单击“帮助”可获得联机帮助;SHIFT+F1:可获得T-Sql语言的使用帮助。

3MMSQLServer的特点作为关系型数据库领域的一个优秀产品,其可以满足各种类型的不同用户和独立软件供应商商业程序的要求,之所

以深受广大开发人员的的喜爱,主要是因为它具有如下一些重要特点。

基于图形的管理工具;(2)集中式的管理;(3)支持多客户应用程序;(4)支持多个不同的开发平台;(5)支持企业级的应用程序;(6)运行于winnt和win95/98;(7)支持数据复制支持颁式事务处理;(8)支持数据仓库;(9)内建式的在线分析处理1.4MSSQL的数据库体系结构

采用分层通信体系结构,把应用程序与底层的网络协议隔离开来,可允许用户在不同的网络环境中使用同一个应用程序。

1.4.1通信

应用程序:采用数据库应用程序接口开发的软件。

数据库接口:是应用程序给数据库服务器发送请求和处理服务返回结果的接口;

网络库:是一个通信包,将应用程序的请求和服务器的结果打包,并选择合适的网络协议传送,客户机和服务器都必须安装。

表数据流:用于客户程序与数据库服务之间的通信。

开放数据服务:是数据库服务器上的一个组件,用于处理网络连接,并将客户接的请求传送给SQLSERVER,并将结果返回给客户机。

1.4.2应用程序中的数据库接口

应用程序通过数据库接口访问SQLServer,其主要包括:数据对象接口和API应用程序接口访问SQL。

应用程序接口:定义一个应用程序如何连接到数据库,如何将数据传递给数据库,主要包含两种数据接口:

ODBC:开放式数据库连接标准,是微软公司为其视窗系统推出的一种访问各种数据库的统一接口技术,其类似于一种软件驱动程序,提供了应用软件和数据库之间的访问标准。

OLDDB:对象链接和嵌入数据库,是一种基于对象的数据访问接口。使用OLEDBAPI,可以编写能够访问符合OLEDB标准的任何数据源的应用程序,OLEDB标准实际上是规定了数据使用者和提供者之间的一种应用层的协议。

数据对象接口ActiveXDataObject(ActiveX数据对象)ADO:是一组优化的访问数据库的专用对象集。为了使得流行的各种编程语言都可以编写符合OLEDB标准的应用程序,微软在OLEDBAPI之上,提供了一种面向对象、与语言无关的(Language-Neutral)应用编程接口,这就是ActiveXDataObjects,简称ADO。RDO(远程数据对象)1.4.3SQLSERVER结构

1.5数据库对象及其引用

数据库对象数据库是对象的集合,SQLSERVER中主要包括如下几种对象。

表:组织和存储数据的对象,由行和列组成。约束:确保数据库中的数据按所需形式存在的一种方法,用于强制实现数据完整性。默认值:当在表中没有给出明确列值时由系统自动赋予事先设定好的值。规则:当向表的某一列输入和更新数据时,对列值的限定取值范围。索引:提供一种无需扫描整张表就能实现对数据的快速查询的途径,用于优化查询。视图:提供给用户以多种角度观察数据库中数据的一种方法。存储过程:一组预先编译好的、能实现特定数据操作功能的SQL代码集。触发器:是一个由用户定义的SQL事务命令的集合。当对一个表进行插入、更改、删除时,就会触发这组命令自动执行。数据库对象的引用格式:server.database.owner.object中文格式:服务器名称.数据库名称.所有者名称.对象名称例:worker.jwgl.pl.tblstudent说明:server_name:连接的服务器或远程服务器的名称;database_name:数据库对象所在数据库名称;

owner_name:数据库对象的所有者(属主);

object_name:引用的数据库对象的名称。




本文编辑:佚名
转载请注明出处:网站地址  http://www.cqwpz.com/kcyzl/11336056.html
当前时间: