SQLServer数据库系统概述课件_第1页
SQLServer数据库系统概述课件_第2页
SQLServer数据库系统概述课件_第3页
SQLServer数据库系统概述课件_第4页
SQLServer数据库系统概述课件_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第八章 SQL Server 数据库系统概述开始下一页SQL Server的发展历程及特点SQL Server的安装与启动SQL Server管理工具简介SQL Server的系统结构Transact SQL语言简介SQL Server的主要数据类型SQL Server函数SQL Server的标识符及命名规则1第八章 SQL Server 数据库系统概述开始下一页S应用程序逻辑数据库大型机客户端终端字符按键信息大型主机执行RDBMS和应用程序20世纪60-70年代的系统结构 计算机应用系统的发展(1)大型机相当于今天的服务器集中式2应用程序逻辑数据库大型机客户端终端字符按键信息大型主机执行R

2、数据库应用程序逻辑工作站1应用程序逻辑工作站1应用程序逻辑工作站1应用程序逻辑工作站1网络文件服务器文件请求文件应用程序在客户工作站上运行 只提供资源(数据)的集中管理和访问途径 计算机应用系统的发展(2)20世纪80年代的系统结构 文件/服务器3数据库应用程序逻辑工作站1应用程序逻辑工作站1应用程序逻辑工数据库应用程序逻辑工作站1应用程序逻辑工作站1应用程序逻辑工作站1应用程序逻辑工作站1 网络服务器 请求结果应用程序逻辑客户/服务器计算机应用系统的发展(3)目前,主要是C/S、B/S模式4数据库应用程序逻辑工作站1应用程序逻辑工作站1应用程序逻辑工SELECT*FROM studentWH

3、ERE学号=“992126” 提交的SQL 接收的结果带有60000条记录的数据库表格文件student查询在服务器端执行 SQL 请求 返回一条记录客户工作站 服务器工作站接收的只是查询的结果 查询语句将在服务器中执行 客户/服务器结构特点前端用户需要后台服务器的服务时仅仅发出请求,服务器接受该请求后执行相应的功能,并把满足条件的那部分数据反馈给前台客户端 本结构核心大型机的绝对功能和集中管理以及微型计算机的低费用和更好的平衡处理能力 “协同处理”即通过客户端和服务器端的最佳分式合作,使整个系统达到最高的效率 客户端程序和数据专用 服务器功能和数据用户共享 它是一个开放的体系结构 5SELE

4、CT*FROM student 提交的SQL 接 数据库服务器的平台与客户端无关(无论是软件平台还是硬件平台)。数据库服务器上的数据库管理系统集中负责管理数据库服务器上的数据和资源,它向客户端提供一个开放的使用环境,客户端的用户通过数据库接口和SQL语言访问数据库。也就是说,不管客户端采用的是什么样的硬件平台和软件环境,它只要能够通过网络协议和数据库接口程序连接到服务器就可以对数据库进行访问。 客户/服务器结构特点6 客户/服务器结构特点677一、SQL Server的发展历程及特点 SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microso

5、ft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。 SQL Server近年来不断更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出的最新版本。上一页下一页8一、SQL Server的发展历程及特点 SQL S1真正的客户机/服务器体系结构。2图形化用户界面,使系统管理和数据库管理更加直观、简单。3丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地。4SQL Server与Win

6、dows NT完全集成,利用了NT的许多功能,如发送和接受消息,管理登录安全性等。SQL Server也可以很好地与Microsoft BackOffice产品集成。SQL Server的主要特点91真正的客户机/服务器体系结构。SQL Server的主要5具有很好的伸缩性,可跨越从运行Windows 95/98的膝上型电脑到运行Windows 2000的大型多处理器等多种平台使用。6对Web技术的支持,使用户能够很容易地将数据库中的数据发布到Web页面上。 7SQL Server提供数据仓库功能,这个功能只在Oracle和其他更昂贵的DBMS中才有。105具有很好的伸缩性,可跨越从运行Win

7、dows 95/98SQL Server 2000常见的版本 企业版(Enterprise Edition)标准版(Standard Edition)个人版(Personal Edition)开发者版(Developer Edition) 二、 SQL Server的安装与启动11SQL Server 2000常见的版本 二、 SQL S安装、运行SQL Server 2000的硬件需求(1)计算机Inter及其兼容计算机,Pentium 166Mhz或者更高处理器或DEC Alpha和其兼容系统。(2)内存(RAM)企业版最少64MB内存,其他版本最少需要32MB内存,建议使用更多的内存。(

8、3)硬盘空间完全安装(Full)需要180MB的空间,典型安装(Typical)需要170MB的空间,最小安装(Minimum)需要65MB的空间。12安装、运行SQL Server 2000的硬件需求(1)计算安装、运行SQL Server 2000的软件需求 SQL Server 2000企业版必须运行于安装Windows NT Server Enterprise Edition 4.0或者Windows2000 Advanced Server以及更高版本的操作系统下。SQL Server 2000标准版必须运行于安装Windows NT Server Enterprise Edition

