




已阅读5页,还剩72页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第 1 页数据库与应用讲义进度一、 本人介绍教务处工作。二、 本门课程将要学习的内容和选择此内容学习的理由以目前应用广泛的网络数据库系统 SQL Server2000 为基础,结合数据库系统的管理与应用系统的开发两个方面,介绍网络数据库的基本概念和基本技术手段,使学生掌握在网络环境下管理数据库和开发数据库应用系统的方法。三、 考核1. 课前考核+课堂实践+考试;2. 成绩的组成:各堂课动态点名成绩+动态学习测试成绩+加提问成绩+期末考试成绩;3. 课堂教学采用以实践教学为主加辅助理论教学的方式进行循序渐进学习。 四、 教材(参考)1. 逮艳玲 戴红.网络数据库技术(第二版).电子工业出版社.2009, (8) 2. 萨师煊 王珊.数据库系统概论.高等教育出版社.2001,(1)3. 曾大军.SQL 数据库原理及应用(第二版).人民邮电出版社.2008, (7)4. 赵子江 王丹.数据库原理与 SQL Server 应用.机械工业出版社.2006,(9)5. 陈志泊 李冬梅.数据库原理及应用教程.人民邮电出版社.2006,(7)6高怡新.ASP 网络应用程序设计. 人民邮电出版社.2005, (7)7骆晓勇.中文 FrontPage2000 中级教程. 机械工业出版社.1999,(12)8曾大军.SQL 数据库原理及应用(第二版).人民邮电出版社.2008, (7)9. ASP 相关教程;10. 内容相关的各类电子教程。五、 教学要求1. 每人最好备有一个优盘2. 不准迟到和早退;3. 课堂不准开手机和交谈;4. 以参加每次测试考核的总评成绩作为期末就考试成绩;5. 坚持自觉学习,坚持课后主动上机实践。六、教学周历第 2 页第一章 数据库系统概述与基本知识【基本要求】一、掌握什么是数据库和数据库的组成。二、掌握关系数据库的特点。三、了解运用 E-R 模型描述现实世界的方法。【参考学时】3 学时第二章 数据库和表的创建与管理【基本要求】一、掌握数据库的创建、修改和存储方法。二、掌握表的创建和修改方法。三、掌握表内容的删除和更新方法。【参考学时】1+2 学时第三章 查询和视图【基本要求】一、熟练掌握查询的各种方法。二、掌握常用的统计方法。三、掌握视图的创建和修改方法。【参考学时】7+5 学时第四章 T-SQL 语言【基本要求】一、熟练掌握运算符和表达式的应用。二、掌握常用函数的应用方法。【参考学时】2+4 学时第五章 数据库维护【基本要求】一、掌握索引的设置方法。二、掌握数据导入、导出方法。【参考学时】1+2 学时第六章 IIS 和网页语言第一节 IIS 设置第二节 html 语言应用第三节 VBScript 语言应用第四节 ASP 对象与应用第 3 页【基本要求】一、掌握 IIS 的设置方法。二、掌握 VBScript 的使用方法。三、了解 html 语言的使用方法。【参考学时】2+4 学时第七章 数据库的 ADO 应用第一节 数据库访问 第二节 应用【基本要求】一、熟练掌握数据库的访问方法。二、掌握数据库在网页上的应用方法。【参考学时】5+4 学时红色为举例、黄色为着重词组、绿色为重点应用第一章 数据库系统概述与基本知识【基本要求】一、掌握什么是数据库和数据库的组成。二、掌握关系数据库的特点。三、了解运用 E-R 模型描述现实世界的方法。【参考学时】3 学时第一节 数据库概述生活中和数据有关,并为计算机所处理的数据应用,例如:学籍管理、成绩管理、教学计划管理、各类报名系统、售票系统、收银系统、选课系统、地铁运行监控系统、所有动态网站、个人信息管理等。现代社会是信息社会,信息在现代社会和经济发展中所起的作用越来越大,信息资源的开发和利用水平已成为衡量一个国家综合国力的重要标志之一。在计算机的三大主要应用领域(科学计算、数据处理和过程控制)中,数据处理是计算机应用的主要方面。数据库技术就是在研究数据处理的过程中逐渐建立起来的技术。数据库技术:就是如何科学高效地获取、组织、存储和处理数据。数据库技术产生于20 世纪 60 年代末 70 年代初,其主要目的是有效地管理和存取大量的数据资源。数据库技术涉及到许多基本概念,主要包括:数据、数据处理、数据库、数据库管理系统以及数据库系统等。 第 4 页一、数据:是对客观事物的一种描述,信息的表现形式和载体,包括数字、字母、文字和其他特殊字符组成的文本形式,而且还包括图形、图像、动画、影像、声音(包括语音、音乐)等多媒体数据。例如:身高 178、体重 78kg、速度 500km/h、生日等二、数据处理是指对各种形式的数据进行收集、存储、加工和传播的一系列活动的总和。(一)数据管理是数据处理的核心问题,包括对数据的分类、组织、编码、存储、检索和维护等。例如:学生、成绩、课程等均可以转化成一系列的数据。(二)数据管理技术的发展历程人工管理阶段:(如同 word 编辑的数据表格)数据不保存在机器中,无外存。)没有专用软件对数据进行管理,应用程序中不仅要规定数据的逻辑结构,而且要设计物理结构。)数据不共享,即数据面向应用,一组数据对应一个程序,也就是说当相同的一组数据被多个应用程序用到时,需要在各自的程序中重复定义。例如:针对课程数据可以:查询总体开课情况、查询上课时间和地点、查看任课教师、查看教室等。应用程序A1应用程序A2应用程序An数据集S1数据集S2数据集Sn 文件系统阶段(如同 c 语言编写的一个独立管理数据的小程序)数据以文件形式长期保存在磁盘等介质上。)由专门的软件对数据进行管理,程序和数据从物理上分开。)数据不再属于某个特定程序,可以重复使用。缺点:数据共享性差,导致冗余度大,数据不一致,联系弱。第 5 页数据库系统 DBS:是统称,在计算机硬、软件系统支持下,由四部分组成:数据数据库 DB、数据库管理系统 DBMS、数据库应用程序和各类用户(终端用户应用人员、程序员开发人员、数据库管理员负责运转DBA) 。1)数据库系统 DBS 组成图:数据库管理员、终端用户、开发人员数据库应用系统数据库管理系统操作系统硬件应用程序A1应用程序A2应用程序An数据库数据库管理系统在计算机系统内的包含关系 数据库系统的组成之间的关系2)数据库系统 DBS 的特点 数据结构化。能形象的描述事物,并便于管理和输入输出;如成绩单,户口 有较高的数据独立性。 不会因为用户应用程序的改变而改变;不因地点和环境的改变而改变 实现数据的共享。可以多用户同时存取而不互相影响;web 冗余度低。 没有多余的数据,如除学号以外的个人信息等。 统一控制,保证数据的可靠性。数据统一由数据库管理系统管理,只有一个物理备份,不会出现访问时出现不同值。 加强了对数据的保护。3)数据库(DB):存放数据的仓库,是相互有关联的数据元素的集合。数据库的条件为:应用程序A1应用程序A2应用程序An数据集S1数据集S2数据集Sn文件系统 第 6 页 要有大容量硬件存储器; 数据必须按一定的格式存放,便于存放和查找; 可以充分共享; 较小的冗余度; 较高的数据独立性,数据结构的变化不影响应用的变化; 易扩展,随需求而变化。4) 数据库管理系统(DataBase Management System,简称 DBMS):是计算机系统软件,是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问 DB 的方法,包括 DB 的建立、查询、更新及各种数据控制。例如:Foxpro、access、Oracle、SQL server、Sybase 等。 DBMS 的三个功能: 数据定义:如对数据库、表、索引进行定义; 数据操纵:如对表中数据的查询、插入、删除和修改; 数据库控制:是 DBMS 的核心部分,它包括并发控制(即处理多个用户同时使用某些数据时可能产生的问题) 、安全性检查、完整性约束条件的检查和执行、数据恢复等。例如: Foxpro、access、 Oracle、SQL server 等。第二节 数据模型和关系数据库引言:要将现实世界的信息转化为计算机世界的数据实现的最好途径就是采用数据模拟-数据模型来转化。一、实物模拟的必要性:航模、大坝、长江三峡、码头都有具体的实物模型,它们是对即将建造的实物进行模拟,通过试验测试来发现不足并进行方案修改,使实物更接近设计要求的水平,达到方案最优。同样,人们也可以用抽象的模型来描述事物及事物运动的规律。这里讨论的概念数据模型就是这一类模型,它是用实际事物的特征数据来刻画事物,描述事物的特性,并独立于计算机系统的模型,它不涉及信息在系统中的表示,只是用来描述某个特定组织的概念化结构。 二、数据模型的种类:(一)层次模型:是一棵倒立的树。在数据库中,满足以下两个条件的数据模型称为层第 7 页次模型:1有且仅有一个结点无父结点,这个结点称为根结点;2其他结点有且仅有一个父结点。R1R2 R3R4 R5层次模型对具有一对多层次关系的描述非常自然、直观、容易理解,这是层次数据库的突出优点。但结构比较复杂、用户不易掌握、数据存取操作必须按照模型结构中已定义好的存取路径进行、操作比较复杂、不易扩展等缺点。层次模型具有局限性,不能描述所有事务,很有局限性。(二)网状模型:是一个网络。在数据库中,满足以下两个条件的数据模型称为网状模型:1允许一个以上的结点无父结点;2一个结点可以有多于一个的父结点。R1 R2R4 R5R3L3L4L5L2L1结构比较复杂、数据存取操作必须按照模型结构中已定义好的存取路径进行、操作比较复杂等缺点。(三)关系模型:数据的逻辑结构是一张二维表(化整为零) 。满足下列条件的二维表称为关系模型:1每一列中的分量是类型相同的数据;2列的顺序可以是任意的;3行的顺序可以是任意的;4表中的分量是不可再分割的最小数据项,即表中不允许有子表;第 8 页5表中的任意两行不能完全相同。6关系模式通常简记为:关系名(属性名 1,属性名 2,属性名 n)例如:学生基本情况表的关系模式可记为: Student(sid,Name,xb,Birthday,.)选课结果表 Coursetable 可以标记为:Coursetable(SID、CID、TYPE、XK_TIME、PRIORITY、COIN、RANDOM、POINT、RESULT、MIANTING)三、关系模型转化为数据库的基础- E-R 模型(一)E-R 模型:将客观世界的事务用关系模型来表示,如学生、教师、课程等元组(穷尽每种可能) 。学生(学号、姓名、性别、家庭住址)教师(编号、姓名、性别、家庭住址)课程(编号、课程名称、任课教师.)Coursetable(SID、CID、TYPE、XK_TIME、PRIORITY、COIN、RANDOM、POINT、RESULT、MIANTING)(二)E-R 图-三峡枢纽(三)转化为多个关系表-二维表SID CID TYPE XK_TIME PRIORITY COIN RANDOM POINT RESULT20064404 29709 斟酌退课 2007-12-14 9:58 40 50 72754 22 120064404 29711 斟酌退课 2007-12-14 9:58 40 50 72549 26 120064404 30859 必修课程 2007-12-13 16:51 60 0 71729 112 120064404 30869 必修课程 2007-12-13 16:52 60 50 72779 121 1第 9 页20064404 36027 公共必修 2008-6-13 100 0 94359 21 120064404 36202 公共选修 2008-6-24 21:15 0 0 0 1 1四、关系数据库:采用关系模型作为数据的组织方式建立起来的数据库。 (一)二维表在关系数据库中就称为关系,简称表; (二)关系数据库就是表(或者说是关系)的集合;(三)表是对物理存储的数据的一种抽象表示(是逻辑的,不是物理的) ;(四)二维表中垂直方向的列称为属性,也叫字段;属性的取值范围叫做域;(属性一定是最简化,原子的,不可再分,保证最小冗余(所描述信息不在其他表中重复描述)),同一关系表中不能出现相同的属性名;属性之间存在无关性;(五)二维表中水平方向的行称为元组,也叫记录;(不允许出现相同的元组【记录】 );远足之间存在无关性;(六)键:1关键字:能够唯一确定记录的字段或字段的集合。举例:学生(学号【sid】 、姓名、性别、家庭住址)教师(教师编号【teacher_id】 、姓名、性别、家庭住址)课程(课程编号【cid】 、课程名称、教师编号.)部门(部门代码、部门名称、工作性质、工作地点)Coursetable(SID、CID、TYPE、XK_TIME、PRIORITY、COIN、RANDOM、POINT、RESULT、MIANTING)2主键(pk):一个关系中(多个)键,选出一个来定义为主键,其他键称为候补键。例如:在一个表中既有个人编号又有身份证号,或学号和身份证号。3外键(fk):一个关系中一个属性(集) ,若不是本关系的主键,但它的值引用了其他关系中主键的值,则这样的属性(集)称为本关系的外键。例如:Coursetable(sid,cid,type,xk_time,priority,result)例如:教师(教师编号、姓名、性别、家庭住址、所在部门代码)五、关系的完整性:即关系中的数据及具有关联关系的数据间必须遵循的制约和依存关系,以保证数据的正确性、有效性和相容性。(一)域完整性:是对数据表中字段属性的约束,它包括字段的值域、字段的类型及字段的有效规则等约束,它是由确定关系结构时所定义的字段的属性决定的。-要有意义第 10 页例如:如:年龄、性别(二)实体完整性:是指关系中的主属性值不能为 Null,且不能有相同值。-失去主键的实体现实中是不存在的例如:如:学号、教师编号(三)参照完整性:是对关系数据库中建立关联关系的数据表间数据参照引用的约束,也就是对外键的约束。准确地说,参照完整性是指关系中的外键必须是另一个关系的主键有效值,或者是 NULL。例如:领导的职务编号在个人表中的信息,要么是键值,要么是空,不能是任意的。a) 举例: sql 数据库中,个人的职称编号【复习题】1 数据模型是将概念模型中的实体及实体间的联系表示成便于计算机处理的一种形式。数据模型一般关系有关系模型、层次模型和网状模型。2 数据库 DB、数据库系统 DBS 和数据库管理系统 DBMS 之间的关系是 DBS 包括 DB 和 DBMS。3 现实世界中的事物,在计算机世界可以表示为关系模型中的记录。4 数据库系统的核心是数据库管理系统 DBMS5 在同一关系中不能出现相同的属性(列,或字段)6 字段是数据库的最小逻辑单位。7 识别主键、外键;8 数据库管理系统的功能;什么是控制功能?9 数据库系统的特点?10 数据库的条件?11 关系是指()(A) 表中各条记录彼此有一定的关系(B) 表中各个字段彼此有一定关系(C) 一个表与另一个表之间有一定关系(D) 数据模型满足一定条件的二维表格式 412 现实世界中的事务(对象或个体) ,在数据世界中则表示为()(A) 记录(B) 文件(C) 数据项(D) 数据表 113 将一个关系数据库文件中的个条记录任意调换位置将不会影响库中的数据关系。14 对于现实世界中事务的特征,在实体-联系模型中使用( )(A) 属性描述(B) 关键字描述(C) 二维表格描述(D) 实体描述 115. 教室资源表(教室编号、楼号、教室号、容纳人数、类型编号)主键是:教室编号外键是:类型编号第 11 页教室类型表(类型编号、类型名称)主键是:类型编号外键是:没有16. 选课结果表(课程编号、学号、时间、排名、积分、选课类型)主键是:课程编号、学号外键是:课程编号和学号17. 自己列举两个相互有关联的例子,分别有两个字段以上,并写出主键和外键:水文局职工表(人员编号、姓名、性别、部门编号)主键是:人员编号外键是:部门编号水文局部门信息表(部门编号、部门名称、电话、地址、业务信息、负责人编号)主键是:部门编号外键是:负责人编号下节课预习内容:=第二教学周第二章 数据库和表的创建与管理【基本要求】一、掌握数据库的创建、修改和存储方法。二、掌握表的创建和修改方法。三、掌握表内容的删除和更新方法。【参考学时】1 学时第一节 认识 sql server 2000一、Server 2000 的版本与合适的操作系统企业版(Enterprise Edition):支持所有的 SQL Server 2000 特性,可作为大型Web 站点、企业以及数据仓库系统的数据库服务器标准版(Standard Edition):用于小型的工作组或部门个人版(Personal Edition):用于单机系统或客户机开发者版(Developer Edition):用于程序员开发应用程序。操作系统 Enterprise Standard Personal Developer第 12 页Windows 2000 Advanced Server Y Y Y YWindows 2000 Server N Y Y YWindows 2000 Professional/ Windows xp N N Y Y二、SQL Server 客户端组件1.企业管理器(Enterprise Manager)1)SQL Server 中最重要的管理工具,使用 SQL Server 过程中大部分时间都在同它打交道。 对 SQL Server 服务器进行管理 集成各种管理工具,使 DBA 可管理所有数据库、数据库对象、用户登录和许可、复制、安全性、调度任务、生成 Web 标签、生成 SQL 脚本及其它2) 查询分析器( Query Analyzer) 执行 T-SQL 命令等 SQL Scripts(SQL 脚本) 、程序,以查询分析或处理数据库中的数据。 使用查询分析器的熟练程度是衡量一个 SQL Server 用户水平的标准三、SQL Server 主要管理工具和向导1. 服务管理器(Service Manager):用于启动暂停或停止数据库服务2. 事件探查器(SQL Server Profiler):用于监督记录和检查 SQL Server 数据库的使用情况,对于 DBA 它是一个监视用户活动的间谍3. 客户端网络实用工具(Client Network Utility):用于配置客户端的连接,测定网络库的版本信息以及设定本地数据库的相关选项4. 服务器端网络实用工具( Server Network Utility):用于配置服务器端的连接,测定网络库的版本信息5. SQL Server 管理向导:帮助完成导入/导出数据(Import and Export Data) 、创建数据库维护计划、配置复制等复杂管理工作四、启动服务管理器和企业管理器五、注册服务器(本地和远程)在安装 SQL Server 2000 时,将创建四个系统数据库:master、model、msdb 和tempdb。(1)master 包含了 SQL Server 诸如登录账号、系统配置、数据库位置及数据库错误信息等,用于控制用户数据库和 SQL Server 的运行。(2)model 数据库为新创建的数据库提供模板。第 13 页(3)msdb 为 SQL Server Agent 调度信息和作业记录提供存储空间。(4)tempdb 为临时表和临时存储过程提供存储空间,所有与系统连接的用户的临时表和临时存储过程都存储于该数据库中。=第二节 SQL Server 基本概念一、 创建、删除数据库二、逻辑数据库SQL Server 2000 数据库是存储数据的容器,是一个存放数据的表和支持这些数据的存储、检索、安全性和完整性的逻辑成分所组成的集合。 1完全限定名:完全限定名是对象的全名,包括四个部分:服务器名、数据库名、所有者名和对象名,其格式为:server.database.owner.object,如|:SELECT *FROM 20100403-1332.cet.dbo.aa在 SQL Server 2000 上创建的每个对象都必须有一个唯一的完全限定名。2部分限定名:在使用 T-SQL 编程时,使用全名往往很繁琐且没有必要,所以常省略全名中的某些部分,对象全名的四个部分中的前三个部分均可以被省略,当省略中间的部分时,圆点符“.”不可省略。在部分限定名中,未指出的部分使用以下默认值:服务器:默认为本地服务器。数据库:默认为当前数据库。所有者:默认为在数据库中与当前连接会话的登录标识相关联的数据库用户名,或者数据库所有者(dbo ) 。三、物理数据库-文件SQL Server 2000 使用一组操作系统文件来存储数据库的各种逻辑成分,包括三类文件:(1)主数据文件:主数据文件简称主文件,正如其名字所示,该文件是数据库的关键文件,包含了数据库的启动信息,并且存储数据。每个数据库必须有且仅能有一个主文件,其默认扩展名为.MDF。(2)辅助数据文件:辅助数据文件简称辅(助)文件,用于存储未包括在主文件内的其他数据。辅助文件的默认扩展名为.NDF。 (3)日志文件:日志文件用于保存恢复数据库所需的事务日志信息。每个数据库至少有一个日志文件,也可以有多个。日志文件的扩展名为.LDF。四、表 二维表1. 表结构:每个数据库包含了若干个表。每个表具有一定的结构,即组成表的各列的第 14 页名称及数据类型。2. 记录:每个表包含了若干行数据,它们是表的“值” ,表中的一行称为一个记录(Record),因此,表是记录的有限集合。3. 字段:每个记录由若干个数据项(实体的属性)构成,将构成记录的每个数据项称为字段(Field)。4. 关键字5表的创建和修改6. 数据类型(1)整数型整数包括 bigint、int、smallint 和 tinyint,从标识符的含义就可以看出,它们的表示数范围逐渐缩小。 bigint:大整数,数范围为 -263 (-9223372036854775808)263-1 (9223372036854775807) ,其精度为 19,小数位数为 0,长度为 8 字节。 int:整数,数范围为 -231 (-2,147,483,648) 231 - 1 (2,147,483,647) ,其精度为 10,小数位数为 0,长度为 4 字节。 smallint:短整数,数范围为 -215 (-32768) 215 - 1 (32767) ,其精度为5,小数位数为 0,长度为 2 字节。 tinyint:微短整数,数范围为 0255,长度为 1 字节,其精度为 3,小数位数为0,长度为 1 字节。 (2) 精确整数型decimal 和 numeric 可存储从 -1038 +1 到 1038 1 的固定精度和小数位的数字数据,它们的存储长度随精度变化而变化,最少为 5 字节,最多为 17 字节。 精度为 19 时,存储字节长度为 5; 精度为 1019 时,存储字节长度为 9; 精度为 2028 时,存储字节长度为 13; 精度为 2938 时,存储字节长度为 17。(3) 浮点型 real:使用 4 字节存储数据,表数范围为-3.40E + 38 到 3.40E + 38,数据精度为 7 位有效数字。 float:定义中的 n 取值范围是 153,用于指示其精度和存储大小。 (4) 货币型 第 15 页 money:数据的数范围为-263 (-922337203685477.5808)263-1 (922337203685477.5807) ,其精度为 19,小数位数为 4,长度为 8 字节。 smallmoney:数范围为 231 (-2,147,48.3648) 231 - 1 (2,147,48.3647) ,其精度为 10,小数位数为 4,长度为 4 字节。(5) 位型:SQL Server 中的位(bit)型数据相当于其他语言中的逻辑型数据,它只存储 0和 1,长度为一个字节。 (6) 字符型:字符型数据用于存储字符串,字符串中可包括字母、数字和其它特殊符号(如#、&等等) 。SQL Server 字符型包括两类:固定长度 (char) 或可变长度 (varchar) 字符数据类型。 (7) Unicode 字符型Unicode 是“统一字符编码标准” ,用于支持国际上非英语语种的字符数据的存储和处理。 nchar(n):nchar(n)为包含 n 个字符的固定长度 Unicode 字符型数据,n 的值在 1 与 4,000 之间,缺省为 1。长度为 2n 字节。若输入的字符串长度不足 n,将以空白字符补足。 nvarchar(n):nvarchar(n)为最多包含 n 个字符的可变长度 Unicode 字符型数据,n 的值在 1 与 4,000 之间,缺省为 1。(8) 文本型文本型包括 text 和 ntext 两类,分别对应 ASCII 字符和 Unicode 字符。 text 类型可以表示最大长度为 231-1 (2,147,483,647) 个字符,其数据的存储长度为实际字符数个字节。ntext 可表示最大长度为 230 - 1 (1,073,741,823) 个 Unicode 字符,其数据的存储长度是实际字符个数的两倍(以字节为单位) 。 (9) 二进制型 binary (n) :固定长度的 n 个字节二进制数据。n 取值范围为 1 到 8,000,缺省为 1。 varbinary (n) :n 个字节变长二进制数据。n 取值范围为 1 到 8,000,缺省为1。varbinary(n)数据的存储长度为实际输入数据长度+4 个字节。 (10) 日期时间类型datetime 类型数据长度为 8 字节,日期和时间分别使用 4 个字节存储。 (11) 时间戳型标识符是 timestamp。若创建表时定义一个列的数据类型为时间戳类型,那么每当对该表加第 16 页入新行或修改已有行时,都由系统自动将一个计数器值加到该列,即将原来的时间戳值加上一个增量。7. 空值(NULL)概念:空值通常表示未知、不可用或将在以后添加的数据。8. 列的 identity(标识)属性:对任何表都可创建包含系统所生成序号值的一个标识列,该序号值唯一标识表中的一行,可以作为键值。五、 表的创建、修改和删除1表的末尾插入记录2修改记录值3记录的删除4指定记录(属性或字段)的显示5显示顺序6别名显示7表的删除第三节 数据库的分离、附加、备份和还原一、数据库分离与附加注意操作界面的内容二、数据库备份与还原注意操作界面的内容【复习题】1关系模型的数据结构是() DA.树 B.图 C.表 D.二维表2.记录 SQL Server 的初始化信息的数据库是() AA.master B.model C.msdb D.tempdb3.为用户提供模板和原型的数据库是() BA.master B.model C.msdb D.tempdb4.供 SQL Server 代理程序调度警报和作业以及记录操作员时使用的数据库是() CA.master B.model C.msdb D.tempdb5.在用户通过登录认证并被允许登录到 SQL Server 上之后,必须拥有() AA.数据库账号 B.登录账号 C.认证账号 D.密码账号6.包含数据库的启动信息的文件是() AA.主要数据文件 B.非主要数据文件 C.次要数据文件 D.事务日志7.数据库中已发生的所有修改和执行每次修改的事务的一连串记录是() CA.数据文件 B.主要数据文件 C.事务日志 D. 次要数据文件8.打开并切换数据库的命令是() BA.open B.use C.put D.catch第 17 页9.删除数据库的命令是() AA.DROP DATABASE B.USE DATABASEC.CLOSE DATABASE D.OPEN DATABASE10.从表中删除一行或多行记录的语句是() AA.DELETE B.UPDATE C.DROP D.INSERT11.dbo 代表的是() AA.数据库拥有者 B.用户 C.系统管理员 D.系统分析员12.防止数据库出现意外的有效方法是() CA.重建 B.追加 C.备份 D.删除13.可以通过还原数据库只用一步即完成从数据库备份重新创建整个数据库的方式是() AA.数据库备份 B.日志备份 C.差异备份 D.文件备份14.只记录自上次数据库备份后发生更改的数据的方式是() CA.数据库备份 B.日志备份 C.差异备份 D.文件备份15.主数据库文件的默认扩展名是() BAdbt B mdf Cdat Ddst16、字符型数据定义中的 char(n)和 varchar(n)有什么区别?1、char(n),不管输入的字符数是多少,其存储大小均为 n。 2、varchar(n),列的存储大小不是固定的,输入多少字符就分配多少空间。 3、一般来说,char 型要比 varchar 型查询速度快。17. 在数据表中,_是描述事物的属性。(字段)18. 在 SQL Server 数据库中, _是最基本的单位。(表格)19. 以自己的名字加学号在 D 盘建立一个数据库,并以第 1 题自己举得例子建立两个表,同时输入若干标准数据。然后备份,备份的名称是学号,再将数据库分离=第三章 查询和视图【基本要求】一、熟练掌握查询的各种方法。二、掌握常用的统计方法。三、掌握视图的创建和修改方法。【参考学时】7 学时第一节 选择、投影和连接一、选择:运算对象是一个表。按给定的条件,从表中选出满足条件的行形成一个新表作为运算结果。【例】学生情况表如表所示。学 号 姓 名 专业名 性别 出生时间 总学分 备注20101101 王林 计算机 男 1980-02-10 5020101102 程明 计算机 男 1981-02-01 5020101103 王燕 计算机 女 1979-10-06 50第 18 页按性别=“女” ,选择运算结果如表下所示。学 号 姓 名 专业名 性别 出生时间 总学分 备注20101103 王燕 计算机 女 1979-10-06 50二、投影:从表中选出指定的属性值组成一个新表。【例】若在中对学号、姓名和总学分投影,运算式为:学 号 姓 名 总学分20101101 王林 5020101102 程明 5020101103 王燕 50三、连接:按照给定的条件,对两个表进行相连,形成新表。表 1cid 课程名称 任课教师 授课学院59421 专业导论 1040051 10459418 工程制图 1040039 10459416 工程制图 1040039 10459410 工程制图 1040039 10459411 专业导论 1040022 104表 2教师编号 教师姓名 部门名称 1 职称名称1190025 曹立文 机电工程学院 副教授1040051 戴长雷 水利电力学院 讲师1040039 丁晖 水利电力学院 讲师1040022 孔达 水利电力学院 副教授按照:任课教师=教师编号连接:cid 课程名称 任课教师 授课学院 教师编号 教师姓名 部门名称 1 职称名称59421 专业导论 1040051 104 1040051 戴长雷 水利电力学院 讲师59418 工程制图 1040039 104 1040039 丁晖 水利电力学院 讲师59416 工程制图 1040039 104 1040039 丁晖 水利电力学院 讲师59410 工程制图 1040039 104 1040039 丁晖 水利电力学院 讲师59411 专业导论 1040022 104 1040022 孔达 水利电力学院 副教授第二节 查询和统计SELECT /*指定要选择的列或行及其限定*/INTO /*INTO 子句,指定结果存入新表*/FROM /*FROM 子句,指定表或视图*/WHERE /*WHERE 子句,指定查询条件*/GROUP BY /*GROUP BY 子句,指定分组表达式*/第 19 页HAVING /*HAVING 子句,指定分组统计条件*/ORDER BY ASC|DESC /*ORDER 子句,指定排序表达式和顺序*/一、列查询(投影)1 查询表中指定的列【例】SELECT 教师编号, 教师姓名, 部门名称 1, 职称名称FROM 教师信息表或选择所有列:【例】SELECT *FROM 教师信息表指定条件的选择:【例】SELECT 教师编号, 教师姓名, 部门名称 1, 职称名称FROM 教师信息表WHERE (部门名称 1 = 水利电力学院)2 修改查询结果中的列标题【例】SELECT 教师编号 AS id, 教师姓名 AS name, 部门名称 1 AS bm, 职称名称FROM 教师信息表WHERE (部门名称 1 = 水利电力学院)3 替换查询结果中的数据用表达式:CASE WHEN 条件 1 THEN 表达式 1 WHEN 条件 2 THEN 表达式 2ELSE 表达式END如:【例】SELECT 学号, 课程编号, CASE WHEN 成绩 = 90 THEN 优 WHEN 成绩 = 80 THEN 良 WHEN 成绩 = 70 THEN 中 WHEN 成绩 = 60 THEN 及格 第 20 页ELSE 不及格END AS 成绩, 成绩 AS 成绩 1FROM 成绩表4 形成新的列1)固定相等新值【例】SELECT 学号, 课程编号, 2009-1 学期 AS 学期FROM 成绩表2)函数值【例】SELECT 学号, 课程编号, 2009-1 学期 AS 学期, fn NOW() AS 处理时间FROM 成绩表3)计算值【例】SELECT 学号, 课程编号, 成绩 + 10 AS 总成绩FROM 成绩表5 消除结果集中的重复行【例】含有重复的:SELECT 学号FROM 成绩表 WHERE (学号 = N20075666)去除重复的:SELECT DISTINCT 学号FROM 成绩表WHERE (学号 = N20075666)6 限制结果集返回行数【例】SELECT TOP 3 学号, 课程编号, 成绩, 学年, 学期FROM 成绩表二、行查询(选择)1. 表达式比较:比较运算符用于比较两个表达式值,共有 9 个,分别是: =(等于) 、(大于) 、=(大于等于) 、= 90)或SELECT 学号, 课程编号, 成绩, 学年, 学期FROM 成绩表WHERE (成绩 = 90) AND (成绩 = 90) AND (分数 = 5)或SELECT 学号, 课程编号, 成绩, 学年, 学期FROM 成绩表WHERE (成绩 = 90) OR (分数 = 5)2模式匹配【例】SELECT 教师编号, 教师姓名, 性质类别, 部门名称 1FROM 教师信息表WHERE (教师姓名 LIKE %艳% )3范围比较【例】SELECT 学号, 课程编号, 成绩, 学年, 学期FROM 成绩表WHERE (课程编号 IN (46617, 47874)或【例】SELECT *FROM XSWHERE 专业名 IN (计算机, 通信工程, 无线电)4空值查询【例】SELECT 学号, 课程编号, 成绩, 学年, 学期, 分数第 22 页FROM 成绩表WHERE (分数 IS NULL)或SELECT 学号, 课程编号, 成绩, 学年, 学期, 分数FROM 成绩表WHERE (分数 IS not NULL)5子查询【例】SELECT 学号, 课程编号, 成绩, 学年, 学期FROM 成绩表WHERE (课程编号 IN(SELECT cidFROM 课程信息表)或SELECT 学号, 课程编号, 成绩, 学年, 学期FROM 成绩表WHERE (课程编号 not in (SELECT cidFROM 课程信息表)三、连接查询:当数据来源于多个表或视图的时候,需要对各表进行连接查询。1 指定数据源别名【例】SELECT a.教师编号, a.教师姓名, a.部门名称 1, b.cid, b.课程名称, b.任课教师FROM 教师信息表 a CROSS JOIN 课程信息表 b在指定源表或视图的别名时,可使用 AS 关键字或省略 AS。Cross JOIN 是交叉联结。2 联接(JOIN)的基本原理JOIN 在联接时,将第一个表中的每一条记录依次与第二个表中的每一条记录联接成一条新的记录。如果 A、B 表中分别有 10 条记录,则联接后最多可得到 100 条记录,使用的是交叉联结 CROSS JOIN。第 23 页JOINN3联接类型: 内联接:使用 JOIN 或 INNER JOIN 关键字表示。内联接只返回符合条件的记录,则上两表联接返回 2 条记录。【例】SELECT a.教师编号, a.教师姓名, a.部门名称 1, b.cid, b.课程名称, b.任课教师, b.授课学院FROM 教师信息表 a INNER JOIN 课程信息表 b ON a.教师编号 = b.任课教师合计:52635 左联接:使用 LEFT JOIN 或 LEFT OUTER JOIN 关键字表示。左联接返回联接中左表的所有记录,而只返回右表中符合条件的记录。如果左表的某条记录在右表中没有匹配记录,则在相关联的查询结果中右表的所有选择列表列均为空值。 ,则上两表联接返回 3 条记录【例】SELECT a.教师编号, a.教师姓名, a.部门名称 1, b.cid, b.课程名称, b.任课教师, b.授课学院FROM 教师信息表 a LEFT OUTER JOIN课程信息表 b ON a.教师编号 = b.任课教师合计:54844 右联接:使用 RIGHT JOIN 或 RIGHT OUTER JOIN 关键字表示。右联接是左联接的反第 24 页向联接,返回右表的所有记录,如果右表的某记录在左表中没有匹配记录,则将为左表返回空值,则上两表联接返回 2 条记录。【例】SELECT a.教师编号, a.教师姓名, a.部门名称 1, b.cid, b.课程名称, b.任课教师, b.授课学院FROM 教师信息表 a RIGHT OUTER JOIN课程信息表 b ON a.教师编号 = b.任课教师合计:52150 完整联接:使用 FULL JOIN 或 FULL OUTER JOIN 关键字表示。完整外部联接返回左表和右表中的所有记录,当某记录在另一个表中没有匹配记录时,则另一个表的选择列表列为空值,则上两表联接返回 3 条记录。【例】SELECT *FROM 教师信息表 a FULL OUTER JOIN课程信息表 b ON a.教师编号 = b.任课教师合计:55159 交叉联接:使用 CROSS JOIN 关键字表示。交叉联接返回左表中的所有记录,左表中的每一记录与右表中的所有记录组合。在使用交叉联接时,不能使用 ON 指定筛选条件。【例】SELECT *FROM 教师信息表 a CROSS JOIN课程信息表 b合计:2488214481成绩表:提交本人选课结果:学号、课程编号、课程名称、成绩2. 教师信息表:查询和本人名字相同(姓除外)的教师信息:编号、姓名、部门、职称3把本人的成绩按照优良中差显示=四、数据汇总 第 25 页序号 函数名 说明1 AVG 求组中值的平均值。2 COUNT 求组中项数,返回 int 类型整数。3 MAX 求最大值。4 MIN 求最小值。5 SUM 返回表达式中所有值的和。6 ROUND 四舍五入【例】求平均值 AVGSELECT AVG(2010 - YEAR(生日) AS 平均年龄FROM 教师信息表值为:49SELECT AVG(成绩) AS 平均成绩FROM 成绩表WHERE (课程编号 = N46607)值为:47.911392【例】截取有效位数 ROUNDSELECT ROUND(AVG(成绩) , 2) AS 平均成绩FROM 成绩表WHERE (课程编号 = N46607)值为:47.91【例】统计选课人数 COUNTSELECT COUNT(*) AS 有成绩的人数FROM 成绩表WHERE (课程编号 = N46607)值为:69 人【例】统计成绩为零的人次SELECT COUNT(*) AS 人数FROM 成绩表WHERE (成绩 = 0)值为:10237 人次第 26 页【例】统计成绩为零的人数 COUNTSELECT COUNT(*) AS 总人数FROM (SELECT DISTINCT 学号FROM 成绩表WHERE (成绩 = 0) DERIVEDTBL值为:4420 人【例】最大成绩 maxSELECT MAX(成绩) AS 最大成绩FROM 成绩表 值为:100【例】最小成绩 minSELECT MIN(成绩) AS 最小成绩FROM 成绩表 值为:0【例】成绩求和 sumSELECT SUM(成绩) AS 成绩和FROM 成绩表 WHERE (学号 = N20081080)值为:699五、排序【例】将成绩
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【教案版】小学三班级上册 小篮球6
- 2025年护士执业资格中级面试题答案及备考技巧
- 2025年炼油装置操作基础进阶面试高频考点解析
- 【教案版】小学三班级上册 跳跃2
- 《细胞能量通货 ATP》教学课件
- 2025年特岗教师招聘面试物理教育专业技能考核题集
- 2025年物业管理专业知识模拟题及答案详解
- 2025年建筑行业工程师招聘考试试题土木工程
- 2025年金属焊接材料及选用策略面试预测题
- 2025年仓库保管员应聘必-备知识面试模拟题及答案解析
- 2025-2030中国物流园区自动化技术应用与智慧化改造趋势报告
- 2025年人武专干军事考试题库及答案
- 【G1工业锅炉司炉】理论考试题及答案
- 2025年小学体育教师招聘教材教法考试试题及答案
- 高中音乐鉴赏说课课件
- 2025年山西省中考化学真题 含答案
- 2025年中小学生宪法知识竞赛试题及答案
- 2025年甘肃省高考政治试题(含答案解析)
- 快递行业考核管理办法
- 二衬台车课件
- 学习 网络安全
评论
0/150
提交评论