关系数据库与SQL Server 2019版_第1页
关系数据库与SQL Server 2019版_第2页
关系数据库与SQL Server 2019版_第3页
关系数据库与SQL Server 2019版_第4页
关系数据库与SQL Server 2019版_第5页
已阅读5页,还剩505页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

模块一认识关系数据库学习内容数据库系统数据库的地位数据库的基本概念

E-R概念模型三个基本要素实体联系图(E-R图)E-R概念模型的设计

学习目标知识目标理解数据库的基本概念了解数据库系统的特点理解E-R概念模型的含义能力目标能绘制E-R图模块一认识关系数据库2认识数据库系统1.数据库的地位数据库技术产生于六十年代末,是数据管理的最新技术,是计算机科学的重要分支。数据库技术是信息系统的核心和基础,它的出现极大地促进了计算机应用向各行各业的渗透。数据库的建设规模、数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志。模块一认识关系数据库3认识数据库系统

教学活动请同学们思考:在我们的生活中,哪些地方使用到了数据库?模块一认识关系数据库4认识数据库系统2.数据库的基本概念(四个)数据(Data)定义:是数据库中存储的基本对象,是描述事物的符号。表现形式:数字、文字、图形、图像、声音等特点:数据与其语义是不可分的。举例:学籍档案中的一条学生记录是(李明,男,18,2002,重庆,数字媒体学院,2020)其语义是:李明是个大学生,2002年出生,男,重庆人,2020年考入数字媒体学院。模块一认识关系数据库5认识数据库系统2.数据库的基本概念(四个)数据库(DataBase,DB)是长期储存在计算机内、有组织的、可共享的数据集合。数据库管理系统(DataBaseManagementSystem,DBMS)是位于用户与操作系统之间的管理数据库的软件。SQLServer2019是一种DBMS。模块一认识关系数据库6认识数据库系统2.数据库的基本概念(四个)数据库系统(DataBaseSystem,DBS)是指在计算机系统中引入数据库后的系统。数据库系统的组成如下:数据库数据库管理系统(及其开发工具)应用系统人员数据库管理员(DBA)终端用户通常情况下,把数据库系统简称为数据库。模块一认识关系数据库7认识数据库系统

教学活动自行阅读教材,找出数据库系统有哪些特点?模块一认识关系数据库8认识数据库系统3.数据库系统的特点1)数据结构化按照某种数据模型,将应用的各种数据组织到一个数据库中,整个数据不是一盘散沙,而是有机联系在一起。2)数据共享性高、冗余少、易扩充数据不再面向某个应用程序而是面向整个系统,当前所有用户可同时存取库中的数据。数据共享减少了不必要的数据冗余,节约存储空间,同时也避免了数据之间的不相容性与不一致性。数据面向整个系统,而且是结构化的,所以不仅能被多个应用共享,而且容易增加新的应用,易于扩充。模块一认识关系数据库9认识数据库系统3.数据库系统的特点3)数据独立性高物理独立性:是指用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的。也就是说,数据在磁盘上的数据库中怎样存储是由DBMS管理的,用户不需要了解,应用程序要处理的只是数据的逻辑结构,这样当数据的物理存储改变了,应用程序不用改变。逻辑独立性:是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不变。4)数据由DBMS统一管理和控制数据的安全性控制、数据的完整性控制、并发控制、数据恢复模块一认识关系数据库10认识数据库系统3.数据库系统的特点数据库管理阶段应用程序与数据的对应关系模块一认识关系数据库11构建E-R概念模型1.数据模型数据模型的含义是对客观事物及其联系的数据描述,即对现实世界(存在于人脑之外的客观世界)的模拟。例:地图、沙盘在数据库中用数据模型来抽象、表示和处理现实世界中的数据和信息。要将现实世界转变为机器能够识别的形式,必须经过两次抽象。数据模型的类型概念数据模型逻辑数据模型物理数据模型模块一认识关系数据库12构建E-R概念模型2.概念数据模型概念数据模型的含义用于信息世界(现实世界在人脑中的反映)的建模,是现实世界到信息世界的第一次抽象,是数据库设计人员进行数据库设计的有力工具,也是设计人员和用户之间交流的语言。概念数据模型的表示方法实体联系图(E-R图):用于描述信息世界的概念数据模型。它通过画图将实体以及实体间的联系刻画出来,为客观事物建立概念数据模型。模块一认识关系数据库13构建E-R概念模型3.E-R图的基本要素1)实体是现实世界中客观存在并可以相互区分的事物。实体可以是人或物,可以是实际的对象,也可以是抽象的概念(如事物之间的联系)在学校:学生、课程、教师、学院等;某企业集团:工厂、职工、产品等2)属性实体所具有的特性。一个实体可以有若干属性来描述。学生的属性:学号、姓名、年龄、性别、籍贯、专业、学院等;产品的属性:产品编号、产品名、规格等模块一认识关系数据库14构建E-R概念模型3.E-R图的基本要素3)联系实体内部以及实体之间的联系。类型:一对一联系(简记成1:1)例如:观众和座位一对多联系(简记成1:n)例如:班级和学生多对多联系(简记成m:n)例如:学生和课程模块一认识关系数据库15构建E-R概念模型