9、 4.0、Windows NT Server 4.0、Windows 2000 Server以及更高版本的操作系统下。SQL Server 2000 个人版可在多种操作系统下运行,如可运行于Windows 9x, Windows NT 4.0或Windows 2000的服务器版或工作站版的操作系统下。SQL Server 2000 开发者版可运行于上述Windows 9x以外的所有操作系统下。13安装、运行SQL Server 2000的软件需求 SQL SQL Server 2000的安装与启动 SQL Server 2000的安装过程与其它Microsoft Windows系列产品类似。

10、用户可根据向导提示,选择需要的选项一步一步地完成。SQL Server 2000安装完成后,在Windows的程序项中会出现Microsoft SQL Server程序组,运行SQL Server数据库服务器 。14 SQL Server 2000的安装与启动 SQ数据库服务器管理工具数据库企业管理器查询分析器服务管理器导入和导出数据服务器端网络实用工具客户端网络实用工具事件探查器在IIS中配置 SQL XML支持Analysis Services工具 English Query工具 系统数据库用户数据库数据表索引视图存储过程 学习SQL Server 2000需要掌握的内容15数据库服务器管

11、理工具数据库企业管理器查询分析器服务管理器导入第八章 SQL Server 数据库系统概述开始下一页SQL Server的发展历程及特点SQL Server的安装与启动SQL Server管理工具简介SQL Server的系统结构Transact SQL语言简介SQL Server的主要数据类型SQL Server函数SQL Server的标识符及命名规则16第八章 SQL Server 数据库系统概述开始下一页S三、SQL Server管理工具简介SQL Server企业管理器是SQL Server的一个最重要的工具,它通过图形化的用户界面(GUI)来设置和管理服务器,易于使用。查询分析器不

12、但能够完成与企业管理器相同的工作,它还为数据库应用程序开发人员提供了一个简单易用的SQL交互窗口,用户通过它可以交互地设计、测试、运行Transact SQL语句。了解其它管理工具的功能。17三、SQL Server管理工具简介SQL Server企业 企业管理器企业管理器是基于一种新的被称为微软管理控制台(Microsoft Management Console)的公共服务器管理环境,它是SQL Server中最重要的一个管理工具。企业管理器不仅能够配置系统环境和管理SQL Server,而且由于它能够以层叠列表的形式来显示所有的SQL Server对象,因而所有SQL Server对象的建

