实验五 SQL的视图(优.选)
实验五 SQL(四)SQL的常用数据更新操作
实验五 SQL(四)SQL的常用数据更新操作实验
报告
实验目的:
1. 熟练掌握SQL的常用数据更新操作。
2. 熟练应用INSERT,UPDATE,DELETE语句。
3. 掌握更新操作的各种格式。
实验内容:
1. 应用INSERT,UPDATE,DELETE语句进行更新操作;
1)插入如下学生记录(学号:95030,姓名:李莉,年龄:18)2)插入如下选课记录(95030,1)
3)计算机系学生年龄改成20
4)数学系所有学生成绩改成0
5)把低于总平均成绩的女同学成绩提高5分
6)修改2号课程的成绩,若成绩小于75分提高5%,成绩大于75时提高
7) 4%(两个语句实现,注意顺序)
8)删除95030学生信息
9)删除SC表中无成绩的记录
10)删除张娜的选课记录
11)删除数学系所有学生选课记录
12)删除不及格的学生选课记录
13)查询每一门课程成绩都大于等于80分的学生学号、姓名和性别,把值送往另一个已经存在的基本表STU(SNO,SNAME,SSEX)中
14)把所有学生学号和课程号连接追加到新表中
15)所有学生年龄增1
16)统计3门以上课程不及格的学生把相应的学生姓名、系别追加到另外一个表中
2.熟练掌握INSERT,UPDATE,DELETE语句并能综合应用;
实验步骤与过程:
1.创建学生表student、课程表course和选课表SC,可以用使用实验一中已经建立的表和数据;
2.并输入数据,设置主键;
3.建立索引及三表之间关系;
4.打开access的查询,进行查询sql指令进行输入;
5.按照SQL语句格式及题目要求输入语句应用
实验五 视图的创建和使用
实验五视图的创建和使用
5.1概述
5.1.1任务一理解视图的概念
视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据集合形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。
对其中所引用的基表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或其他数据库的一个或多个表,或者其他视图。视图被定义后便存放在数据库中,对视图中的数据的操作与对表的操作一样,可以对其进行查询、修改和删除,但对数据的操作要满足一定的条件。当对视图所看到的数据进行修改时,相应的基表的数据也会发生变化,同时,若基表的数据发生变化,这种变化也会自动地反映到视图中。
5.1.2任务二理解视图的优点
用户可以根据自己的实际需要创建视图,使用视图有很多优点,主要有以下几点:
1、简单性
视图可以屏蔽数据的复杂性,简化用户对数据库的操作。使用视图,用户可以不必了解数据库的结构,就可以方便地使用和管理数据。那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。
2、逻辑数据独立性
视图可以使应用程序和数据库表在一定程度上独立。如果没有视图,应用一定是建立在表上的。有了视图之后,程序可以建立在视图之上,从而程序与数据库表被视图分割开来。
3、安全性
通过视图用户只能查询和修改他们所能见到的数据。数据库中的其他数据则既看不见也取不到。
5.2创建视图
创建视图的方法有三种:在创建视图前请考虑如下原则:
只能在当前数据库中创建视图.
实验五 SQL SERVER安全性
go
createuserTomforloginL1
useProject
go
createuserMaryforloginL2
useProject
go
createuserJohnforloginL3
3.授予用户John创建表和视图的权限。
grantcreatetable,createview
(5)对用户Mary增加SPJ表的SELECT权力。
grantselect
onSPJ
toMary
验证:
select*
fromSPJ
wherePno='P1'
(6)拒绝Mary对表P的INSERT权限。
denyinsert
onP
toMary
验证:
不允许直接插入:
insert
intoP
values('P10','转盘','黑','10')
toJohn
验证:
创建架构:
createschemaS3
authorizationJohn
创建表:
createtableS3.P1
(Povarchar(10),
Pnamevarchar(20),
)
创建视图:
createviewS3.V1(Pno,Pname,Color)
实验5-视图
实验五视图
1实验目的
(1)掌握SQL视图语句的基本使用方法,如CREATE VIEW、DROP VIEW。
(2)掌握视图更新、WITH CHECK OPTION等高级功能的使用。
2实验内容
2.1 掌握SQL视图语句的基本使用方法
(1)创建视图(省略视图列名)。
(2)创建视图(不能省略列名的情况)。
(3)删除视图(RESTRICT / CASCADE)。
2.2 掌握视图更新和WITH CHECK OPTION的高级使用方法
(1)创建视图(WITH CHECK OPTION),并利用INSERT、DELETE和UPDATE语句加以验证。(2)创建一个行列子集可更新视图,并利用INSERT、DELETE和UPDATE语句加以验证。(3)创建一个不可能更新的视图,并利用更新语句验证该视图不可更新。
3实验要求
(1)深入复习教材第三章SQL有关视图语句。
(2)根据书上的例子,针对TPCH数据库模式设计各种视图语句,每种类型视图语句至少要设计一个,描述清楚视图要求,运行你所设计的视图语句,并截图相应的实验结果,每幅截图并要有较为详细的描述。也可以按照附1所列示例做实验。
(3)实验步骤和实验总结中要详细描述实验过程中出现的问题、原因和解决方法。
(4)思考题:KingbaseES把视图的定义存储在那个系统表中?如何查看某个视图的定义?
4实验步骤
4.1 掌握SQL视图语句的基本使用方法
(1)创建视图(省略视图列名)。
(2)创建视图(不能省略列名的情况)。
(3)删除视图(RESTRICT / CASCADE)。
SQL数据库实验五答案
(1)
insert
into Student(Sno,Sname,Ssex,Sdept)
values('06011','王文娟','女','计算机')
(2)
不能将值NULL 插入列'Sno',表'AA.dbo.Student';列不允许有Null 值。INSERT 失败。语句已终止。
因为Sno为主码,主码不能为空。
(3)
create table CP_Student
(Sno char(5)Not Null,
Sname varchar(10)Null,
Ssex char(2)Null,
Sbirth smalldatetime Null,
Sdept varchar(20)Null,
Total decimal(4,1)Null)
(4)
insert
into CP_Student
select*
from Student
where Sdept='计算机'OR Sdept='外国语'
(5)
update Teacher
set Tname='王芳龄'
where Tname='王芳'
(6)
update Teacher
set Tpay=Tpay*(1+0.02)
where Tprof='副教授'
(7)
update SC
set Grade=Grade+1
where Sno=(select Sno
from Student
where Sname='李强')
(10)
delete
from Student
where Sno='06011'
(11)
\delete
from CP_Student
where Sbirth<='1987'
实验五SQL语言-数据更新操作报告
实验五SQL语言-数据更新操作报告
SQL(结构化查询语言)是一种被广泛使用的关系型数据库管理系统查询和编程语言,可以用来操纵数据和其他数据库对象的结构和内容。本实验采用SQL语言进行对关系型数
据库表中的数据更新操作,经过实验室所做操作、实验结果、验证和总结,最终更新操作
成功。
实验内容:
1. 使用查询语句检查关系表: 首先使用“SELECT * FROM table_name”这样的语句
检查表中的内容,确定需要更新的信息,以及数据的形式等。这样可以确保编写更新语句时,能够正确地更新所需的信息。
2. 编写更新语句: 将检查的结果作为基础,用“UPDATE table_name set
column_name = value”这样的语句来修改表中数据项的值,确认这些修改后的值是符合
要求的。
3. 在SQL Shell中运行更新语句: 将上述步骤得到的更新语句复制到SQL Shell中,运行,并检查结果。
4. 更新操作验证: 更新操作完成后,应在SQL Shell中通过“SELECT * FROM
table_name”这样的语句,对关系表中的数据项进行再次检查,以确认更新操作的正确性。
5. 总结实验: 通过上述步骤,在关系型数据库表中进行了更新操作,运用了SQL语
言相关的操作,并能够准确高效的完成数据更新。
本次实验使用SQL语言进行对关系型数据库表中的数据更新操作,通过查询语句、编
写更新语句、在SQL Shell中运行语句、更新操作验证和总结实验等步骤,最终成功地实
现了数据更新操作。这也体现出SQL语言在数据库操作中的强大功能,也让我们对关系型
实验5实验报告
实验5实验报告
学号:姓名:陈家凤
实验五SQL语⾔
⼀、⽬的与要求
1.掌握SQL语⾔的查询功能;
2.掌握SQL语⾔的数据操作功能;
3.掌握对象资源管理器建⽴查询、索引和视图的⽅法;
⼆、实验准备
1.了解SQL语⾔的查改增删四⼤操作的语法;
2.了解查询、索引和视图的概念;
3.了解各类常⽤函数的含义。
三、实验内容
(⼀)SQL查询功能
使⽤提供的studentdb数据库⽂件,先附加到⽬录树中,再完成下列题⽬,SQL命令请保存到脚本⽂件中。1.基本查询
(1)查询所有姓王的学⽣的姓名、学号和性别
Select St_Name,St_Sex,St_ID
From st_info
Where St_Name like'王%'
图5-1
(2)查询全体学⽣的情况,查询结构按班级降序排列,同⼀班级再按学号升序,
并将结果存⼊新表new中
select*into new
from st_info
order by Cl_Name desc,st_ID asc
图5-2
(3)对S_C_info表中选修了“体育”课的学⽣的平均成绩⽣成汇总⾏和明细
⾏。(提⽰:⽤compute汇总计算)
因2014版本已不⽀持compute关键字,所以选择⽤其他⽅式。
Select c_no,score
From s_c_info
Where c_no=
group by c_no,score
图5-3
2.嵌套查询
(1)查询其他班级中⽐“材料科学0601班”的学⽣年龄都⼤的学⽣姓名和年
龄
select st_name,born_date
from st_info
where cl_name!='材料科学0601班'and born_date<(select min(born_date) from st_info where cl_name='材料科学0601班')
数据库实验五 索引和视图
华中科技大学
《数据库技术与应用》实验报告
专业班级:学生姓名:学号:
实验地点:指导教师:
实验日期时间:
一、实验项目名称:索引和视图
二、实验学时:
三、实验目的:
1.学会使用SQL Server管理平台和Transact-SQL语句CREATE INDEX创建索引。
2.学会使用SQL Server管理平台查看索引。
3.学会使用SQL Server管理平台和Transact-SQL语句DROP INDEX删除索引。
4.掌握使用SQL Server管理平台和Transact-SQL语句CREATE-VIEW创建视图的用法。
5.了解对索引和视图更名的系统存储过程sp_rename的用法。
6.掌握使用Transact-SQL语句ALTER VIEW修改视图的方法。
7.了解删除视图的Transact-SQL语句DROP VIEW的用法。
四、实验工具或环境五、实验内容、步骤、代码和结果:
0. 创建studentsdb数据库及其相应表,并录入数据。
在SQL Server管理平台上,点击“新建查询”打开查询编辑器窗口,复制粘贴附件“创建数据库代码”中的代码到查询编辑器窗口,运行即可生成相关数据库和表,并有相应的数据。
1.分别使用SQL Server管理平台和Transact-SQL语句为studentsdb数据库的student_info表和
curriculum表创建主键索引。
alter table student_info alter column学号char(4)not null;
alter table student_info
5-视图及索引
实验报告
课程名称___________ ______________ 实验名称视图及索引
系别___________ ___ ____ 专业班级___________ _______ 指导教师________________学号___________ _ 姓名_______ ____实验日期_______ ______实验成绩________ __
一、实验目的
1.了解视图和索引的含义。
2.掌握创建视图和索引的方法。
二、实验环境
1.硬件环境:微机
2.软件环境:Windows,Sql server2000或更高版本
三、实验内容及步骤
题目根据要求编写以下SQL查询语句,并对运行结果截图
第一题视图
1.1.打开Test数据库,创建一个视图test_orders,要求统计病人表中每个年龄的病人数,显示的信息有病人
年龄,每个年龄段的病人数。
1.2.利用test_orders视图,查看的每个年龄段的病人年龄,每个年龄段的病人数。
1.3.用sp_helptext命令或从系统表syscomments查看视图的内容。
2.打开Test数据库,创建一个视图test_orders1,要求从病历表中,查询住院日期在2008年期间的所有病人编号与病人姓名。
3.打开Test数据库,创建一个视图test_orders2,要求统计每个病人的病人编号,病人姓名以及结算总金额。
4.打开Test数据库,创建一个视图test_order3,要求从病历表中,显示结算总金额最大的前2名病人的病人编号和结算总金额。
5.将视图test_order3进行修改,进行加密处理。
实验五 视图的应用完整版 pdf
实验五视图的应用
5-1在实验二建立的基础表的基础上,设计和建立视图1、投影
create view投影as
select教师编号,姓名
from教师;
2、选择
create view选择as
select*
from教师
where职称='教授';
3、投影和选择
select*from投影和选择;
select*
from投影join选择
on投影.教师编号=选择.教师编号; select*
from投影
where投影.教师编号in(select教师编号from虚字段where工资>=200)
create view连接as
select教师编号,职称,课程编号,课程名称
from教师join课程
on教师.教师编号=课程编号;
5、嵌套
create view嵌套as
select*
from教师where教师编号in(select责任教师from课程where性别='男')
create view虚字段(教师编号,姓名,工资)as select i.教师编号,i.姓名,i.工资
from教师i,课程j
where i.教师编号=j.责任教师;
5-2分别在定义的视图上设计一些查询
一般简单查询:
select*from投影和选择;
连接查询:
select*
from投影join选择
on投影.教师编号=选择.教师编号;
嵌套查询:
select*
from投影
where投影.教师编号in(select教师编号
from虚字段where工资>=200)
^_^^_^^_^^_^^_^^_^^_^^_^^_^_^^_^宁十一^_^^_^^_^^_^^_^^_^^_^^_^^_^^_^_^^_^^_^
数据库实验五:视图的应用
数据库实验五:视图的应用
一、实验目的与要求:
1.实验目的
(1)理解视图的概念;
(2)掌握视图的使用方法。
(3)理解视图和基本表的异同之处。
2.实验要求
(1)参照实验五中完成的查询,按如下要求设计和建立视图:
1)基于单个表按投影操作定义视图。
2)基于单个表按选择操作定义视图。
3)基于单个表按选择和投影操作定义视图。
4)基于多个表根据连接操作定义视图。
5)基于多个表根据嵌套操作定义视图。
6)定义含有虚字段的视图。
(2)分别在定义的视图设计一些查询(包括基于视图和基本表的连接或嵌套查询)。
(3)在定义的视图上进行插入、更新和删除操作,分情况讨论哪些操作可以成功完成,哪些操作不能完成,并分析原因。
(4)在实验报告中要给出具体的视图定义要求和操作要求,并针对各种情况做出具体的分析和讨论。
二、实验内容
1、实验原理
(1)视图是用SQL SELECT查询定义的,创建视图命令格式如下:
CREATE VIEW <视图名> AS <SELECT-查询块>
(2)删除视图的命令格式如下:
DROP VIEW <视图名>
2、实验步骤与结果
(1)调出SQL Server2005软件的用户界面,进入SQL SERVER MANAGEMENT STUDIO。
(2)输入自己编好的程序。
(3)检查已输入的程序正确与否。
(4)运行程序,并分析运行结果是否合理和正确。在运行时要注意当输入不同的数据时所得到的结果是否正确。
(5)输出程序清单和运行结果。
(1)参照实验五中完成的查询,按如下要求设计和建立视图:
实验五__视图的创建与使用
视图的创建与使用
一、实验目的
(1)理解视图的概念。
(2)掌握创建视图、测试、加密视图的方法。
(3)掌握更改视图的方法。
(4)掌握用视图管理数据的方法。
二、实验内容
1.创建视图
(1)创建一个名为stuview2的水平视图,从数据库Student_info的Student表中查询出性别为“男”的所有学生的资料。并在创建视图时使用with check option。(注:该子句用于强制视图上执行的所有修改语句必须符合由Select语句where中的条件。)
create view stuview2
as
select*from Student
where Sex='男'
with check option
查看视图:
select*from stuview2
(2)创建一个名为stuview3的投影视图,从数据库Student_info的Course表中查询学分大于3的所有课程的课程号、课程名、总学时。并在创建时对该视图加密。(提示:用with ENCRYPTION关键子句)
create view stuview3
with ENCRYPTION
as
select Cno,Cname,Total_perior from Course
where Credit>3
查看视图:
select*from stuview3
(3)创建一个名为stuview4的视图,能检索出“051”班所有女生的学号、课程号及相应的成绩。
create view stuview4
as
select*from SC
where Sno=(
select Sno from Student
实验五答案SQL语句查询
1、列出所有不姓刘的所有学生
select sname,sno
from student
where sname not like'刘%'
2、列出姓“沈“且全名为3个汉字的学生
select sname
from student
where sname like'沈____'
3、显示在1985年以后出生的基本信息
select sno学号,sname姓名,出生年份=year(getdate())-sage
from student
where year(GETDATE())>1985
4、按照“性别、学号、姓名、年龄、院系“的顺序列出学生信息,其中性别按以下规定显示:性别为男显示为男生,性别为女显示为女生,其它显示为”条件不明“
select ssex=
case
when ssex='男'then'男生'
when ssex='女'then'女生'
else'情况不明'
end,sno,sname,sage,sdept
from student
5、查询出课程名含有‘数据‘字串的所有课程基本信息
select sno,o,cname,grade,ccredit
from sc,course
where cname like'数据%'and o=o
6、显示学号第八位或者第九位是1、2、3、4或9的学生的学号、姓名、性别、年龄、及院系select sno,sname,ssex,sage,sdept
from student
where sno like'2005150[1-4]%'or sno like'2005150[0-9][1-4]'
sql实验5 视图
一.实验目的
1.掌握创建视图的SQL语句的用法。
2.掌握使用企业管管理器创建视图的方法。
3.掌握使用创建视图向导创建视图的方法。
4.掌握查看视图的系统存储过程的用法。
5.掌握修改视图的方法。
二.实验内容
1. 创建视图
(1) 使用企业管理器创建视图
①在EDUC库中以“student”表为基础,建立一个名为“V_计算机系学
3. 将各系学生人数,平均年龄定义为视图V_NUM_AVG
4. 定义一个反映学生出生年份的视图V_YEAR
5. 将各位学生选修课程的门数及平均成绩定义为视图V_AVG_S_G
6. 将各门课程的选修人数及平均成绩定义为视图V_AVG_C_G
二.使用视图
2.查询以上所建的视图结果。
3.查询平均成绩为90分以上的学生学号、姓名和成绩;
步骤:右键点击视图名称,选择“修改”
(2) 使用SQL语句修改视图
在查询分析器中使用更改视图的命令将上面建立的视图“V_计算机系学
生”更名为“V_计算机系男生”。
步骤:新建查询-输入:sp_renameV_计算机系学生, V_计算机系男生
6. 删除视图
(3) 使用企业管理器删除视图
用企业管理器删除视图“V_计算机系学生”
FROM student,course,student_course
数据库有关视图创建的图形和sql两种方式
实验五视图的创建和使用
姓名:崔金鑫学号12011243947
1.(1)创建视图V_StudentBorrrowInfo,内容是计算机专业的学生的借书情况,包含每个学生的借书证号、姓名、专业、借书次数、最近一次借书时间。(包括图形界面方式和T-SQL方式)
a、界面方式
b、T-SQL方式
(2)使用视图V_StudentBorrrowInfo,查询借书次数最多的前3个人,按降序排列。
(3)使用视图V_StudentBorrrowInfo删除某行数据,检测是否能删除,将结果截图。
2.(1)创建视图V_StudentComputer,内容是计算机专业的学生情况(包括借书证号、姓名、专业、性别、出生时间、借书次数),要求先不用with check option项做(2)的内容,再用with check option
项做(2)的内容;
(2)向视图中插入数据
用with check option;(1)
(2)
(3)从视图中删除一行数据
实验五SQL的视图
更新视图的删除和修改操作
删除操作:使用 DELETE语句删除视 图中的数据,类似 于删除表中的数据
修改操作:使用 UPDATE语句修改视 图中的数据,类似 于修改表中的数据
注意事项:更新视 图时需要注意视图 的定义和来源表的 数据是否允许更新
更新视图与源表的关 系:更新视图时,如 果视图与源表存在关 联,需要谨慎处理, 避免数据不一致
视图的更新操作
更新视图的基本语法
使 用 U P D AT E 语 句 更 新 视 图 使用INSERT语句向视图中插入数据 使用DELETE语句从视图中删除数据 注意事项:更新视图时需要注意数据的一致性和完整性
更新视图的限制条件
视图不是由UNION, MINUS, CROSS JOIN或FULL OUTER JOIN创建的。 视图不包含GROUP BY子句。 视图不包含DISTINCT关键字。 视图不包含子查询。
提高安全性:视图可以隐藏某些列或行,限制用户对数据的访问权限,保 护敏感数据不被泄露。
增强数据抽象:视图可以抽象底层数据结构,使得应用程序或用户无需关 心底层数据的实际存储和组织方式。
提高性能:在某些情况下,视图可以提高查询性能,因为查询优化器可以 利用视图定义中的索引和过滤条件来优化查询。
视图的缺点
SELECT 列名1, 列名2, ... FROM 视图名 WHERE 条件 使用聚合函数进行查询,如 COUNT、SUM、AVG 等 视图查询时需要注意视图的定义和来源表的数据结构 查询视图时可以使用 JOIN 操作连接多个表
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五 SQL的视图
1、实验目的
熟悉SQL支持的有关视图的操作,能够熟练使用SQL语句来创建需要的视图,对视图进行查询和取消视图。
2、实验内容
(1)定义常见的视图形式,包括:
●行列子集视图
●WITH CHECK OPTION的视图
●基于多个基表的视图
●基于视图的视图
●带表达式的视图
●分组视图
(2)通过实验考察WITH CHECK OPTION这一语句在视图定义后产生的影响,包括对修改操作、删除操作、插入操作的影响。
(3)讨论视图的数据更新情况,对子行列视图进行数据更新。
(4)使用DROP语句删除一个视图,由该视图导出的其他视图定义仍在数据字典中,但已不能使用,必须显式删除。同样的原因,删除基表时,
由该基表导出的所有视图定义都必须显式删除。
3、实验步骤
(1)创建一个行列子集视图CS_View,给出选课成绩合格的学生的编号、教师编号、所选课程号和该课程成绩。
create view CS_View
as
select wjy_Sno,wjy_Tno,wjy_Cno,wjy_Score
from Wangjy_Reports
where wjy_Score>=60
with check option
(2)创建基于多个基本表的视图SCT_View,这个视图由学生姓名和他所选修的课程名及讲授该课程的教师姓名构成。
(3)创建带表达式的视图EXP_View,由学生姓名及所选课程名和所有课程成绩都比原来多5分这几个属性组成。
(4)创建分组视图Group_View,将学生的学号及他的平均成绩定义为一个视图。
(5)创建一个基于视图的视图,基于(1)中建立的视图,定义一个包括学生编号、学生所选课程数目和平均成绩的视图VV_View。
create view VV_View
select wjy_Sno,wjy_Cno,AVG(wjy_Score)AVG_Score
from CS_View
group by wjy_Sno,wjy_Cno
having AVG(wjy_Score)>= 60
(6)查询所有选修课程“数据库原理及其应用”的学生姓名。
select wjy_Sname
from Wangjy_Students
where wjy_Sno in
(select wjy_Sno
from Wangjy_Reports
where wjy_Cno in
(select wjy_Cno
from Wangjy_Courses
where wjy_Cname='数据库原理及其应用'))
(7)插入元组(S52,T02,C02,59)到视图CS_View中。若是在视图的定义中存在WITH CHECK OPTION字句对插入操作由什么影响。
不用WITH CHECK OPTION能完成插入,但是用select* from CS_View命令则看不到刚插入的元祖。
(8)将视图CS_View(包括定义WITH CHECK OPTION)中,所有课程编号为C01的课程的成绩都减去5分。这个操作数据库是否会正确执行,为什么?如果加上5分(原来95分以上的不变)呢?
(9)在视图CS_View(包括定义WITH CHECK OPTION)删除编号S03学生的记录,会产生什么结果?
(10)删除视图SCT_View和视图CS_View
drop view SCT_View,CS_View
最新文件---------------- 仅供参考--------------------已改成word文本--------------------- 方便更改