课堂练习:判断下列实体间的联系类型。班级与正班长班级与班委班级与学生供应商和商品商店和顾客工厂和产品出版社和作者商品和超市模块一认识关系数据库161:11:nm:n构建E-R概念模型4.E-R图的绘制基本要素的表示方法长方形——实体椭圆——属性菱形——联系说明:在相应的框内要写上实体名、属性名或联系名。ER图的绘制方法模块一认识关系数据库17其间用直线相连其间用直线相连用直线相连,并在直线边注明联系的类型(1:1、1:n、m:n)构建E-R概念模型4.E-R图的绘制E-R图示例模块一认识关系数据库18实体1联系名实体2111:1联系实体1联系名实体21n1:n联系实体1联系名实体2mnm:n联系课程选修学生mn分数构建E-R概念模型教学活动:阅读教材,某学院的教学管理E-R图的建立实例(时间10分),并回答以下问题:有哪些实体?实体间有哪些联系?各联系是什么类型?若实体的属性太多,可如何简化E-R图?模块一认识关系数据库19构建E-R概念模型5.E-R图的设计实例完整E-R图:模块一认识关系数据库20构建E-R概念模型5.E-R图的设计实例若实体的属性太多,可如何简化ER图?可在E-R图中只画实体及属性,而实体和联系用另一幅图表示。模块一认识关系数据库21构建E-R概念模型5.E-R图的设计实例若实体的属性太多,可如何简化ER图?可在E-R图中只画实体及属性,而实体和联系用另一幅图表示。模块一认识关系数据库22构建E-R概念模型课堂练习:设有商店和顾客两个实体。试画ER图,并注明属性和联系类型。“商店”有属性:商店编号、商店名、地址、电话。“顾客”有属性:顾客编号、姓名、地址、年龄、性别。假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每一次去商店购物有一个消费金额和日期。模块一认识关系数据库23构建E-R概念模型建立步骤1)确定实体类型及属性。2)确定联系类型及属性。“商店-顾客”的联系是m:n联系的属性有四项:顾客(编号)商店(编号)消费金额日期联系的名称:购物模块一认识关系数据库24商店顾客日期购物消费金额mn构建E-R概念模型建立步骤3)把实体类型和联系类型组合成ER图。模块一认识关系数据库25商店顾客日期购物消费金额mn商店编号商店名地址电话顾客编号姓名地址年龄性别本课小结数据库系统E-R图的绘制确定信息系统可能包含的实体。确定每个实体的属性。确定实体之间可能有的联系,并结合实际情况给每个联系命名。确定每个联系的种类和可能有的属性。画E-R图,建立概念模型,完成现实世界到信息世界的第一次抽象。模块一认识关系数据库26本课小结对E-R模型的理解E-R模型是人们认识客观世界的一种方法、工具。E-R模型具有客观性和主观性两重含义。E-R模型是在客观事物或系统的基础上形成的,在某种程度上反映了客观现实,反映了用户的需求,因此ER模型具有客观性。但E-R模型又不等同于客观事物的本身,它往往反映事物的某一方面,至于选取哪个方面或哪些属性,如何表达则决定于观察者本身的目的与状态,从这个意义上说,ER模型又具有主观性。模块一认识关系数据库27课外作业课外练习:无预习:“设计关系数据模型”中的内容。请思考下列问题什么是关键字/码/键?什么是主关键字/主码/主键?E-R图转化为关系模式的原则是什么?关系应具备什么性质?模块一认识关系数据库28单击添加标题Clicktoaddacaption单击添加标题Clicktoaddacaption单击添加标题ClicktoaddacaptionTHANKS模块一认识关系数据库29模块一认识关系数据库学习内容关系数据模型的基本概念关系、记录(元组)、属性和属性值、域关键字(码)、候选关键字(候选码)、主关键字(主码)、外部关键字(外码)、主表和从表将E-R图转换为关系数据模型关系模式的含义转换原则应用举例学习目标知识目标理解关系数据模型的基本概念能力目标能将ER图转化为关系模式/表(重点)模块一认识关系数据库31掌握关系数据模型的基本概念数据模型的类型(复习)概念数据模型逻辑数据模型物理数据模型概念数据模型(复习)用于信息世界的建模,是现实世界到信息世界的第一次抽象。模块一认识关系数据库32掌握关系数据模型的基本概念1.逻辑数据模型含义:是用户从数据库所看到的数据模型。用概念数据模型表示的数据必须转化为逻辑数据模型表示的数据,才能在DBMS中实现。类型(四种)关系模型(最常用)SQLServer采用的是关系数据模型。层次模型网状模型面向对象模型模块一认识关系数据库33掌握关系数据模型的基本概念2.关系数据模型的含义用二维表格结构表示实体以及实体之间的联系的数据模型。完成信息世界到机器世界的第二次抽象。模块一认识关系数据库34掌握关系数据模型的基本概念2.关系数据模型的二维表格学生表说明:一个关系就是一张二维表,二维表的名称就是关系名模块一认识关系数据库35学号姓名性别年龄籍贯专业学院编号2020003001张国庆男20重庆物联网工程012020008102李小平女19四川信息安全032020010223刘东东男20广东电子商务05掌握关系数据模型的基本概念3.关系应具备的性质关系中每一个属性值都是不可分解的。关系中不允许出现相同的行。关系中不允许出现相同的列。关系中没有行序、没有列序。模块一认识关系数据库36掌握关系数据模型的基本概念

教学活动:自学教材中的基本概念(时间15分钟),并回答下面提问:1)该表中有几个元组(记录)?2)该表中有多少个属性?第4个元组的属性值分别是多少?3)什么是域?年龄的域可以是多少?4)什么是关键字(码/键)?模块一认识关系数据库37学号姓名性别年龄籍贯专业学院编号2020003001张国庆男20重庆物联网工程012020008102李小平女19四川信息安全032020010223刘东东男20广东电子商务05掌握关系数据模型的基本概念

教学活动(续):5)哪些属性可以作为该表的候选关键字?6)该表的主关键字(主码/主键)是什么?7)该表的非主属性有哪些?8)哪个属性可以作为外关键字(外码/外键)?9)该表是主表还是从表?模块一认识关系数据库38学号姓名性别年龄籍贯专业学院编号2020003001张国庆男20重庆物联网工程012020008102李小平女19四川信息安全032020010223刘东东男20广东电子商务05将E-R图转化为关系数据模型

