欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > PPT文档下载  

    SQLServer数据库基础课程.ppt

    • 资源ID:242260       资源大小:3.40MB        全文页数:76页
    • 资源格式: PPT        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    SQLServer数据库基础课程.ppt

    SQL Server数据库基础课程,学习目标,掌握数据库相关基础知识掌握SQL Server的安装、管理、维护掌握简单的T-SQL语句会编写触发器、存储过程,数据库基础,什么是数据库数据库是指长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。从发展的历史看,数据库是数据管理的高级阶段,它是由文件管理系统发展起来的。数据库由数据库管理系统(DBMS)统一管理,数据的插入、修改和检索均要通过数据库管理系统进行。数据管理员(DBA)负责创建、监控和维护整个数据库。,数据库发展历史,1950年代:打孔机、穿孔卡片。“数据管理就是管理卡片”。顺序存储。1956年,IBM的磁盘驱动器、“2英寸盘”、“5M盘”。“随机文件存储”。1970年代,DBMS,数据库模型,层次网状关系关系模型是目前最为流行的一种数据模型,用二维表格结构表示实体集,关键码表示实体间的联系面向对象,常见数据库,AccessDB2Foxbase/FoxproInformixSQL ServerMySQLOracle,常用术语,关键码,超键在关系模式中,能唯一标识元组的属性集称为超键(Super Key)候选键如果一个属性集能唯一标识元组,且又不含有多于属性,那么这个属性集被称为候选键(Candidate Key)主键关系模式中用户正在使用的候选键称之为主键(Primary Key)外键如果关系模式R中某属性集是其他模式的候选键,那么该属性对模型R而言是外键,数据库对象,表:由行和列组成每列又称为一个字段,每列的标题称为字段名一行数据称为一个或一条记录,它表达有一定意义的信息组合一个数据库表由一条或多条记录组成,没有记录的表称为空表。每个表中通常都有一个主关键字(也叫主键),用于唯一地确定一条记录。主键不允许空值。不能存在具有相同的主键值的两个行,字段名,记录,主键,数据库对象,外键:存在于B表中的A表的主键,数据库对象,索引(Index)索引是根据指定的数据库表列建立起来的顺序。它提供了快速访问数据的途径,并且可监督表的数据,使其索引所指向的列中的数据不重复。视图(View)是一个虚拟的表,在数据库中并不实际存。视图是由查询数据库表产生的,视图可以用来控制用户对数据的访问,并能简化数据的显示,即通过视图只显示那些需要的数据信息。触发器(Trigger)触发器是一个用户定义的SQL事务命令的集合。当对一个表进行插入、更改、删除时,这组命令就会自动执行。存储过程(Stored Procedure)存储过程是为完成特定的功能而汇集在一起的一组SQL 程序语句,经编译后存储在数据库中的SQL 程序。,SQL Server 关系数据库简介,SQL Server是由Microsoft开发和推广的关系数据库管理系统,最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。SQL Server近年来不断更新版本:1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;2000年,SQL Server 2000推出;2005年,微软发布了SQL Server 20052008年,微软发布了最新的SQL Server 2008,SQL Server 常见版本,企业版(Enterprise Edition)标准版(Standard Edition)个人版(Personal Edition)开发者版(Developer Edition),安装、运行 SQL Server 2000 的软件需求,SQL Server 2000企业版必须运行于安装Windows NT Server Enterprise Edition 4.0或者Windows2000 Advanced Server以及更高版本的操作系统下。SQL Server 2000标准版必须运行于安装Windows NT Server Enterprise Edition 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以外的所有操作系统下。,SQL Server安装,SQL Server 系统数据库简介,Master数据库是SQL Server系统最重要的数据库,它记录了SQL Server系统的所有系统信息。这些系统信息包括所有的登录信息、系统设置信息、SQL Server的初始化信息和其它系统数据库及用户数据库的相关信息。Model数据库是所有用户数据库和Tempdb数据库的模板数据库,它含有Master数据库所有系统表的子集,这些系统数据库是每个用户定义数据库需要的。Msdb数据库是代理服务数据库,为其警报、任务调度和记录操作员的操作提供存储空间。Tempdb是一个临时数据库,默认大小是8M;它为所有的临时表、临时存储过程及其它临时操作提供存储空间。Pubs和Northwind数据库是两个示例数据库,SQL Server 系统表简介,1.sysobjects表SQL Server 的主系统表sysobjects出现在每个数据库中,它对每个数据库对象含有一行记录。2.syscolumns表系统表syscolumns出现在master数据库和每个用户自定义的数据库中,它对基表或者视图的每个列和存储过程中的每个参数含有一行记录。3.sysindexes表系统表sysindexes出现在master数据库和每个用户自定义的数据库中,它对每个索引和没有聚簇索引的每个表含有一行记录,它还对包括文本/图像数据的每个表含有一行记录。,SQL Server 系统表简介,4.sysusers表系统表sysusers出现在master数据库和每个用户自定义的数据库中,它对整个数据库中的每个Windows NT用户、Windows NT用户组、SQL Server 用户或者SQL Server 角色含有一行记录。5.sysdatabases表系统表sysdatabases对SQL Server 系统上的每个系统数据库和用户自定义的数据库含有一行记录,它只出现在master数据库中。6.sysdepends表系统表Sysdepends对表、视图和存储过程之间的每个依赖关系含有一行记录,它出现在master数据库和每个用户自定义的数据库中。7.sysconstraints表系统表sysconstraints对使用CREATE TABLE或者ALTER TABLE语句为数据库对象定义的每个完整性约束含有一行记录,它出现在master数据库和每个用户自定义的数据库中。,SQL Server 工具和实用程序,企业管理器服务管理器查询分析器事件探查器导入和导出数据联机帮助文档,企业管理器(Enterprise Manager),服务管理器(Service Manager Manager),查询分析器(Query Analyzer),事件探查器,导入和导出数据,联机帮助文档,注册一个新的数据库,链接服务器,备份数据库,还原数据库,分离数据库,附加数据库,数据库维护计划,生成数据库结构脚本,标准SQL语言,SQL(Structured Query Language)语言最早是由Boyce和Chamberlin在1974年提出,起初称之为SEQUEL(Structured English Query Language)。设计目的是为了便于对System R数据库系统存储数据进行操作。1986年ANSI批准SQL语言作为关系型数据库语言的标准,1987年ISO也通过了这一标准。目前,几乎所有的关系型数据库管理系统都支持SQL语言。,Transact-SQL语言,数据定义语言(DDL,Data Definition Language)包括创建数据库表结构、创建视图和创建表的索引,以及删除已经存在的表、视图和索引等。数据定义语句的SQL动词是CREATE,DROP和ALTER。数据操纵语言(DML,Data manipulation Language)主要用于创建数据库表后,查询、输入、删除和修改表中的数据。SQL动词是SELECT,INSERT,DELETE和UPDATE。数据控制语言(DCL,Data Control Language)包括数据库事务管理功能和数据保护功能,对数据库提供完整性约束控制,控制数据库的安全性;提供了多用户并发控制和恢复的功能,支持事务提交和回滚等。SQL动词是GRANT和REVOKE。系统存储过程(System Stored Procedure)存储过程是SQL语句和流程控制语句的预编译集合,是封装重复任务操作的方法。,SQLServer的对象命名约定,三段式名字标识对象:.前两者可以省略,数据库名默认是当前数据库,所有者默认式数据库的所有者dbo,如:Pubs.dbo.authorsNorthwind.dbo.scNorthwind.dbo.sc.grade,创建练习数据库和表,使用企业管理器添加数据库,创建练习数据库和表,使用企业管理器分别添加表(c,s,sc),创建练习数据库和表,使用企业管理器添加各个表的记录(c,s,sc),Select 语句,查询课程表,查询学生表查询课程表,只显示课程名和教师名,别名AS,使用别名是增加select语句的可读性,语法是:数据表名 as 数据表别名如:Select e.员工编号,e.员工姓名 from 员工表 as eSelect ame,p.teacher from c as p,Union,将两个或两个以上的查询结果合并为一个结果集,语法:Select 语句Union all Select 语句默认情况下,union将从最终结果集中删除重复的记录;如果希望保留所有记录,使用all关键字,条件查询,Select*from 表名 where 查询条件例如:Select*from s where sname=wang,模糊查询,Like关键字的提供使我们的模糊查询有了基础,Like关键字后提供了_下划线和%百分号这两种通配符。,多表查询-联接查询,Select*from s,sc得到一个非常大的结果集:s表和sc表的笛卡尔积 Select*from s,sc where s.s#=sc.s#Select*from s,sc,c where s.s#=sc.s#and c.c#=sc.c#Select sname,cname,grade from s,sc,c where s.s#=sc.s#and c.c#=sc.c#查询参加了缺陷管理课程考试的同学:Select sname from s,sc,c where s.s#=sc.s#and c.c#=sc.c#and cname=缺陷管理,多表查询-嵌套查询,查询wang同学的考试成绩:Select*from sc where s#=(select s#from s where sname=wang)查询参加了缺陷管理课程考试的同学:Select*from sc where c#=(select c#from c where cname=缺陷管理)Select sname from s where s#in(Select s#from sc where c#=(select c#from c where cname=缺陷管理),联接查询 vs.嵌套查询,Group by,Select sex from s group by sexSelect count(*),sex from s group by sexSelect sname,sum(grade),count(*)from s,sc where s.s#=sc.s#group by sname,Having,帮助我们对需要分组的数据做一个过滤,例如:Select sname,sum(grade),count(*)from s,sc where s.s#=sc.s#group by sname having snamechen这样我们就可以把chen的记录过滤掉,Order by,ORDER BY是一个可选的子句,它允许你根据指定要order by的列来以上升或者下降的顺序来显示查询的结果。例如:ASC=Ascending Order 这个是缺省的DESC=Descending Order Select*from sc order by grade descSelect top 3*from sc order by grade desc,Join,内联接(INNER JOIN)左联接(LEFT JOIN)右联接(RIGHT JOIN)全联接(FULL JOIN),内联接(INNER JOIN),内联接会返回两个表中所匹配的所有的行。假如 Employees 中的某些行与 Orders 中的行不匹配,那些行就不会被列出来。,左联接(LEFT JOIN),左联接会从第一个表(Employees)那里返回所有的行,即使在第二个表(Orders)中没有匹配的行。假如 Employees 中的某些行没有在 Orders 中可匹配的行,这些行也会被列出来。,右联接(RIGHT JOIN),右联接会从第二个表格(Orders)那里返回所有的行,即使在第一个表格中没有可匹配的行。假如 Orders 中的某些行没有在 Employees 可匹配的行,那些行也会被列出。,全联接(FULL JOIN),全联接会从两个表格(Orders)那里返回所有的行,即使在第一个表格或第二个中没有可匹配的行。,Insert语句,INSERT INTO s(s#,sname,age,sex)VALUES(S101,jiang,39,M)Insert into student(s#,sname,age,sex)select s#,sname,age,sex from s,Delete语句,DELETE FROM studentdelete from student where sname=jiang,Update 语句,UPDATE student SET sname=chennengji WHERE sname=chen and age=22UPDATE student SET age=age+1 WHERE sname=chennengji,事务,事务是单个的工作单元。如果某一事务成功,则在该事务中进行的所有数据更改均会提交,成为数据库中的永久组成部分。如果事务遇到错误且必须取消或回滚,则所有数据更改均被清除。事务操作的语法:BEGIN TRANSACTIONCOMMIT TRANSACTIONROLLBACK TRANSACTIONSAVE TRANSACTION,表设计,主键,表中经常有一个列或列的组合,其值能唯一地标识表中的每一行。这样的一列或多列称为表的主键,通过它可强制表的实体完整性。,Unique约束,可使用 UNIQUE 约束确保在非主键列中不输入重复值。,Check约束,默认值、用户定义的数据类型,外键,关系图,视图(View)设计,存储过程设计,在查询分析器中编写存储过程,创建存储过程:if EXISTS(select*from sysobjects where name=mypro and type=p)DROP proc mypro GOCREATE proc myprox varchar(20),y varchar(20)outputASSET y=x+worldGO,执行存储过程:Declare z varchar(40)Exec mypro hello,z outputPrint z,触发器,触发器是一种特殊类型的存储过程,它不同于前面介绍过的存储过程。触发器主要是通过事件进行触发而被执行的,而存储过程可以通过存储过程名称而被直接调用。触发器是一个功能强大的工具,它使每个站点可以在有数据修改时自动强制执行其业务规则。触发器可以用于SQL Server 约束、默认值和规则的完整性检查。,触发器,CREATE TRIGGER TRIGGER NAME ON 表名FOR INSERT,UPDATE,DELETE AS,索引(Index),数据库中的索引与书籍中的索引类似,在一本书中,利用索引可以快速查找所需信息,无须阅读整本书。在数据库中,索引使数据库程序无须对整个表进行扫描,就可以在其中找到所需数据。书中的索引是一个词语列表,其中注明了包含各个词的页码。而数据库中的索引是某个表中一列或者若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。,聚集索引与非聚集索引,聚集索引对表的物理数据页中的数据按列进行排序,然后再重新存储到磁盘上,即聚集索引与数据是混为一体的,它的叶节点中存储的是实际的数据。一个表只能建立一个聚集索引。非聚集索引具有完全独立于数据行的结构,使用非聚集索引不用将物理数据页中的数据按列排序。非聚集索引的叶节点存储了组成非聚集索引的关键字值和行定位器;一个表可以创建多个非聚集索引。,创建索引,

    注意事项

    本文(SQLServer数据库基础课程.ppt)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开