13、立与管理都可以通过它来完成。 18 企业管理器企业管理器是基于一种新的被称为微软管理控制台(SQL Server 企业管理器(Enterprise Manager)界面19SQL Server 企业管理器(Enterprise Ma利用企业管理器可以完成的操作有 管理SQL Server 服务器;建立与管理数据库;建立与管理表、视图、存储过程、触发程序、角色、规则、默认值等数据库对象,以及用户定义的数据类型;备份数据库和事务日志、恢复数据库;复制数据库;设置任务调度;设置警报;提供跨服务器的拖放控制操作;管理用户帐户;建立Transact-SQL命令语句以及管理和控制SQL Mail。20利用

14、企业管理器可以完成的操作有 管理SQL Server 服1.3.2 服务管理器(Service Manager) SQL Server 服务管理器是在服务器端实际工作时最有用的实用程序,其界面如图1-21所示。服务管理器用来启动、暂停、继续和停止数据库服务器的实时服务,其提供的服务包括:SQL Server、SQL Server Agent、MSDTC(Microsoft Distributed Transaction Coordinator,微软分布式事务协调器)。 211.3.2 服务管理器(Service Manager) 图1-21 SQL Server 服务管理器(Service M

15、anager)界面22图1-21 SQL Server 服务管理器(Servi查询分析器(Query Analyzer) SQL Server 2000新的图形化查询分析器用于输入和执行Transaction-SQL语句,并且迅速查看这些语句的结果,以分析和处理数据库中的数据。这是一个非常实用的工具,对掌握SQL语言,深入理解SQL Server的管理工作有很大帮助。SQL Server 数据库查询分 析 器SQL23查询分析器(Query Analyzer) SQL Serv客户端网络实用工具(Client Network Utility) 用来配置客户端的网络连接、管理和测定客户端的网络库

16、等。服务器网络实用工具(Server Network Utility)用来配置服务器端网络连接和设置相关参数等。 24客户端网络实用工具(Client Network Utili客户端网络实用工具(Client Network Utility) 25客户端网络实用工具(Client Network Utili导入和导出数据(Imput and Export Data) 导入和导出数据采用DTC 导入/导出向导来完成。此向导包含了所有的DTS(Data Transformation Services)工具,提供了在OLE DB数据源之间复制数据的最简捷的方法。 SQL Server 数据库DTS

17、服务数据数据数据数据其他类型 数据库26导入和导出数据(Imput and Export Data)联机帮助文档(Books Online)SQL Server 2000提供了大量的联机文档,它具有索引和全文搜索能力,可根据关键词来快速查找用户所需信息。 27联机帮助文档(Books Online)SQL Serve四、SQL Server的系统结构存储结构主数据库文件次数据库文件事务曰志文件28四、SQL Server的系统结构存储结构主数据库文件次系统数据库SQL Srver的数据库组成系统级信息临时数据库,属于全局资源,没有权限限制。复制、作业调度和管理报警等建立新数据库的模板下一页29

18、系统数据库SQL Srver的数据库组成系统级信息临时数据库SQL Server 系统数据库简介 SQL Server 2000有6个系统数据库 1. Master数据库是SQL Server系统最重要的数据库,它记录了SQL Server系统的所有系统信息。这些系统信息包括所有的登录信息、系统设置信息、SQL Server的初始化信息和其它系统数据库及用户数据库的相关信息。 2. Model数据库是所有用户数据库和Tempdb数据库的模板数据库,它含有Master数据库所有系统表的子集,这些系统数据库是每个用户定义数据库需要的。 30SQL Server 系统数据库简介 SQL Server

19、 3. Msdb数据库是代理服务数据库,为其警报、任务调度和记录操作员的操作提供存储空间。 4. Tempdb是一个临时数据库,它为所有的临时表、临时存储过程及其它临时操作提供存储空间。 5. Pubs和Northwind数据库是两个实例数据库,它们可以作为SQL Server的学习工具。 313. Msdb数据库是代理服务数据库,为其警报、任务调度和记系统表在逻辑层次上,数据库是由表、视图、存储过程等一系列数据对象组成的。每当创建数据库时,SQL Server都会自动创建一些数据对象,其中比较重要的是系统表。不要求背系统表,只要求知道:系统表是自动生成的,不能手工修改。32系统表在逻辑层次上

20、,数据库是由表、视图、存储过程等一系列数据几个最重要的系统表 1. Sysobjects表SQL Server 的主系统表sysobjects出现在每个数据库中,它对每个数据库对象含有一行记录。2. Syscolumns表系统表syscolumns出现在master数据库和每个用户自定义的数据库中,它对基表或者视图的每个列和存储过程中的每个参数含有一行记录。3. Sysindexes表系统表sysindexes出现在master数据库和每个用户自定义的数据库中,它对每个索引和没有聚簇索引的每个表含有一行记录,它还对包括文本/图像数据的每个表含有一行记录。 33几个最重要的系统表 1. Syso

21、bjects表334. Sysusers表系统表sysusers出现在master数据库和每个用户自定义的数据库中,它对整个数据库中的每个Windows NT用户、Windows NT用户组、SQL Server 用户或者SQL Server 角色含有一行记录。5. Sysdatabases表系统表sysdatabases对SQL Server 系统上的每个系统数据库和用户自定义的数据库含有一行记录,它只出现在master数据库中。344. Sysusers表346. Sysdepends表系统表Sysdepends对表、视图和存储过程之间的每个依赖关系含有一行记录,它出现在master数据库

22、和每个用户自定义的数据库中。7. Sysconstraints表系统表sysconstraints对使用CREATE TABLE或者ALTER TABLE语句为数据库对象定义的每个完整性约束含有一行记录,它出现在master数据库和每个用户自定义的数据库中。356. Sysdepends表35第八章 SQL Server 数据库系统概述开始下一页SQL Server的发展历程及特点SQL Server的安装与启动SQL Server管理工具简介SQL Server的系统结构Transact SQL语言简介SQL Server的主要数据类型SQL Server函数SQL Server的标识符及命

23、名规则36第八章 SQL Server 数据库系统概述开始下一页S五、Transact SQL语言简介标准SQL语言是作为查询和执行语言使用的,不是功能全面的编程语言。Transact-SQL是SQL Server对标准SQL的扩展扩展的主要功能是:加入了程序控制结构,如IF-ELSE、WHILE等加入了局部变量、全局变量SQL Server不区分大小写,但书写规范是:保留关键字大写37五、Transact SQL语言简介标准SQL语言是作为查询 TSQL的主要功能:1、具有标准的SQL语言所有功能2、扩展功能有:加入程序控制和局部变量和全局变量一些功能。可以编写简单的程序。38 TSQL的主

24、要功能:1、具有标准的SQL语言所有功能38Transact-SQL语言主要组成部分 数据定义语言(DDL,Data Definition Language)数据操纵语言(DML,Data Manipularion Language)数据控制语言(DCL,Data Control Language)系统存储过程(System Stored Procedure)一些附加的语言元素39Transact-SQL语言主要组成部分 数据定义语言(DD一些附加的语言元素:如注释符号与变量及运算符:(1)、 注释:有两种:一种为ANSI标准注释符:-,适用于单行另一种为多行注释符:/* */(2)、 变量:

25、语言中必不可少的组成部分。A:局部变量:用户自定的,仅在程序内部使用,引用时要在其名称前加上,而且必须用DECLARE定义后才可使用。设置完值为空,可用SELECT或SET语句定值。40一些附加的语言元素:40 例1:use 教师库DECLARE MY CHAR(10)SET MY=张红 -或者为select MY=张红SELECT * from 教师表 where 教师姓名=MY例2:USE PUBSGODECLARE STATE CHAR(2)SET STATE=CHINASELECT STATEB:全局变量:系统提供的。任何程序都可调用。以标记符开头,名称不要与局部变量相同,在服务器级定

26、义。41 例1:use 教师库B:全局变量:系统提供的。任何程序例1:Select getdate() as todays date and time, /*显示当前日期和时间为止试图登录服务器的次数。*/connections as login attempts例2:select version as 当前版本信息例3:print version - 与例2有什么区别?42例1:Select getdate() as today运算符 (1) 算术运算符:(2) 字符串运算符:(3) 位运算符:对二进制计算(4) 赋值运算符:只有一个;等号(5) 比较运算符:P34(6) 逻辑运算符:NOT

27、,AND,OR与其他不同的 是,前后不用两点 43运算符 43例:定义一个变量,int型,定值为2*(3+4),显示出来。Declare ddd intSet ddd=2*(3+4)Select ddd44例:定义一个变量,int型,定值为2*(3+4),显示出来。Transact SQL批处理及执行过程简介批处理是指从客户机传递到服务器上的一组完整的数据和SQL语句。使用GO关键字标识批处理的开始和结束。前后台方式下Transact SQL语句的执行过程示例45Transact SQL批处理及执行过程简介批处理是指从客户T-SQL的批处理及执行过程1、批处理:成批处理命令或语句。从客户机传递

28、到服务器的一组完整的数据和SQL语句,可以只有一条SQL语句,或者多条。用GO指令标识批处理结束。即一个批处理一次发给服务器一组SQL语句。46T-SQL的批处理及执行过程46例:use 教学库select * from 教师表;select 教师姓名,职称,系名 from 教师表,系表 where 教师go2、客户端执行过程:以批处理形式向服务器递交语句。4747服务器端的执行过程48服务器端的执行过程48六、SQL Server的主要数据类型在SQL Server中,数据类型通常是指字段列、存储过程和局部变量的数据特征。Varchar与char的区别(长度可变或固定)二进制数据类型(图片W

29、ord文件等)双字符类型类型(nchar,nvarchar,ntext)Timestamp数据类型(不是日期,也不是时间数据,而是SQL Server根据事件的发生次序自动生成的一种二进制数据,还可以代替传统的数据库加锁技术)。49六、SQL Server的主要数据类型在SQL Server数值数据类型、整数型:(1)bigint(2) int(3) smallint(4) tinyint、精确数值型、浮点型、货币数值型50数值数据类型50二、字符型、char类型、varchar类型、text类型三、日期时间型、datetime、samlldatetime51二、字符型51四、二进制数据类型、

30、binary、varbinary、image五、位型bit:只存储及逻辑型六、特殊数据类型、双字节数据类型:nchar nvarchar ntext 实际上是一种unicode(统一的字符编码标准,采用双字节对字符编码)数据类型。、时间戳数据类型:timestamp52四、二进制数据类型52第八章 SQL Server 数据库系统概述开始下一页SQL Server函数SQL Server的标识符及命名规则53第八章 SQL Server 数据库系统概述开始下一页5七、SQL Server函数数学函数字符串函数日期函数系统函数统计函数(重点)其他常用函数54七、SQL Server函数数学函数5

31、4函数格式:函数名()一、 数学函数 用于对数字表达式进行数学运算并返回结果。一般只对数值型数据类型操作。55函数格式:函数名()55二、 字符串函数 一般对字符型表达式操作。但也有例外。如 分类:见P:221页。表8-8例P:220 例8-2例:select 商品代号,len(商品代号) from 商品表1例:select left(教师姓名,1),count(*) from 教师表 group by left(教师姓名,1)例:select lower(substring(商品代号,1,3) as lower,upper(substring(商品代号,1,3)as upperFROM sp

32、k1where price between 11.0 and 20.0056二、 字符串函数 56例:declare strr varchar(60)set strr= efghijkselect abcd:+ltrim(strr) abcd:efghijkQ:若最后一行改为select abcd:+strr,输出结果abcd: efghijk57例:declare strr varchar(60)57例3:declare strr varchar(60)set strr=aBCDCDefghijkselect left(strr,6)aBCDCD例4:use pubsselect chari

33、ndex(wonderful,notes,5)from titleswhere title_id = TC32184758例3:declare strr varchar(60)58例5:declare na char(6)set na=01select * from 教师表 where 教师ID=reverse(na)例6:select stuff(abcdef33,2,4,ijklmn)aijklmnf33 (用后面的字符取代第一个字符第二个位置开始的四个字符)59例5:declare na char(6)59练习1:1、设变量ATC为1234 (后有三个空格),变量BTC为 5678(前有

34、三个空格),写出程序清单,要求显示出的结果为:12345678declare ATC char(7)declare BTC char(7)set ATC=1234 set BTC= 5678select rtrim(ATC)+ltrim(BTC)2、如1中的变量,要求显示的结果为87654321,写出程序清单。select reverse(rtrim(ATC)+ltrim(BTC)60练习1:603、如1中的变量,要求显示的结果为1256784,写出程序清单。select stuff(rtrim(ATC),3,1,ltrim(BTC)4、定义变量QWE为ABCD,AWE为EFGH,要求显示结果

35、为abcdefgh,写出程序清单。declare ATC char(4)declare BTC char(4)set ATC=ABCDset BTC=EFGHselect lower(ATC+BTC) 或者 select lower(ATC)+lower(BTC)613、如1中的变量,要求显示的结果为1256784,写出程5、如4中的变量,要求显示结果为ABgh,写出程序清单declare ATC char(4)declare BTC char(4)set ATC=ABCDset BTC=EFGHselect left(ATC,2)+lower(right(BTC,2)625、如4中的变量,要

36、求显示结果为ABgh,写出程序清单6日期和时间函数 分类:见P:222页。表8-9 例 8-3例1:use pubsselect datediff(day,pubdate,getdate() as no_of_daysfrom titles将dayn改为year或month都可以,当然意义与结果就不相同了。63日期和时间函数 63例2:select datename(year,getdate() as Year_name(年) select datename(qq,getdate() as Year_name(季度)select datename(hh,getdate() as Year_na

37、me(小时)例3、select datename(hh,getdate()+:+datename(mi,getdate() as Year_name当前的时间64例2:select datename(year,getdat系统函数 用于返回有关系统、用户、数据库和数据库对象的信息。例1、use masterselect dbid,db_name(dbid)from sysdatabasesorder by dbid -从系统表中返回当前服务器中所有的数据库编号与名字 例2、 select host_name() 返回机器名65系统函数 65转换函数 用于数据类型转换。一般情况下,SQLSERV

38、ER会自动处理某些数据类型的转换(隐性转换),但在某些情况下,转换不理想时,可用到转换函数。只有两个:CONVERT和CASTCAST:强制转换CONVERT:充许转换表达式和日期类型。课本P:224,例8-5例1:use pubsselect title,ytd_salesfrom titleswhere CAST(ytd_sales as char(20) like 15% and type=trad_cooklike:模式匹配操作符,只对字符串起作用,%的作用与DOS的*相似。66转换函数 66例2:use pubsselect titlefrom titleswhere title like C% 例3、select getdate()select USA=convert(char,getdate(),101)select ANSI=convert(char,getdate(),102)select ISO=convert(char,getdate(),112)67例2:use pubs67聚合函数及其他常用函数: 可能返回整个或几个列或一个列的汇总数据。例:select * from xscjbselect sum(ywen+sxue+yyu+tyu+zzhi) from

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论