教学活动:请同学们理解以下几个概念关系模式的含义关系模式的表示方法关系模式与关系的区别模块一认识关系数据库39将E-R图转化为关系数据模型1.基本概念关系模式的含义对关系的信息结构及语义限制的描述。关系模式的表示方法用关系名和包含的属性名的集合表示。例如:学生表(学号,姓名,性别,年龄,籍贯,专业,学院编号)模块一认识关系数据库40将E-R图转化为关系数据模型1.基本概念关系模式与关系的区别1)关系模式是对关系结构的定义,是对关系“型”的描述。关系是二维表格,是对“值”的描述2)一般说来,关系模式是相对稳定、不随时间变化的。关系是随时间动态变化的,关系中的数据在不断更新。例如:在学生表中,由于学生的入学、退学和毕业等原因,学生关系是经常变化的,但其结构以及对数据的限制是不会改变的。说明:关系模式和关系往往统称为关系。模块一认识关系数据库41将E-R图转化为关系数据模型2.转化原则1)每个实体转换为一个关系。实体的属性就是关系的属性。实体的码作为关系的码。2)每个联系(二元的)也转换成一个关系。与关系相连的,各个实体的码、联系的属性转换成关系的属性。关系的码如下:对于1:1的联系,每个实体的码均是该联系关系的候选码。对于1:n的联系,关系的码是N端实体的码。对于m:n的联系,关系的码是诸实体码的组合。3)有相同码的关系可以合并。模块一认识关系数据库42将E-R图转化为关系数据模型3.应用举例实例1:将教材图1-5的ER图转化为关系模式和表,并写出主关键字和外关键字。模块一认识关系数据库43将E-R图转化为关系数据模型3.应用举例解答:转化为关系模式教师表(教工号,姓名,性别,职称,专业方向)主键:教工号学生表(学号,姓名,性别,年龄,籍贯,专业,学院编号)主键:学号课程表(课程号,课程名,学时,学分,教材)主键:课程号模块一认识关系数据库44将E-R图转化为关系数据模型3.应用举例选修表(学号,课程号,成绩)主键:学号+课程号

外键:学号、课程号讲授表(教工号,课程号)主键:教工号+课程号

外键:教工号、课程号指导表(学号,教工号,时间,地点)主键:学号

外键:教工号学生实体和指导联系可合并。解答:转化为表参看教材。模块一认识关系数据库45将E-R图转化为关系数据模型

课堂练习:综合应用。某个企业集团有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘用期和工资。工厂的属性有工厂编号、厂名、地址,产品属性有产品编号、产品名、规格,职工的属性有职工号、姓名。1)根据上述语义画出ER图。2)将ER模型转换成关系模型,并指出每个关系模式的主键和外键。模块一认识关系数据库46将E-R图转化为关系数据模型建立ER图1)确定实体类型及属性。三个实体:工厂、产品、职工2)确定联系类型。“工厂-产品”的联系(m:n)——生产属性有:产品计划数量“工厂-职工”的联系(1:n)——聘用属性有:聘用期、工资3)把实体类型和联系类型组合成ER图。模块一认识关系数据库47将E-R图转化为关系数据模型建立ER图模块一认识关系数据库48产品产品编号产品名规格职工职工号姓名工厂工厂编号地址厂名生产计划数量mn聘用聘期工资1n将E-R图转化为关系数据模型转换成关系模式本题中有3个实体,可得到3个关系模式。本题中有2个联系,也可得到2个关系模式。

1)工厂(工厂编号,厂名,地址)主键:工厂编号

2)产品(产品编号,产品名,规格)主键:产品编号

3)职工(职工号,姓名)主键:职工号模块一认识关系数据库49将E-R图转化为关系数据模型转换成关系模式4)生产(工厂编号,产品编号,计划数量)主键:工厂编号+产品编号外键:工厂编号、产品编号5)聘用(职工号,聘期,工资,工厂编号)主键:职工号外键:工厂编号说明:由于“工厂-职工”的联系“聘用”是1:n,它对应的关系模式的码与职工实体的码相同,所以,这个关系模式与职工关系模式可以合并。模块一认识关系数据库50将E-R图转化为关系数据模型合并同码的关系模式职工(职工号,姓名)聘用(职工号,聘期,工资,工厂编号)职工(职工号,姓名,聘期,工资,工厂编号)模块一认识关系数据库51本课小结关系数据模型的基本概念关系、记录(元组)、属性和属性值、域关键字(码/键)、候选关键字(候选码)主关键字(主码/主键)、外部关键字(外码/外键)主表和从表将ER图转化为逻辑数据模型(用表或关系模式来描述),完成信息世界到机器世界的第二次抽象。模块一认识关系数据库52课外作业课外练习:补充联系两个表的关键字称为______。关系中主码的取值必须唯一且非空,这条规则是___完整性规则。关系模式是对关系结构的定义,是对关系____的描述。关系是二维表格,是对____的描述。对于1:1的联系,____均是该联系关系的候选码。对于1:n的联系,关系的码是______。对于m:n的联系,关系的码是______。模块一认识关系数据库53课外作业课外练习:预习“实现关系的完整性”和“规范化关系数据模型”中的内容。请思考下列问题函数依赖有哪些类型?什么叫关系的规范化?1NF、2NF和3NF之间有什么关系?模块一认识关系数据库54单击添加标题Clicktoaddacaption单击添加标题Clicktoaddacaption单击添加标题ClicktoaddacaptionTHANKS模块一认识关系数据库55模块一认识关系数据库学习内容关系的完整性规则实体完整性、参照完整性、域完整性函数依赖完全函数依赖、部分函数依赖、传递函数依赖关系的规范化第一范式、第二范式、第三范式学习目标知识目标理解关系的完整性规则了解函数依赖、关系规范化的含义理解三种范式的定义能力目标能判别关系的范式类别(重点)能进行范式的分解(重点、难点)模块一认识关系数据库57实现关系的完整性定义:是对关系的某种约束条件。目的用于保证数据库中数据的正确性、一致性、有效性。类型实体完整性规则参照完整性规则(引用完整性规则)域完整性规则(用户自定义完整性规则)模块一认识关系数据库58是关系模型必须满足的完整性约束条件。实现关系的完整性1.实体完整性规则规则要求:在任何关系的任何一个元组中,主键的值不能为空值、也不能取重复的值。目的:用于保证数据库表中的每一个元组都是存在且唯一的。请思考:下面的关系是否违反实体完整性规则?模块一认识关系数据库59学号姓名性别年龄籍贯专业学院编号2020003001张国庆男20重庆物联网工程01李小平女19四川信息安全032020003001刘东东男20广东电子商务05实现关系的完整性2.参照完整性规则(引用完整性规则)规则要求:“不引用不存在的实体”。即:不允许在一个关系中引用另一个关系中不存在的元组。目的用于确保相关联的表间的数据保持一致。模块一认识关系数据库60实现关系的完整性2.参照完整性规则(引用完整性规则)请思考:下面两个关系是否违反参照完整性规则?模块一认识关系数据库61学院编号学院名称院长办公室办公电话01人工智能与大数据学院武春岭154056767600302电子与物联网学院陈良124106767601803通信工程学院陶亚雄1420767676025学号姓名性别年龄籍贯专业学院编号2020003001张国庆男20重庆物联网工程01李小平女19四川信息安全2020003001刘东东男20广东电子商务05学院表(主表)学生表(从表)实现关系的完整性2.参照完整性规则(引用完整性规则)说明:从表的“学院编号(外键)”的取值只能为两种情况:若取非空值,则它必须是主表中存在的值。取空值(null)。表明尚未给学生分配专业。null不等于0或空字符串。模块一认识关系数据库62实现关系的完整性3.域完整性规则(用户定义完整性规则)规则要求:由用户根据实际情况,定义表中属性的取值范围。例如:性别只能是男和女、年龄不能为负值、成绩在0—100之间等。目的用于保证给定字段中数据的有效性,即保证数据的取值在有效的范围内。模块一认识关系数据库63规范化关系数据模型引在数据库的设计过程中,对于同一个问题,选用不同的关系模式,其性能的优劣是大不相同的,为了区分关系模式的优劣,人们常常把关系模式分为各种不同等级的范式。模块一认识关系数据库64规范化关系数据模型1.概念和范式的类型类型第一范式(1NF)第二范式(2NF)第三范式(3NF)……关系规范化的概念将低级范式转换为若干个高级范式过程。模块一认识关系数据库65低高规范化关系数据模型2.第一范式(1NF)定义如果关系模式R的每个属性都是不可分解的,则称R属于1NF。第一范式是对关系的最低要求。示例:判断哪一张表是1NF?模块一认识关系数据库66学号课程名200301{数学分析、光学原理、普通物理}200302{数学分析、光学原理}学号课程名200301数学分析200301光学原理200301普通物理200302数学分析200302光学原理规范化关系数据模型2.第一范式(1NF)第一范式可能存在的问题:数据冗余:如各位老师的信息重复。插入异常:如果要插入刘老师的个人信息,但刘老师未开课,会造成缺关键字“学号”、“课程号”。删除异常:当要删除课程号=“C3”的元组,会丢失李老师的信息。修改量大。模块一认识关系数据库67规范化关系数据模型3.第二范式(2NF)定义:如果关系模式R为第一范式,且R中每个非主属性完全函数依赖于R的主码,则称R属于2NF。示例:下列关系模式是1NF,是否是2NF?为什么?

SCD(学号,姓名,课程号,成绩,系名,系主任)主码为复合码:学号+课程号不是。因为:“姓名、系名、系主任”与主码是部分函数依赖(即:只依赖于学号)模块一认识关系数据库68规范化关系数据模型3.第二范式(2NF)解决方法:消除部分函数依赖。分解为2NF的方法:把关系模式中对主码完全函数依赖的非主属性与决定它们的主码放在一个关系模式中。把对主码部分函数依赖的非主属性和决定它们的主属性放在一个关系模式中。检查分解后的新模式,如果仍不是2NF,则继续按照前面的方法进行分解,直到达到要求。模块一认识关系数据库69规范化关系数据模型3.第二范式(2NF)关系模式SCD的分解结果如下:SC(学号,课程,成绩)SD(学号,姓名,学院名,院长)模块一认识关系数据库70规范化关系数据模型4.第三范式(3NF)定义:如果关系模式R为第二范式,且R中每个非主属性都不传递函数依赖于R的主码,则称R属于3NF。示例:下列关系模式是2NF,是否为3NF?为什么?

SD(学号,姓名,学院名,院长)不是。因为:学号→学院名,学院名→院长,存在传递依赖关系。解决方法:消除传递函数依赖。模块一认识关系数据库71规范化关系数据模型4.第三范式(3NF)分解为3NF的方法:把直接对主码函数依赖的非主属性与决定它们的主码放在一个关系模式中。把造成传递函数依赖的决定因素连同被它们决定的属性放在一个关系模式中。检查分解后的新模式,如果不是3NF,则继续按照前面的方法进行分解,直到达到要求。模块一认识关系数据库72规范化关系数据模型4.第三范式(3NF)关系模式SD的分解结果如下:S(学号,姓名,学院名)D(学院名,院长)模块一认识关系数据库73规范化关系数据模型5.各范式之间的关系模块一认识关系数据库74规范化关系数据模型课堂练习假设某商业集团数据库中有1个关系模式R(商店编号,商品编号,数量,部门编号,负责人),如果规定:每个商店的每种商品只在一个部门销售;每个商店的每个部门只有一个负责人;每个商店的每种商品只有一个库存数量。1)写出关系模式R的基本函数依赖集。2)找出关系模式R的候选码。3)关系模式R最高已经达到第几范式?为什么?4)如果R不属于3NF,请将R分解成3NF。模块一认识关系数据库75规范化关系数据模型分析与解答:1)基本的函数依赖有:(商店编号+商品编号)→部门编号(商店编号+部门编号)→负责人(商店编号+商品编号)→数量2)由题意,上面的函数依赖可知“商店编号”是主属性,商品编号也是主属性,由这两个属性,可以确定关系元组的所有属性,所以R的候选码是:商店编号+商品编号。模块一认识关系数据库76规范化关系数据模型分析与解答:3)R(商店编号,商品编号,数量,部门编号,负责人)最高已达到2NF。因为负责人是码的传递依赖。4)要达到3NF,必须消除非主属性对码的传递依赖。对R分解后的两个模式如下:R1(商店编号,商品编号,数量,部门编号)R2(部门编号,负责人)模块一认识关系数据库77本课小结关系的完整性规则实体完整性/参照完整性/域完整性范式的类型1NF、2NF、3NF各范式间的关系:1NF中的每个属性值是不可再分的,它是关系模式的最低要求。消除1NF中的部分函数依赖,可转换为2NF。消除2NF中的传递函数依赖,可转换为3NF。模块一认识关系数据库78课外作业课外练习补充:教材课后练习四、设计题4

设关系模式SCT(学号,课程号,成绩,教师名,教师地址)。如果规定:每个学生每学一门课程只有一个成绩;每门课只有一个教师任教;每个教师只有一个地址(无同名教师)。写出关系模式SCT的基本函数依赖集。找出关系模式SCT的候选键。试把SCT分解成2NF模式集,并说明理由。试把SCT分解成3NF模式集,并说明理由。模块一认识关系数据库79单击添加标题Clicktoaddacaption单击添加标题Clicktoaddacaption单击添加标题ClicktoaddacaptionTHANKS模块一认识关系数据库80模块二认识SQLServer2019学习内容初始SQLServer2019SQLServer2019的版本和安装环境安装SQLServer2019

SQLServer2019常用管理工具学习目标知识目标了解SQLServer2019的版本和安装环境能力目标会安装SQLServer2019会使用SQLServer2019常用管理工具模块二认识SQLServer201982初识SQLServer2019SQLServer是由Microsoft开发和推广的关系数据库管理系统(DBMS)。1.SQLServer2019的版本SQLServer2019包含企业版(Enterprise)、标准版(Standard)、开发者版(Develper)、工作组版(WorkGroup)以及精简版(Express)。模块二认识SQLServer201983初识SQLServer20192.SQLServer2019的安装环境要求模块二认识SQLServer201984类别最低要求硬件CPU企业版、标准版和开发版需要PentiumIII及兼容处理器,建议主频600MHz或更高内存除精简版外至少512MB硬盘150MB以上监视器VGA或更高网卡10M/1000MB兼容卡软件操作系统Windows2000SP4以上IEIE6.0SP1及以上IIS报表服务器需要IIS5.0以上ASP.NET报表服务需要ASP.NET3.0以上安装SQLServer20191.安装准备SQLServer2019作为商业数据库软件,微软除提供企业版、标准版需要支付费用购买授权码获得使用权外,同时提供了免费的开发版或精简版供下载作为个人研究或学习用。学习者可访问/zh-cn/sql-server/sql-server-downloads选择下载所需版本模块二认识SQLServer201985安装SQLServer2019动手操作1:安装SQLServer2019模块二认识SQLServer201986使用SQLServer2019常用管理工具动手操作1:查看或下载SQLServer工具点击链接/zh-cn/sql-server/sql-server-downloads,在该网页可下载使用SQLServer的辅助工具模块二认识SQLServer201987使用SQLServer2019常用管理工具动手操作2:使用SQLServerManagermentStudio(SSMS)打开“已注册的服务器”窗口认识“对象资源管理器”窗口使用“查询编辑器”窗口模块二认识SQLServer201988使用SQLServer2019常用管理工具动手操作3:使用SQLServerProfiler认识SQLServerProfiler运行SQLServerProfiler模块二认识SQLServer201989本课小结SQLServer2019的版本和安装环境安装SQLServer2019SQLServer2019常用管理工具SQLServerManagermentStudio(SSMS)SQLServerProfiler模块二认识SQLServer201990课外作业课外练习:预习“认识SQLServer数据库结构”中的内容。请思考下列问题:有哪些数据库?SQLServer2019中的数据库文件各有什么作用?默认状态下,数据库文件存在什么位置?模块二认识SQLServer201991单击添加标题Clicktoaddacaption单击添加标题Clicktoaddacaption单击添加标题ClicktoaddacaptionTHANKS模块二认识SQLServer201992模块三创建和管理数据库学习内容数据库结构创建数据库修改数据库删除数据库学习目标知识目标认识系统数据库认识数据库对象、数据库文件、数据库文件组能力目标掌握数据库的创建掌握数据库的修改和删除模块三创建和管理数据库94认识数据库结构任务1:认识系统数据库SQLServer2019中包括5个系统数据库。Master数据库是SQLServer系统最重要的数据库,它记录了SQLServer的所有系统信息。包括:所有的登录信息系统配置信息SQLServer的初始化信息其它系统数据库及用户数据库的相关信息模块三创建和管理数据库95认识数据库结构任务1:认识系统数据库Model数据库为新的用户数据库提供模板。SQLServer通过复制model数据库的内容,然后将其扩展到所需大小,来创建新的数据库。Msdb数据库是代理服务数据库,为其警报、任务调度和记录操作员的操作提供存储空间。模块三创建和管理数据库96认识数据库结构任务1:认识系统数据库Tempdb数据库是一个临时数据库,它为所有的临时表、临时存储过程及其它临时操作提供存储空间。Resource数据库是一个只读数据库。包含SQLServer2019的系统对象,这些系统对象在物理上保存在Resource数据库中,但在逻辑上,它们出现在每个数据库的sys架构中。物理文件名为Mssqlsystemresource.mdf。默认情况下,此文件在C:\ProgramFiles\MicrosoftSQLServer\MSSQL<version>.<instance_name>\MSSQL\Binn\中。模块三创建和管理数据库97认识数据库结构任务2:认识数据库对象数据在SQLServer系统中的逻辑存储形式。当一个用户连接到数据库后,所看到的数据库对象如左图所示。模块三创建和管理数据库98认识数据库结构任务3:认识数据库文件含义:一个数据库在磁盘上保存为1个或多个文件,这些文件称为数据库文件。类型主数据文件:存放数据库的启动信息、存放数据。每个数据库必有一个主数据文件,扩展名是.mdf。次数据文件:用于存放数据。一个数据库可没有或有多个次数据文件,扩展名是.ndf。事务日志文件:事务日志记录了SQLServer所有的事务和由这些事务引起的数据库的变化。其作用:可恢复所有未完成的事务。每个数据库可有一个或多个日志文件,扩展名是.ldf。模块三创建和管理数据库99认识数据库结构任务4:认识数据库文件组目的:SQLServer允许将多个数据文件组成若干个组,以便于管理和分配数据。类型主文件组:包括主数据文件、没有指明组的其它文件次文件组:用户自定义文件组数据库文件和文件组必须遵循的规则一个文件或文件组只能被一个数据库使用一个文件只能属于一个文件组日志文件不能属于文件组模块三创建和管理数据库100创建数据库创建数据库的方法使用界面创建(熟悉)简单、方便使用命令创建(掌握)命令方式、较复杂但它是兼容语法,一旦学会它,可套用到其它数据库系统中;在程序中执行的某些动作必须使用命令。模块三创建和管理数据库101创建数据库创建数据库前的考虑确定数据库名称确定所有者(创建数据库的用户将成为该数据库的所有者)确定用于存储数据的数据库文件和文件组确定数据库文件存放的位置估计数据库文件的初始大小(如:3MB)允许数据库自动增长(如:10MB或10%)允许数据库文件增长的最大值(如:100MB)模块三创建和管理数据库102创建数据库创建数据库命令的使用和分析用用命令创建数据库的格式CREATEDATABASE数据库名[ON<数据文件描述符>][LOG

ON<日志文件描述符>]实例1:创建一个简单数据库。CREATEDATABSEDB1模块三创建和管理数据库103创建一个名为DB1的数据库,其大小与Model的数据库完全相同。创建数据库完整的数据库创建命令格式分析

CREATEDATABSE

数据库名

[ON[PRIMARY]

(

NAME=逻辑文件名 ,FILENAME=‘磁盘文件名’[,SIZE=初始大小] [,MAXSIZE=最大容量|unlimited][,FILEGROWTH=增长量])[,…n]][,[FILEGROUP

文件组名](…)[,…n]][LOGON

(

NAME=逻辑文件名 ,FILENAME=‘磁盘文件名’

[,SIZE=初始大小] [,MAXSIZE=最大容量|unlimited][,FILEGROWTH=增长量])[,…n]]模块三创建和管理数据库104主文件组主数据文件主文件组的次数据文件n次文件组的次数据文件日志文件n次文件组日志文件1创建数据库实例2:分析下列命令的功能CREATEDATABSEDB2

ONPRIMARY(NAME=DB2,

FILENAME='D:\TEST\DB2.MDF’,

SIZE=20,

MAXSIZE=UNLIMITED,

FILEGROWTH=20%)模块三创建和管理数据库105主文件组逻辑名:作为SQLServer系统引用文件时的标识符物理名:在OS中具体的存储位置及名称初始大小20MB增长幅度20%最大容量不限制创建数据库课堂练习1:请判断下列命令创建的数据库中包含了哪些数据库文件?有几个文件组?CREATEDATABSESONPRIMARY(NAME=S,FILENAME='D:\TEST\S.MDF’,SIZE=4,MAXSIZE=10,FILEGROWTH=10%)

LOG

ON(NAME=S_LOG,FILENAME='D:\TEST\S_LOG.LDF’,SIZE=1,MAXSIZE=5,FILEGROWTH=1)模块三创建和管理数据库106创建数据库课堂练习2:请判断下列命令创建的数据库中有几个文件组?各组有哪些数据库文件?存放在何处?CREATEDATABSETONPRIMARY(NAME=T,FILENAME=‘D:\T.MDF’,SIZE=4,MAXSIZE=10,FILEGROWTH=10%),

(NAME=T2,FILENAME=‘D:\T2.NDF’,SIZE=4,MAXSIZE=10,FILEGROWTH=10%),

FILEGROUPT_GROUP(NAME=T3,FILENAME=‘D:\T3.NDF’,SIZE=4,MAXSIZE=10,FILEGROWTH=10%)

LOG

ON(NAME=T_LOG,FILENAME=‘D:\T_LOG.LDF’,SIZE=3,MAXSIZE=5,FILEGROWTH=1)模块三创建和管理数据库107修改数据库修改数据库包括对文件组的操作增加、重命名、删除对数据/日志文件的操作增加、修改文件属性、删除修改数据库名模块三创建和管理数据库108修改数据库任务1:修改数据库的名称ALTERDATABASE数据库名MODIFYNAME=新数据库名实例1:将数据库DB1的名字修改为DB5。ALTER

DATABASEDB1

MODIFY

NAME

=DB5模块三创建和管理数据库109修改数据库任务2:增加数据文件、事务日志文件ALTERDATABASE数据库名ADDFILE<数据文件>[,…n][TOFILEGROUP文件组名

]|ADDLOGFILE<日志文件>[,…n]模块三创建和管理数据库110修改数据库实例2:在数据库为DB5中增加一个数据文件和一个日志文件。ALTER

DATABASEDB5

ADD

FILE(

NAME

=DB5_1,

FILENAME

='D:\TEST\DB5_1.NDF'

)

ALTER

DATABASEDB5ADD

LOG

FILE(

NAME

=DB5_LOG1,

FILENAME

=

'D:\TEST\DB5_LOG1.LDF'

)模块三创建和管理数据库111未指明文件组,则增加到主文件组修改数据库

任务3:增加文件组ALTERDATABASE数据库名ADDFILEGROUP文件组名实例3:在数据库DB5中增加一个名为“FDB5”的文件组。ALTER

DATABASEDB5

ADD

FILEGROUPFDB5模块三创建和管理数据库112修改数据库

任务4:修改文件组的名称ALTERDATABASE数据库名MODIFYFILEGROUP文件组名NAME=新文件组名实例4:将数据库DB5中的FDB5文件组的名称改为“G5”ALTERDATABASEDB5MODIFYFILEGROUPFDB5NAME=G5模块三创建和管理数据库113修改数据库

任务5:增加数据文件到文件组ALTERDATABASE数据库名ADDFILE<数据文件>[,…n][TOFILEGROUP文件组名

]模块三创建和管理数据库114修改数据库实例5:在数据库DB5中增加两个数据文件到文件组“G5”中,并将该文件组设为默认文件组。ALTER

DATABASEDB5ADD

FILE(

NAME=DB5_2,

FILENAME='D:\TEST\DB5_2.NDF'

)

,(

NAME=DB5_3,

FILENAME=

'D:\TEST\DB5_3.NDF’

)TO

FILEGROUPG5GOALTER

DATABASEDB5MODIFY

FILEGROUPG5DEFAULT模块三创建和管理数据库115修改数据库

任务6:修改数据库文件ALTERDATABASE数据库名MODIFYFILE<文件属性>实例6:将数据库DB5中增加的“DB5_3”的数据库文件名称改为“DDD”。ALTER

DATABASEDB5MODIFY

FILE(NAME=DB5_3,

NEWNAME=DDD,

FILENAME='D:\TEST\DDD.NDF')模块三创建和管理数据库116修改数据库

任务7:删除数据文件和事务日志文件ALTERDATABASE数据库名REMOVEFILE逻辑文件名实例7:将数据库DB5的文件组“G5”中的数据文件“DB5_2”删除,并将事务日志文件“DB5_LOG1”删除。ALTER

DATABASEDB5REMOVE

FILEDB5_2ALTER

DATABASEDB5REMOVE

FILEDB5_LOG1模块三创建和管理数据库117修改数据库

任务8:删除文件组ALTERDATABASE数据库名REMOVEFILEGROUP文件组名模块三创建和管理数据库118删除文件组前必须保证该文件组为空,若其中有文件则应先删除修改数据库实例8:将数据库DB5中的文件组“G5”删除。ALTERDATABASEDB5MODIFYFILEGROUP[PRIMARY]DEFAULTGOALTERDATABASEDB5REMOVEFILEDDDGOALTERDATABASEDB5REMOVEFILEGROUPG5模块三创建和管理数据库119因G5是默认文件组,所以,先将PRIMARY文件组设为默认文件组删除G5文件组中的“DDD”数据文件删除空文件组“G5”删除数据库

任务1:删除数据库DROPDATABASE数据库名[,…n]实例1:将数据库DB3、DB4、DB5删除。DROPDATABASEDB3,DB4,DB5说明:当数据库处于下列情况不能被删除。当有用户正在数据库使用时。当数据库正在被恢复时。当数据库正在参与复制时。模块三创建和管理数据库120本课小结SQLServer2019的数据库包括5个系统数据库。数据库文件有主数据文件、次数据文件和日志文件。数据库的文件组分为主文件组和次文件组。创建和管理数据库的方法有命令方式、对象资源管理器。修改数据库包括:增加/减少文件和文件组、修改数据库文件、删除文件和文件组。删除数据库模块三创建和管理数据库121课外作业

课外练习:P79上机题上机准备:数据库的创建和管理模块三创建和管理数据库122单击添加标题Clicktoaddacaption单击添加标题Clicktoaddacaption单击添加标题ClicktoaddacaptionTHANKS模块三创建和管理数据库123模块三创建和管理数据库实训项目动手操作1:查看系统数据库信息动手操作2:用界面方式创建数据库动手操作3:用命令创建数据库动手操作4:用命令修改数据库动手操作5:用界面方式分离与附加数据库动手操作6:用命令删除数据库125模块三创建和管理数据库动手操作1:查看系统数据库信息

任务1:在“对象资源管理器”中查看服务器中的系统数据库,并回答有哪些数据库。

任务2:在“对象资源管理器”中查看各类数据库的属性。右击某个数据库→单击“属性”→……

任务3:在查询窗口中使用命令查看服务器中的系统数据库信息。单击“工具栏”上中“新建查询”按钮,在查询窗口中输入:SP_HELPDBSP_HELPDBMASTER126模块三创建和管理数据库动手操作2:用界面方式创建和修改数据库要求:创建一个DB数据库:将所有数据库文件创建在D:\盘,其中DB数据库中包括1个主数据文件、1个次数据文件、1个日志文件;主数据文件和日志文件使用默认名或自定义;主数据文件的初始大小为20M,最大容量为100M,增量为10%,日志文件的其他属性使用默认值;次数据文件名为DB_D,属于USER组,其他属性使用默认值。127模块三创建和管理数据库动手操作2:用界面方式创建和修改数据库任务1:在“资源对象管理器”中创建一个名为DB的数据库右击“数据库”图标→“新建数据库”→……任务2:查看DB数据库对象和数据库文件。任务3:在DB库中增加1个次文件组USER2,并在其中增加一个数据文件DB2,属性自定义。在DB中增加1个日志文件LOG2,属性自定义。右击“DB”数据库图标→“属性”→……128模块三创建和管理数据库动手操作3:用命令创建数据库任务1:创建一个默认参数的数据库DB1。

任务2:查看DB1数据库的信息,请说出该数据库中有哪些文件?逻辑文件名、磁盘文件名各是什么?它们的大小是多少?129CREATEDATABASEDB1SP_HELPDBDB1模块三创建和管理数据库动手操作3:用命令创建数据库任务1:按下列表格中的要求创建一个名为XSCJK的数据库。(提示:先在D盘创建文件夹SQL)130模块三创建和管理数据库动手操作3:用命令创建数据库CREATEDATABASEXSCJKONPRIMARY(NAME=XSCJ_1,FILENAME=‘D:\SQL\XSCJ_1.MDF‘,

SIZE=50,MAXSIZE=UNLIMITED,FILEGROWTH=20%),FILEGROUPU1(NAME=XSCJ_2,FILENAME=‘D:\SQL\XSCJ_2.NDF‘,

SIZE=20,MAXSIZE=500,FILEGROWTH=64)LOG

ON(NAME=XSCJ_LOG,FILENAME=‘D:\SQL\XSCJ_LOG.LDF‘,

SIZE=50,MAXSIZE=UNLIMITED,FILEGROWTH=10%)131模块三创建和管理数据库动手操作4:用命令修改数据库任务1:将XSCJK数据库中的文件组U1更名为U2。任务2:将XSCJK数据库中次数据文件的初始大小改为50MB,最大容量为不受限制。132ALTERDATABASEXSCJKMODIFYFILEGROUPU1NAME=U2ALTERDATABASEXSCJKMODIFYFILE

(NAME=XSCJ_2,SIZE=50,FILEGROWTH=UNLIMITED)模块三创建和管理数据库动手操作4:用命令修改数据库任务3:将XSCJK数据库中的次数据文件逻辑名修改为DATA。任务4:将数据库XSCJK的数据库名改为XSCJ。133ALTERDATABASEXSCJKMODIFYFILE(NAME=XSCJ_2,NEWNAME=DATA)ALTERDATABASEXSCJKMODIFYNAME=XSCJ模块三创建和管理数据库动手操作5:删除数据库

任务1:用命令方式删除DB数据库。134DROPDATABASEDB模块三创建和管理数据库动手操作6:用界面方式分离和附加数据库要求:将XSCJ数据库从A机复制到B机中。任务1:在A机上,将XSCJ数据库与服务器分离。方法:右击“XSCJ数据库”图标→“任务”→“分离…”→…

任务2:在A机上,将XSCJ数据库中的数据文件和日志文件复制到B机的D盘。任务3:将分离出来的数据库附加到B机上。方法:在“对象资源管理器”中,右击“数据库”图标→“附加…”→…135模块三创建和管理数据库本课小结查看系统数据库信息用界面方式创建和修改数据库用命令创建数据库用命令修改数据库用命令删除数据库用界面方式分离与附加数据库136SP_HELPDB

[库名]CREATEDATABASE库名ALTERDATABASE库名DROPDATABASE库名[,…n]模块三创建和管理数据库课外作业

预习:创建和管理数据表137模块三创建和管理数据库单击添加标题Clicktoaddacaption单击添加标题Clicktoaddacaption单击添加标题ClicktoaddacaptionTHANKS138模块三创建和管理数据库模块四创建和管理数据表学习内容认识SQLServer数据表创建数据表创建表约束学习目标知识目标了解SQLServer的数据类型理解列属性、列约束的含义理解约束的类型能力目标掌握数据表的设计方法掌握数据表和约束的创建模块四创建和管理数据表140认识SQLServer数据表任务1:了解数据表的类型系统表用于存储服务器的配置信息、数据表的定义信息的一组特殊表,称为系统表。用户表已分区表已分区表是将超大表按照某种业务规则分别存储在不同的文件组中,以提高性能和方便管理。临时表临时表是一种因为暂时需要所产生的数据表,它存放在Tempdb数据库中,当使用完临时表且关闭连接后,系统会自动删除临时表。模块四创建和管理数据表141认识SQLServer数据表创建数据表前应考虑的问题表中要存储的数据类型(用来确定数据的取值范围)表中需要的列数、每列的类型列是否可以为空是否需要在列上使用约束、默认值和规则需要使用什么样的索引哪些列作为主键、哪些列作为外键哪些用户拥有访问该数据库或表的权限模块四创建和管理数据表142表约束认识SQLServer数据表任务2:了解SQLServer数据类型模块四创建和管理数据表143数据类型定义标识存储长度整数型bigintintsmalinttinyint占8字节,取值范围为-263~263-1占4字节,取值范围为-231~231-1占2字节,取值范围为-215(-32,768)~215-1(32767)占1字节,取值范围为0~255精确小数型decimal(p[,s])mumeric(p[,s])固定精度和小数位数,最大存储大小基于精度而变化。P(精度)必须是从1到最大精度38之间的值。使用最大精度时,有效值的范围-1038+1~1038-1近似小数型float(n)存储长度可变,取值范围为-1.79E+308至-2.23E-308、0、2.23E-308至1.79E+308real(n)占4字节,-3.40E+38至-1.18E-38、0以及1.18E-38至3.40E+38认识SQLServer数据表任务2:了解SQLServer数据类型模块四创建和管理数据表144数据类型定义标识存储长度货币型moneysmallmoney占8字节,取值范围为-263~263-1,精确到4个小数位占4字节,取值范围为-231~231-1(2147483648~2147483647)位类型bit占1字节,存放逻辑值,只能存取0、1、NULL字符型char(n)varchar(n)text存放固定长度的字符数据,n的取值范围为1~8000存放可变长度的字符数据,n为取值范围为1~8000存放最大长度为231-1的字符数据Unicode宽字符型nchar(n)ncarchar(n)ntext存放固定长度的字符数据,n的取值范围为1~4000存放可变长度的字符数据,n的取值范围为1~4000存放最大长度为230-1的字符数据认识SQLServer数据表任务2:了解SQLServer数据类型模块四创建和管理数据表145数据类型定义标识存储长度日期类型date占3字节,日期范围为0001-1-1日~9999-12-31时间类型time占5字节,时间范围为00:00:00.0000000~23:59:59.9999999日期时间类型datetime占8字节,日期范围为从1753年1月1日~9999年12月31日,时间范围为00:00:00到23:59:59.997,精确到.000、.003或.007秒三个增量datetime2占6~8字节,支持更大的日期范围和更高的时间精度,精确到100纳秒。日期范围为从0001年1月1日~9999年12月31日,时间范围为00:00:00到23:59:59.9999999smalldatetime占4字节,日期范围为1900年1月1日~2079年6月6日,时间范围为00:00:00到23:59:59,精确到分钟datetimeoffset占10字节,类似datetime2,时间在内部存储为UTC时间(可识别时区)认识SQLServer数据表任务2:了解SQLServer数据类型模块四创建和管理数据表146数据类型定义标识存储长度时间戳型timestamp占8字节,给定数据库的唯一特定值二进制型binary(n)varbinary(n)存放固定长度二进制数据,n的取值范围为1~8000存放变长二进制数据,n的取值范围为1~8000图像类型image存放最大长度为231-1的二进制数据创建数据表和约束任务1:认识CREATETABLE语句CREATETABLE表名(列定义列约束[,…n])[ON{文件组名|DEFAULT}]模块四创建和管理数据表147创建数据表和约束任务2:创建有列属性的表非空值属性默认时,列的值为NULL,表示允许该列为空。如果值为NOTNULL,表示不允许该列为空。默认值属性可以给列设置默认值。如果某列已设置了默认值,当用户在数据表中插入记录时,没有给该列输入数据,那么系统会自动将默认值填入该列。标识属性可以将列设置为标识属性。如果某列已设置为标识属性,那么系统会自动地为该列生成一系列数字。该些数字在该表中能唯一地标识一行记录。模块四创建和管理数据表148创建数据表和约束实例1:在XSCJ数据库中,创建一个数据表KCB1,该表中的“序号”列为标识列。CREATE

TABLEXSCJ.DBO.KCB1(

序号

INT

IDENTITY

,

课程号

CHAR(4

)

,

课程名

VARCHAR(20)

,

授课教师

VARCHAR(10)

,

开课学期

TINYINT

,

学时

TINYINT

,

学分

TINYINT)模块四创建和管理数据表149数据库名、所有者名可省略USEXSCJCREATETABLEXSQK设置标识列,初值和增量均为1时可省去参数不写默认情况下为空值创建数据表和约束任务3:创建有列约束的表约束的含义约束定义了关于

温馨提示

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

评论

0/150

提交评论