实验3 数据查询与更新

合集下载

实验三SQL查询与更新实验(SQL3学时)

实验三SQL查询与更新实验(SQL3学时)

实验三SQL查询与更新实验(SQL3学时)实验三 SQL查询与更新实验(SQL 3学时)§3.1实验目的与要求(1)熟悉SQL DML语言,能够完成基本的表操作;(2)掌握SELECT语句进行单表查询的方法;(3)掌握SELECT语句进行多表连接查询的方法;(4)了解嵌套查询的方法;(5)了解外连接查询的方法;(6)了解集合函数的使用方法;(7)了解表更新操作的使用方法。

§3.2 实验系统及软件要求:1、WindowsXP操作系统;2、SQL SERVER 2005中文版软件;§3.3 实验内容§3.3.1简单SELECT语句1. SELECT的语法格式SELECT 语句的基本语法格式如下:SELECT <字段列表>[INTO 新表名]FROM <表名/视图名列表>[WHERE 条件表达式][GROUP BY 列名列表] [HAVING 条件表达式][ORDER BY列名1[ASC|DESC],列名2 [ASC|DESC],...,列名n[ASC|DESC]][COMPUTE 行聚合函数名(统计表达式)[ ,…n] [BY 分类表达式[,…n]]]其中各子名说明如下:(1)字段列表用于指出要查询的字段,也就是查询结果中包含的字段的名称。

(2)INTO子句用于创建一个新表,并将查询结果保存到这个新表中。

(3)FROM子句用于指出所要进行查询的数据来源,即来源于哪些表或视图的名称。

(4)WHERE子句用于指出查询数据时要满足的检索条件。

(5)GROUP BY子句用于对查询结果分组。

(6)ORDER BY子句用于对查询结果排序。

SELECT语句的功能如下:从FROM列出的数据源表中,找出满足WHERE检索条件的记录,按SELECT子句的字段列表输出查询结果表,在查询结果表中可进行分组与排序。

说明:在SELECT语句中SELECT子句与FROM子句是不可少的,其余的是可选的。

数据查询与更新实验报告

数据查询与更新实验报告

信息工程学院实验报告课程名称:《数据库原理》Array实验项目名称:数据查询与更新一、实验目的:(1)观察查询结果, 体会SELECT语句实际应用;(2)要求学生能够在查询分析器中使用SELECT语句进行简单查询。

(3)熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。

(4)熟悉使用UPDATE/INSERT/DELETE/ALTER语句进行表操作;二、实验设备与器件Win7 +Sql server 2008三、实验内容与步骤根据实验一所创建数据库SPJ,在查询分析器中用sql语句完成以下题目(1)找出所有供应商的姓名和所在城市。

(2)找出所有零件的名称、颜色、重量。

(3)找出使用供应商S1所供应零件的工程号码。

(4)列出所有地址在北京的供应商姓名。

(5)模糊查询,找出名字包含“螺丝”两个字且颜色为红色的零件名称。

(6)统计不同城市工程项目的数量,结果显示“城市”、“工程项目数合计”。

(7)找出工程项目J2使用的各种零件的名称及其数量。

(8)找出上海厂商供应的所有零件号码。

(9)出使用上海产的零件的工程名称。

(10)统计不同地区供应商所供应的零件总数量,结果显示供应商地区、零件总量。

(11)分类统计供应商“盛锡”,不同零件的供应量,结果显示零件名称、零件数量。

(12)找出没有使用天津产的零件的工程号码。

(13)查询至少用了供应商S1提供的全部零件的工程号JNO。

(14)把全部红色零件的颜色改成蓝色。

(15)由S5供给J4的零件P6改为由S3供应。

(16)从供应商关系中删除供应商号是S2的记录,并从供应情况关系中删除相应的记录。

(17)请将(S1,J6,P4,200)插入供应情况关系。

(18)为S表添加供应商,供应商编号:S6,供应商名称:伟星,城市:北京,状态暂未定。

(19)为P表添加零件,零件编号:P7,零件名称:凹轮,颜色:蓝,重量:20。

(20)将S、SPJ表进行左外连接,查询结果中带有null值的表示什么含义?(21)将SPJ、P表进行右外连接,查询结果中带有null值的表示什么含义?(22)在P表中加入属性零件产地CITY(CHAR型)。

实验三数据查询(参考答案)

实验三数据查询(参考答案)

实验三数据查询(参考答案)实验目的□学会利用T_SQL语句中SELECT进行数据查询。

□掌握利用T_SQL 语句进行数据查询的基本方法。

实验内容有以下数据表表名:tudent属性列t_idt_nmt_e某t_birtht_coret_datet_fromt_dpidt_mnt使用T-SQL语句进行数据查询(注:学生班级为学号的前6位)1.显示所有学生的学号、姓名、性别、入学年份和班级(学号前6位)。

Selectt_id学号,t_nm姓名,t_e某性别,year(t_date)入学年份,left(t_id,6)班级Fromtudent2.显示前25%条学生记录信息。

Selecttop25percent某fromtudent3.查询tudent表中2022年及以后入学的学生信息。

Select某fromtudentwhereyear(t_date)>=20224.查询选修了1002号课程且成绩在60以下的学生学号。

Selecttudent.t_idfromtudentjoinlt_coueontudent.t_id=lt_coue. t_idWherec_id='1002'andcore<605.查询所有由三个字组成的“王”姓学生信息。

Select某fromtudentwheret_nmlike'王__'6.查询选修了1001号课程且成绩在60到80之间的学生选课信息。

Select某fromlt_couewherec_id='1001'andcorebetween60and807.查询所有张,王,李,赵姓的学生的学号、姓名、性别。

Selectt_id,t_nm,t_e某fromtudentwheret_nmlike'[张王李赵]%'8.查询陕西籍学生,将结果保存在新表t_han某i。

Select某intot_han某ifromtudentwheret_fromlike'%陕西%'9.查询选修了“数据结构”课程的学生学号、姓名及课程成绩。

实验三 数据更新实验报告

实验三     数据更新实验报告

湖南第一师范学院信息科学与工程系实验报告课程名称:数据库技术与应用成绩评定:实验项目名称:实验三:数据更新指导教师:洪伟学生姓名:沈丽桃学号:10403080118 专业班级: 10教育1班实验项目类型:设计实验地点:科B201 实验时间:2012年 5 月 8 日一、实验目的与要求:1、掌握向表中插入数据;2、掌握修改表中的数据;3、掌握删除表中的数据;4、掌握创建视图、删除视图、查询视图与更新视图。

二、实验环境:(硬件环境、软件环境)1.硬件环境:奔ⅣPC。

2.软件环境:Windows2000 操作系统,SQL Server 2000。

三、实验内容:(原理、操作步骤、程序代码等)任务:对上次实验所建立的SC数据库,完成以下任务:1、将书上所列例题全部验证一遍;P115-1242、在SC数据库上完成以下操作:1)求每一个学生的平均成绩,并把结果存入数据库中;2)将所有女生的数据库成绩置0;3)删除20岁以上学生的数据结构的选课记录;4)创建一个课程及其平均成绩的视图;5)删除上题中创建的视图。

6)建立男学生的视图schoolboy,属性包括学号、姓名和年龄。

7)在视图schoolboy中查询年龄为19的学生学号与姓名。

8)将学号为002的年龄改为21。

9)向男学生视图schoolboy中插入一个新的男生记录,其中学号为S6,姓名为MING,年龄为20。

10) 删除视图schoolboy中学号为003的记录。

11) 建立女学生的视图,属性包括学号、姓名、选修课程名和成绩。

12) 在女学生视图中查询平均成绩大于80分的学生学号与姓名。

13)删除女学生视图。

具体操作步骤及程序代码为:1.create table sno_grade(sno char(10)avg_grade smallint);第2 行: 'avg_grade' 附近有语法错误。

(列与列之间应该用逗号格开)修改为:create table sno_grade(sno char(10),avg_grade smallint);Insertinto sno_grade(sno,avg_grade)select sno,avg(grade)from scgroup by sno;2.update scset grade=0where sno in(select snofrom swhere s.ssex='女' and cno in(select cnofrom cwhere ame='数据库'));3. deletefrom scwhere sno in(select snofrom swhere sc.sno=s.sno and s.sage>20 and cno in(select cno from cwhere o=o and ame='数据结构'));4. create view c_avggradeasselect ame,avg(grade) avg_gradefrom c,scwhere o=ogroup by ame5. drop view c_avggrade6. create view schoolboyasselect sno,sname,sagefrom swhere ssex='男'7. select schoolboy.sno,snamefrom schoolboywhere schoolboy.sage='19'8. update schoolboySet sage=’21’where sn=’002’9. insertinto schoolboyvalues('S6','MING','20');10. deletefrom schoolboywhere sno='003';11. create view schoolgirlasselect s.sno,s.sname,ame,sc.gradefrom s,c,scwhere s.sno=sc.sno and o=o and s.ssex='女'12. select schoolgirl.sno,sname,avg(grade)from schoolgirlgroup by schoolgirl.sno,snamehaving avg(grade)>80;13. drop viw schoolgirl四、实验体会(实验中碰到的问题及解决方法等)在试验验证过程中,发现教材P116例4有错误,列名Sdept与Avg_age之间少了逗号。

数据查询和更新实验报告

数据查询和更新实验报告
测试过程:(实验中出现的问题、错误、解决方法)
实验总结; 通过这次实验,我更好地掌握了 SQL 语句的使用,掌握了数据的添加、删除、更新
方法,在实验的过程中遇到了一系列的问题,比如 SQL 语句语法的使用错误导致实验结 果出错,在解决问题的过程中掌握更多的知识,最典型的就是 like、is、=的区别与使用环 境。另外,通过这次实验,我认识到只有自己实际操作才能更好的了解自己的不足之处, 才能在学习的过程中更好的掌握知识。
course as course1 on course.cpno=o
--2.修改数据; -- 将表Student中所有学生的年龄加岁。 update student set sbirthday=sbirthday-365*2
--将表SC中所有学生的成绩降低% update sc
实验步骤:(算法描述、源程序、操作步骤和方法) set grade=grade*(1-0.1)
实验目的与要求: 掌握 SQL 的单表查询操作 掌握 SQL 的连接查询操作 掌握 SQL 的集合查询操作 了解数据库更新的意义,掌握添加数据、删除数据、更新数据的
基本方法。
验内容: 1.对学生-课程数据库,应用 SQL 语句实现以下查询:
1)查询数学系学生的学号和姓名; 2)查询选修了课程的学生学号; 3)查询选修了 1 号课程的学生学号和成绩,并要求结果按成绩降序 排列,如果成绩相同,则按学号升序排列; 4)查询选修了 1 号课程且成绩在 80~90 分之间的学生学号和成绩, 并将成绩乘以系数 0.8 输出; 5)查询数学系或计算机系姓张的学生的信息; 6)查询缺少了成绩的学生的学号和课程号; 7)查询每个学生的情况以及他(她)所选的课程; 8)查询学生的学号、姓名、选修的课程名称及成绩; 9)查询选修了“数据库”课程且成绩在 90 分以上的学生学号、姓名和 成绩; 10)查询每门课程的间接先行课的课程名称; 执行以下操作: 2.修改数据; 将表 Student 中所有学生的年龄加 2 岁。 将表 SC 中所有学生的成绩降低 10%。 3.删除数据;

实验三 视图,索引及数据更新

实验三 视图,索引及数据更新

实验三视图、索引及数据更新一、实验目的:熟练掌握索引的建立与删除的方法,熟练掌握SQL的应用,熟练掌握数据插入、修改和删除的使用,为后继学习作准备。

二、实验属性验证性三、实验要求1.预习教材第三章,熟悉SQL语句。

2.熟悉SQL Server环境。

3掌握建立索引的两种方法,即在基本表中建立和用命令方式建立。

4.掌握删除索引的方法。

5.掌握sql视图建立、修改和删除;6.掌握sql视图查询。

7.掌握sql数据插入、修改和删除语句的一般格式及使用方法。

四、实验原理SQL语言应用。

五、实验步骤(1) 启动SQL查询分析器;(2) 选择SQL SERVER后,按确认;(3) 选择数据库;(4) 验证如下例子:1 建立索引例3.1为学生选课数据库中的Students,Courses,Reports三个表建立索引。

其中Students表按Sno(学号)升序建唯一索引,Courses表按Cno(课程号)升序建唯一索引,Reports表按Sno(学号)升序和Cno(课程号)号降序建唯一索引。

例3.2 在基本表Students的Sname(姓名)和Sno(学号)列上建立一个聚簇索引,而且Students中的物理记录将按照Sname值和Sno值的升序存放。

2 删除索引例3.3删除基本表Reports上的索引。

3 建立视图例 3.4建立数学系学生的视图,并要求进行修改和插入操作时仍需保证该视图只有数学系的学生,视图的属性名为Sno,Sname,Sage,Sdept。

例3.5建立学生的学号(Sno)、姓名(Sname)、选修课程名(Cname)及成绩(Grade)的视图。

例3.6定义一个反映学生出生年份的视图。

4 删除视图例3.7删除例3.6建立的视图。

5 查询视图例3.8在数学系的学生视图中找出年龄(Sage)小于20岁的学生姓名(Sname)和年龄(Sage)。

例 3.9在例 3.5建立的视图中查询成绩在85分以上的学生学号(Sno)、姓名(Sname)和课程名称(Cname)。

实验三 数据库的查询

实验三    数据库的查询

实验三数据库的查询一、目的与要求1、掌握数据库对象的操作过程,包括创建、修改、删除2、熟悉表的各种操作,包括插入、修改、删除、查询3、熟练掌握常用SQL 语句的基本语法,加深对SQL和Transact-SQL语言的查询语句的理解。

二、实验设备与环境使用SQL Server 数据库管理系统提供的SSMS 和查询编辑器。

三、实验内容1、创建教材P82中的学生-课程数据库,并创建相应的数据表及完整性约束。

(需要在表中添加相应的记录(10条以上),请自行设计)2、在定义的“学生-课程数据库”中,使用T-SQL语句完成以下查询:(1)求计算机系(CS)学生的学号和姓名。

(2)求选修了数学的学生学号、姓名和成绩。

(3)求选修1号课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。

(4)查找选修课程的平均成绩位于前三名的学生的学号。

(5)查询计算机系的姓刘且单名的学生的信息。

(6)查询至少选修两门课程的学生学号。

(7)查询学生的学号、课程号以及对应成绩与所有学生所有课程的最高成绩的百分比。

(8)查询选修“数据库”课程,且成绩在80分以上的学生的学号和成绩。

(9)查询所有姓“王”的同学没有选修的课程名。

(请分别用exists和in完成该查询)(10)查询选修了全部课程的学生的姓名。

(请至少写出两种查询语句)(11)求选修了学生“200215121”所选修的全部课程的学生学号和姓名。

(12)查询每一门课的间接先修课。

(13)列出所有学生所有可能的选课情况。

(14)列出每个学生的学号及选修课程号,没有选修的学生的学号也一并列出。

(15)输出与“张立”同性别并位于同一个系的所有同学的姓名。

(请至少写出两种查询语句)(16)查询至少被两名男生选修的课程名。

(17)对被两名以上学生所选修的课程统计每门课的选课人数。

要求输出课程号和选修人数,查询结果按人数降序排列;若人数相同,按课程号升序排列。

数据库原理及应用.实验3.数据查询与更新

数据库原理及应用.实验3.数据查询与更新

数据库原理及应⽤.实验3.数据查询与更新实验报告课程名称:数据库原理及应⽤实验项⽬名称:数据查询与更新实验时间:2021年4⽉12⽇实验⽬的: (1) 观察查询结果, 体会SELECT语句实际应⽤; (2) 要求能够在查询分析器中使⽤SELECT语句进⾏简单查询。

(3) 熟练掌握简单表的数据查询、数据排序和数据连接查询的操作⽅法。

(4) 熟悉使⽤UPDATE/INSERT/DELETE/ALTER语句进⾏表操作;实验环境: MySQL 5.7.33、SQLyog-11.2.4实验内容及过程:在实验2的基础上,完成以下题⽬1. 在查询分析器中⽤SQL语句完成以下题⽬单表查询找出所有供应商的姓名和所在城市。

复制SELECT SNAME,CITY FROM S找出所有零件的名称、颜⾊、重量。

复制SELECT PNAME,COLOR,WEIGHT FROM P找出使⽤供应商S1所供应零件的⼯程号码。

复制SELECT JNO FROM SPJ WHERE SNO='S1'列出所有地址在北京的供应商姓名。

复制SELECT SNAME FROM S WHERE CITY='北京'模糊查询,找出名字包含"螺丝"两个字且颜⾊为红⾊的零件名称。

复制SELECT PNAME FROM PWHERE PNAME LIKE '螺丝_' AND COLOR='红'统计不同城市⼯程项⽬的数量,结果显⽰"城市"、"⼯程项⽬数合计"。

复制SELECT CITY,COUNT(JNO) AS '⼯程项⽬书合计'FROM J GROUP BY CITY连接查询和嵌套查询找出⼯程项⽬J2使⽤的各种零件的名称及其数量。

复制SELECT PNAME,QTYFROM P,SPJWHERE P.PNO=SPJ.PNO AND JNO='J2'找出上海⼚商供应的所有零件号码(要求⽤⾃然连接和嵌套查询两种⽅法)。

实验训练3数据增删改操作

实验训练3数据增删改操作

实验训练3数据增删改操作单击“Select rows”弹出下图,进行插入。

用同样的办法,完成其它7个表的插入。

(2)使用带Select的Insert语句完成汽车配件表Autoparts中数据的批量追加;并通过select语句检查插入前后的记录情况。

Autoparts表批量插入前;使用带Select的Insert语句批量增加,命令如下。

insert into autoparts select * from autopartscopy11;批量增加后,如下图。

用同样的方法,完成其它7个表的批量插入。

【实验3-2】删除数据(1)使用Delete语句分别完成购物车表shoppingcart、订单表Order、订单明细表Order_has_Autoparts、评论Comment的数据删除,删除条件自定;并通过select语句检查删除前后的记录情况。

删除前shoppingcart的情况。

使用Delete语句删除后表shoppingcart的情况,第二行没有了。

输入命令:delete from ShoppingCart where Autoparts_apid=2;用同样的办法,完成其它表的删除。

(2)使用TRUNCATE TABLE语句分别完成购物车表shoppingcart、评论Comment 的数据删除。

删除前shoppingcart的情况。

使用TRUNCATE TABLE语句删除后shoppingcart的情况。

输入命令:TRUNCATE TABLE ShoppingCart;执行结果如下。

【实验3-3】修改数据使用Update分别完成汽车配件表Autoparts、商品类别表category、用户表Client、用户类别表Clientkind、购物车表shoppingcart、订单表Order、订单明细表Order_has_Autoparts、评论Comment的数据修改,修改后数据值自定,修改条件自定;并通过select语句检查修改前后的记录情况。

SQL实验三数据的更新操作和视图实验报告

SQL实验三数据的更新操作和视图实验报告

S Q L实验三数据的更新操作和视图实验报告 Document serial number【LGGKGB-LGG98YT-LGGT8CB-LGUT-实验三数据的更新操作和视图本实验需要2学时。

一、实验目的1、掌握视图的创建、修改和删除操作。

2、掌握数据库数据更新(增加、修改、删除)操作。

二、实验内容和步骤1、视图(1)建立名为UV_SC的视图。

该视图可以让我们看到每个学生的姓名、选修课程名和成绩。

(2)利用UV_SC视图,查看平均成绩在80分以上的学生姓名。

(3)建立名为UV_Course的视图,该视图显示每门课的课程名和选修该课程的学生人数。

(4)修改视图UV_Course,在视图中增加一列,显示选修该课程所有学生的平均成绩。

(5)建立名为UV_IS_Depart的视图。

该视图可以用来查看“信息系”的学生的学号、姓名、年龄和系名。

并保证对该视图的修改满足系名为信息系的条件。

(6)建立名为UV_Student的加密视图。

该视图可以用来查看每个学生选修的课程门数和平均成绩。

(7)利用UV_Student视图,查询平均成绩在80分以上的学生学号。

(8)能否利用视图UV_Student,修改某个学生的平均成绩(9)删除视图UV_Student。

2、数据更新(1)向STUDENT表增加如下记录:(2)将学号’95011’,成绩80,以及课程表中的所有课程号插入到SC表中。

(3)建立与表STUDENT同结构的空表STUD。

然后利用INSERT命令把表STUDENT中年龄大于19的学生记录添加到表STUD。

(注意:可以使用select into语句实现同结构空表的创建,再使用insert命令插入记录;或者使用单条select into语句实现等同的功能)(4)为“95002”的学生增加选修“操作系统”和“数据结构”这两门课的选课记录。

(5)把课程名为“操作系统”的成绩从成绩表SC中删除。

(试用三种方式完成)(6)将女生的成绩提高10%。

实验三 多表查询、数据更新、视图

实验三 多表查询、数据更新、视图
实验三
实验名称:多表查询、数据更新、视图、实验性质:验证性、成1、掌握Select语句的基本语法;
2、掌握连接查询的表示和使用方法;
3、掌握子查询的表示和使用方法;
4、掌握对数据表的更新语法;
5、掌握视图的创建、查询和修改方法;
二、实验准备
1、理解Select语句的基本语法格式和执行方法;
(7)删除计算机系学生视图中学号为200215121的记录,并查看Student表的变化,说明是为什么。






实验过程、存在的问题及解决办法:
1.(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
2.(1)
(2)
(3)
(4)
(5)
(6)
3.(1)
(2)
(3)
(4)
(5)
(6)
(7)
(2)建立计算机系选修了’3’号课程且成绩在90分以下的学生视图,并对此视图进行查询。
(3)将学生的学号,姓名和平均成绩定义为一个视图。
(4)利用所建立的视图,查询选修了2号课程的计算机系的学生。
(5)将计算机系学生视图中学号为200215122的学生姓名改为“刘留”。
(6)向计算机系学生视图中插入一条新的学生记录,其中学号为200215126,姓名为李三,年龄为20岁,院系为IS,并分析下执行结果。
(4)删除姓名为张立的学生记录。
(5)添加学生记录,姓名为张立,学号为200215125,性别为男,年龄19,院系为信息系。
(6)使用SQL增加一条记录到course表中,增加的记录内容如下:
(’9’,’数据挖掘’,’1’,5)

实验3-数据查询

实验3-数据查询

《数据库原理》实验报告实验名称数据查询实验室实验日期查询学生的基本信息查询“CS”系学生的基本信息查询“CS”系学生年龄不在19到21之间的学生的学号、姓名找出所有学生中的最大年龄找出“CS”系年龄最大的学生,显示其学号、姓名找出各系年龄最大的学生,显示其学号、姓名统计“CS”系学生的人数统计各系学生的人数,结果按升序排列按系统计各系学生的平均年龄,结果按降序排列查询每门课程的课程名查询无先修课的课程的课程名和学时数统计无先修课的课程的学时总数统计每位学生选修课程的门数、学分及其平均成绩统计选修每门课程的学生人数及各门课程的平均成绩找出平均成绩在85分以上的学生,结果按系分组,并按平均成绩的升序排列查询选修了“1”或“2”号课程的学生学号和姓名查询选修了“1”和“2”号课程的学生学号和姓名查询选修了课程名为“数据库系统”且成绩在60分以下的学生的学号、姓名和成绩查询每位学生选修了课程的学生信息(显示:学号,姓名,课程号,课程名,成绩)查询没有选修课程的学生的基本信息查询选修了3门以上课程的学生学号查询选修课程成绩至少有一门在80分以上的学生学号查询选修课程成绩均在80分以上的学生学号查询选修课程平均成绩在80分以上的学生学号六、总结通过本次实验,我基本掌握了SQL语句中的各种查询方式,简单查询、连接查询、嵌套查询、使用聚合函数的查询、对数据的分组查询、对数据的排序查询等,但是对比较复杂的查询方式,还不能熟练运用,特别是其WHERE条件,有时,还不能够准确描述,这将在以后的练习中有所加强。

七、源程序清单建立S数据库CREATE DATABASE S;建立关系表StudentCREATE TABLE Student( Sno CHAR(9) PRIMARY KEY,Sname CHAR(20),Ssex CHAR(2),Sage SMALLINT,Sdept CHAR(20));建立关系表Coursecreate table Course( Cno char(4) primary key,Cname char(40),Cpno char(4),Ccredit smallint,foreign key (Cpno) references Course(Cno)。

数据库实验报告 (数据查询与更新)

数据库实验报告 (数据查询与更新)

《数据库原理》实验报告书学号:姓名:专业班级:课程名称数据库原理实验项目名称数据查询与更新实验项目类型验证演示综合设计指导教师徐凯华成绩√一实验目的1.掌握使用SQL语句单表查询;2.掌握使用SQL语句多表连接查询,嵌套查询;3.掌握使用SQL语句实现数据的更新。

二实验内容1、给每张表插入5条以上数据。

2、完成下面查询。

1)查询年龄大于25岁的女学生的学号和姓名。

2)查询选修了“数据库系统概论”课程的学生姓名。

3)统计选修2号课程的人数。

4)查询平均成绩大于80分的学生的学号。

5)统计每个系的学生人数。

6)查询选修数据库课程并且成绩不及格的学生学号和姓名。

7) 查询每门课程先修课的学分。

8)查询成绩在60到80之间的所有记录。

9)查询成绩为85,86或88的记录。

10) 查询所有不姓“王”的学生记录。

11)以系别和年龄从大到小的顺序查询Student表中的全部记录。

12)统计男女生分别有多少人。

13)查询姓名的第二个字为“小”字的女生信息。

14)查询学生的成绩信息,先按学号升序排序,再按成绩降序排序。

三实验步骤1、给每张表插入5条以上数据。

1)插入学生表INSERT INTO Student(Sno,Sname,Sage,Ssex) VALUES('','李小明',23,'男'); INSERT INTO Student(Sno,Sname,Sage,Ssex) VALUES('','王大刚',26,'男'); INSERT INTO Student(Sno,Sname,Sage,Ssex) VALUES('','没头脑',28,'男'); INSERT INTO Student(Sno,Sname,Sage,Ssex) VALUES('','李小红',32,'女'); INSERT INTO Student(Sno,Sname,Sage,Ssex) VALUES('','王小华',50,'女'); INSERT INTO Student(Sno,Sname,Sage,Ssex) VALUES('','不高兴',18,'男');三实验步骤2)插入课程表INSERT INTO Course(Cno,Cname,Cpno,Ccredit) VALUES('001','数据库系统概论','006',5);INSERT INTO Course(Cno,Cname,Cpno,Ccredit) VALUES('002','数据结构','006',6);INSERT INTO Course(Cno,Cname,Cpno,Ccredit) VALUES('003','数据库系统概论','002',8);INSERT INTO Course(Cno,Cname,Cpno,Ccredit) VALUES('004','JAVA程序设计','001',6);INSERT INTO Course(Cno,Cname,Cpno,Ccredit) VALUES('005','大学英语','003',5);INSERT INTO Course(Cno,Cname,Cpno,Ccredit) VALUES('006','高等数学','004',5);3)插入关系表INSERT INTO SC(Sno,Cno,Grade) VALUES('','006','80');INSERT INTO SC(Sno,Cno,Grade) VALUES('','005','85');INSERT INTO SC(Sno,Cno,Grade) VALUES('','004','86');INSERT INTO SC(Sno,Cno,Grade) VALUES('','003','88');INSERT INTO SC(Sno,Cno,Grade) VALUES('','002','76');INSERT INTO SC(Sno,Cno,Grade) VALUES('','001','50');2、完成下面查询。

实验三、嵌套查询与数据更新实验完成

实验三、嵌套查询与数据更新实验完成

实验三、嵌套查询与数据更新实验一、实验目的与要求1、掌握多表查询:嵌套查询的使用。

2、掌握INSERT、UPDATE和DELETE语句的一般格式与使用方法。

二、实验平台1、操作系统:Windows XP或Windows 20032、数据库管理系统:SQL Server 2005三、实验内容实验前,先附加“教务管理系统”,在“教务管理系统”的数据库中进行一下查询:嵌套查询1、在“教务管理系统”数据库中,根据相关表的内容,查询平均成绩大于70的课程信息、select*from dbo.课程信息where课程编号in(select课程编号from选课表groupby课程编号having avg(成绩)>70)2、从“教务管理系统”数据库中,查询人数超过45人所在班级中的学生的学号、姓名和班级名称。

select学号,姓名,班级名称,人数from学生信息,班级信息where班级名称in(select班级名称from dbo.班级信息where人数>=45)3、在“教务管理系统”数据库中,查询学生姓名为“朱文娟”所在班级的学生信息,要求返回学生的学号、姓名、性别、班级编号、班级名称和年级信息select学号,姓名,性别,班级名称,班级信息.班级编号,班级信息.年级from学生信息,班级信息where学生信息.班级编号=班级信息.班级编号anddbo.学生信息.班级编号in(select班级编号from dbo.学生信息where姓名='朱文娟')4、在“教务管理系统”数据库中,查询出所有非计算机系的学生信息,并显示出这些学生的考试成绩,再按成绩进行降序排列显示,要求返回学生的学号、姓名、班级编号、课程编号和成绩信息。

select班级名称,选课表.学号,姓名,性别,班级信息.班级编号,班级信息.年级,成绩from学生信息,班级信息,选课表where班级名称in(select班级名称from dbo.班级信息where班级名称notlike'%%计算机%%')orderby成绩desc5、找出每个学生超过他自己选修课程平均成绩的课程名称,显示姓名和对应的课程名称select学生信息.学号,姓名,课程名称from选课表,课程信息,学生信息where成绩>any(select avg(成绩)from选课表)数据更新(一)添加教务信息1、在2003年级中创建一个新班级,编号为20031340000200、班级名称为“环境与科学”、班级人数为60、班主任为“张浩”。

数据查询与更新实验报告

数据查询与更新实验报告

数据查询与更新实验报告本次数据查询与更新实验,我们通过使用SQL语言,掌握了大量的数据查询与更新的操作方法。

在本次实验中,我们学习了数据查询的基本步骤并掌握了各种数据查询方式,包括简单查询、条件查询、排序查询、目录查询、并集查询、交集查询和差集查询。

同时,我们还学习了如何利用SQL语言进行数据更新,包括添加、修改和删除数据等方面。

在实验中,我们使用了具体的数据库及表格进行操作。

首先,我们创建了一个名为“students”的数据库,并在其中添加了一个名为“student”的表格,用于存储学生的信息。

在插入数据时,我们学习了如何通过SQL语言向表格中添加数据,并掌握了如何在插入数据时保证数据的唯一性和数据的正确性。

在数据查询方面,我们掌握了基本的SELECT语句的用法,并学习了SELECT语句的各种限定方式,以达到我们需要查询的结果。

我们还学习了如何通过子查询进行复杂的数据查询,并掌握了如何在查询中利用逻辑运算符和比较运算符等方式来进行查询筛选。

同时,我们还学习了如何利用GROUP BY和ORDER BY子句对数据进行分类及排序查询。

在数据更新方面,我们学习了如何使用INSERT, UPDATE和DELETE语句来进行数据的添加、修改和删除操作,并了解了利用各种子查询语句进行数据更新的方法。

在实际操作中,我们试图通过修改数据来实现数据的更新,并考虑到更新数据时对数据完整性的影响。

我们还通过实例操作学习了如何使用SQL事务处理,确保数据的一致性。

在本次实验中,我们还通过使用SQL实现了数据的备份和恢复操作,并尝试了利用批处理进行数据管理的方式。

我们还学习了如何处理存储过程和触发器,以实现对数据的自动化管理。

综上所述,本次实验对我们学习SQL语言的数据查询和更新操作有了很大的帮助。

我们掌握了SQL语言的基本语法以及各种数据查询和更新的方法,为我们今后在数据库管理和数据分析方面的工作提供了坚实的基础。

同时,我们也意识到数据查询与更新在各种实际工作中的极其重要性,并应该时刻保证数据的正确性、完整性及一致性,以确保数据的有效性和可信度。

SQL数据的查询和更新实验报告报告

SQL数据的查询和更新实验报告报告

SQL数据的查询和更新实验报告报告实验三、SQL的数据查询1、实验目的熟悉SQL语句的数据查询语言,能够SQL语句对数据库进行单表查询、连接查询、嵌套查询、集合查询和统计查询。

2、实验内容实验内容主要是对数据库进行查询操作,包括如下四类查询方式:单表查询查询的目标表达式为所有列、指定的列或指定的列的运算三种不同。

使用DISTINCT保留字消除重复行。

对查询结果排序和分组。

集合分组使用集函数进行各项统计。

连接查询笛卡儿连接和等值连接。

自连接。

外连接复合条件连接。

多表连接。

嵌套查询通过实验验证对子查询的两个限制条件。

体会相关子查询和不相关子查询的不同。

考察四类谓词的用法,包括:第一类,IN、NOT IN;第二类,带有比较运算符的子查询;第三类,SOME、ANY或ALL谓词的子查询,查询最大值和最小值;第四类,带有EXISTS谓词的子查询,实现“所有”等情况集合运算使用保留字UNION进行集合或运算。

采用逻辑运算符AND或OR来实现集合交和减运算。

3、实验步骤以University_Mis数据库为例,该数据库中有四张如实验一,其中Score是每门课的考试成绩,Scredit是学生所有考试合格课程所获得的积分总数,Ccredit每门课程的学分数。

在数据库中,存在这样的联系:学生可以选择课程,一个课程对应一个教师。

在表Reports中保存学生的选课记录和考试成绩。

1请先输入如下元组,再对数据库进行有关的查询操作:图、Students表图、Teachers表图、Courses表图、Reports表2查询性别为“男”的所有学生的名称并按学号升序排列。

查询学生的选课成绩合格的课程成绩,并把成绩换算为积分。

积分的计算公式为:[1+(考试成绩-60)*]*Ccredit。

考试成绩>=60。

查询学分是3或4的课程的名称。

查询所有课程名称中含有“算法”的课程编号。

查询所有选课记录的课程号。

统计所有老师的平均工资。

实验3SQL语句实现数据更新操作和简单查询

实验3SQL语句实现数据更新操作和简单查询

实验3SQL语句实现数据更新操作和简单查询桂林电子科技大学数学与计算科学学院实验报告实验室: 06406 实验日期:2012 年 11 月 9 日院(系)数学与计算科学年级、专业、班110071 姓名成绩课程名称数据库原理A实验实验项目名称SQL语句实现数据更新操作和简单查询指导教师毛睿一,实验目的1.学会使用SQL语句实现数据插入、修改和删除操作;2.掌握SELECT语句的基本语法;3.掌握表的数据简单查询、数据排序;4.掌握表的连接查询的表示;5.掌握等值连接与非等值连接、自身连接、外连接以及复合条件连接操作。

二,实验原理SQL语句实现数据更新操作和简单查询;用SQL语句实现数据插入、修改和删除操作;表的数据简单查询、数据排序;表的连接查询的表示三,使用仪器,材料仪器:电脑、SQL_Server_2000软件材料:《数据库系统概论》—<关系数据库标准语言SQL>四,实验内容与步骤1、在企业管理器中对表进行插入、修改和删除数据的操作(复习)2、使用T-SQL语句对表进行插入、修改和删除数据的操作(1)使用T-SQL命令更新数据库student000中的表数据(2)使用T-SQL命令修改表中的某个记录的字段值(3)使用T-SQL语句修改表student中所有记录的值(4)使用delete语句删除表中的记录(5)违反约束条件,观察出现的情况3、简单的查询分析五,实验过程原始记录(数据,图表,计算等)1.2删除表student的第4行:删除sc表的第2行:删除表course的第7行记录:将表student中95002的年龄改为22:2.1分别向student000数据库的student、course和sc表中插入一行记录2.2使用T-SQL命令修改表中的某个记录的字段值2.3使用T-SQL 语句修改表student中所有记录的值2.4使用delete语句删除表中的记录2.5违反约束条件,观察出现的情况删除student表中学号为95001的学生记录3.1查询全体学生的学号和姓名查询全体学生的详细记录查询全体学生的姓名、出生年份和所在系查询选修了课程的学生姓名和相应课号查询数学系全体学生的姓名查询考试成绩不及格的学生姓名查询年龄在20~23岁(包括20和23岁)之间的学生姓名、年龄和所在系;查询年龄不在20~23岁之间的学生姓名、年龄和所在系查询指定的两个系的学生姓名和性别、所在系查询都不是指定的两个系的学生姓名和性别、所在系查询缺少成绩的学生的学号和课程号;查询计算机系年龄在20岁以下的学生姓名查询每个学生及其选课课程的情况自然连接学生的学号、姓名、选课的课程名及成绩选修了1号课程且成绩为90分以上的学生学号、姓名和成绩;查询每一门课的间接选修课(选修课的选修课)六,实验结果分析或总结。

数据库原理实验报告-数据的查询及更新

数据库原理实验报告-数据的查询及更新

实验题目二、数据的查询及更新一、实验目的熟悉SQL语句的使用方法,学习使用SQL语句来实现数据查询。

掌握基本的SELECT 查询及其相关子句的使用;掌握复杂的SELECT查询,如多表查询、子查询、连接查询和嵌套查询等。

二、实验内容和要求学习使用SQL查询分析器查询数据,练习查询语句的使用:1.掌握SELECT 语句的完整结构,包括简单查询、嵌套查询、连接查询等基本实现方法;2.掌握存储查询结果的方法;体会各种查询的异同及相互之间的转换;3.分析各种查询的执行过程,为综合应用打下良好的基础。

三、实验主要仪器设备和材料1.计算机及操作系统:PC机,Windows 2000/XP或更高版本;2.数据库管理系统:SQL Server 2005或更高版本;四、实验方法、步骤及结果测试在实验一的基础上,完成以下实验内容。

1.删除以下各表中已有数据,将下列数据插入到相应的基本表中。

2. 简单查询使用SQL语言完成以下查询。

(4)查询“计算机科学与技术”专业并且班级编码为‘macr1601’的学生的学号、姓名学习在SQL Server 中安装“Northwind”数据库,并完相应查询操作。

(1)安装“Northwind”数据库。

A.运行安装文件(如SQL2000SampleDb.msi)。

B.右击数据库,点击“附加”,添加对应的数据库文件(.mdf)。

C.执行操作。

(2)对NothWind. Products表进行简单查询。

ProductName;五、思考题请举例说明:对于带“EXISTS”谓词的、内外层相关的多层嵌套查询,如何构造此类查询的SQL语句?。

数据库查询和更新操作实验报告

数据库查询和更新操作实验报告

南昌航空大学实验报告二00 年月日课程名称: 数据库概论实验名称: SQL语言-查询和更新操作班级: 102022 姓名: 涂海同组人:指导教师评定: 签名:一、实验环境1.Windows2000或以上版本;2.SQLServer2000或2005。

二、实验目的1.了解查询、更新的概念和方法;2.掌握查询分析器或企业管理器中执行SELECT操作和更新数据操作的方法;3.掌握SELECT语句在单表查询中的应用;4.掌握SELECT语句在多表查询中的应用;5.掌握SELECT语句在复杂查询中的使用方法。

6.掌握INSERT、UPDATE、DELETE语句在更新中的应用。

三、实验要求供应商表S(SN,SNAME,CITY), 其中SN为供应商代号, SNAME为供应商名字, CITY为供应商所在城市, 主关键字为SN;零件表P(PN,PNAME,COLOR,WEIGHT)其中PN为零件代号, PNAME 为零件名字, COLOR为零件颜色, WEIGHT为零件重量, 主关键字为PN;工程表J(JN,JNAME,CITY), 其中JN为工程代号, JNAME为工程名字, CITY为工程所在城市, 主关键字为JN;供应关系表SPJ(SN,PN,JN,QTY), 其中SN、PN、JN含义同上, QTY 表示提供的零件数量, 主关键字为(SN, PN,JN), 外关键字为SN、PN、JN四、实验步骤及参考源代码1 先将4个表输入完成源程序如下:--1. 创建供应商表CREATE TABLE S(SN CHAR(3),SNAME V ARCHAR(20),CITY V ARCHAR(20),PRIMARY KEY(SN)); --2. 创建零件表CREATE TABLE P(PN CHAR(3),PNAME V ARCHAR(20),COLOR CHAR(4),WEIGHT INT,PRIMARY KEY(PN)); --3. 创建工程表CREATE TABLE J(JN CHAR(3),JNAME V ARCHAR(20),CITY V ARCHAR(20),PRIMARY KEY(JN));--4. 创建供应关系表create table SPJ(SN char(3) ,PN char(3),JN char(3),QTY int ,primary key(SN,PN,JN),foreign key(SN) references S, foreign key(PN) references P, foreign key(JN) references J);--5. 插入数据insert into Svalues('S1','SN1 ', '上海') ; insert into Svalues('S2','SN2 ', '北京') ; insert into Svalues('S3','SN3 ', '南京') ;insert into Svalues('S4','SN4 ', '西安') ; insert into Svalues('S5','SN5 ', '上海') ;insert into Pvalues('P1','PN1 ', '红',12) ; insert into Pvalues('P2','PN2 ', '绿',18) ; insert into Pvalues('P3','PN3 ', '蓝',20) ; insert into Pvalues('P4','PN4 ', '红',13) ; insert into Pvalues('P5','PN5 ', '白',11) ; insert into Pvalues('P6','PN6 ', '蓝',18) ;insert into Jvalues('J1','JN1 ', '上海') ; insert into Jvalues('J2','JN2 ', '广州') ; insert into Jvalues('J3','JN3 ', '武汉') ; insert into Jvalues('J4','JN4 ', '北京') ; insert into Jvalues('J5','JN5 ', '南京') ; insert into Jvalues('J6','JN6 ', '上海') ; insert into Jvalues('J7','JN7 ', '上海') ;insert into SPJvalues('S1','P1','J1',200) ; insert into SPJvalues('S1','P1','J4',700) ; insert into SPJvalues('S2','P3','J1',800) ; insert into SPJvalues('S2','P3','J2',200) ; insert into SPJvalues('S2','P3','J3',30) ; insert into SPJvalues('S2','P3','J4',400) ; insert into SPJvalues('S2','P3','J5',500) ; insert into SPJvalues('S2','P3','J6',200) ; insert into SPJvalues('S2','P3','J7',300) ; insert into SPJvalues('S2','P5','J2',200) ; insert into SPJvalues('S3','P3','J1',100) ; insert into SPJvalues('S3','P4','J2',200) ; insert into SPJvalues('S4','P6','J3',300) ; insert into SPJvalues('S4','P6','J7',500) ; insert into SPJvalues('S5','P2','J2',500) ; insert into SPJvalues('S5','P2','J4',250) ; insert into SPJvalues('S5','P5','J5',300) ; insert into SPJvalues('S5','P5','J7',100) ; insert into SPJvalues('S5','P6','J2',200) ; insert into SPJvalues('S5','P1','J4',300) ; insert into SPJvalues('S5','P3','J4',100) ; insert into SPJvalues('S5','P4','J4',200) ;然后进行查询:1.select *from jwhere CITY='上海'2SELECT PNFROM PWHERE WEIGHT=(select MIN(WEIGHT)FROM P)3SELECT SNFROM SPJWHERE JN='J1'4SELECT SNFROM SPJWHERE JN='J1' AND PN='P1'5SELECT JNAMEFROM J SPJWHERE JN IN(SELECT JNFROM SPJWHERE SN='S1')6SELECT COLORFROM P SPJWHERE PN IN(SELECT PNFROM SPJWHERE SN='S1')7SELECT S2.SNFROM SPJ S1,SPJ S2WHERE S1.JN='J1'AND S2.JN IN(SELECT JNFROM SPJ S2WHERE S2.JN='J2')GROUP BY S2.SN8SELECT SNFROM SPJ PWHERE JN='J1'AND PN IN(SELECT PNFROM PWHERE COLOR='红')GROUP BY SN9SELECT SNFROM SPJ JWHERE JN IN(SELECT JNFROM JWHERE CITY='上海')GROUP BY SN10SELECT SNFROM SPJ JWHERE JN IN(SELECT JNFROM JWHERE CITY='上海'OR CITY='北京' )GROUP BY SN11SELECT SNFROM S JWHERE CITY IN(SELECT CITYFROM JWHERE CITY='上海')GROUP BY SN12SELECT PNFROM SPJ SWHERE SN IN(SELECT SNFROM S JWHERE CITY IN(SELECT CITYFROM JWHERE CITY='上海'))GROUP BY PN13SELECT SPJ.PNFROM SPJ,S,Jwhere J.JN=SPJ.JN AND SPJ.SN=S.SN AND J.CITY='上海'AND S.CITY='上海';14SELECT SPJ.JNFROM S,SPJ,JWHERE S.SN=SPJ.SN AND SPJ.JN=J.JN AND S.CITY!=J.CITY EXCEPTSELECT SPJJNFROM S,SPJ,JWHERE S.SN=SPJ.SN AND SPJ.JN=J.JN AND S.CITY!=J.CITY;15SELECT JNFROM SPJWHERE SN NOT IN(SELECT SNFROM SWHERE CITY='上海')EXCEPTSELECT JNFROM SPJWHERE SN NOT IN(SELECT SNFROM SWHERE CITY='上海');21SELECT JNFROM JWHERE JN NOT IN(SELECT J.JNFROM S,P,SPJWHERE S.SN=SPJ.SN AND SPJ.PN=P.PNAND S.CITY='天津' and p.color='红' );23UPDATE PSET COLOR='蓝'WHERE COLOR='红'UPDATE SPJSET SN='s8'WHERE SN='s6' AND JN='j4'DELETEFROM SPJWHERE SN='s2'DELETEFROM SWHERE SN='s2'INSERTINTO JVALUES('j8','JN8','江西'); INSERTINTO SVALUES('s9','SN9','江西'); INSERTInto SPJVALUES('s9','p4','j8',200);五、实验结果创建的数据库为1. 2. 3. 4. 5. 6.7. 8. 9.10.11.12.13.14.15.21.23.六、实验体会在本次实验中, 我已经了解查询、更新的概念和方法, 查询的的关键字为select, 更新的为update。

实验训练3数据增删改操作

实验训练3数据增删改操作

实验训练3 数据增删改操作一、实验内容与目的1.使用SQL语言完成数据定义、数据查询、更新,删除。

2.利用SQL语言提供的INSERT语句、UPDATE语句和DELETE语句对所创建的表进行操作;二、实验方法、步骤1.运行数据库SQL sever20082.新建数据库,并且创建新的表3.利用相关语句进行数据查询,更新,删除,修改三、实验过程原始记录1)创建供应商表汽车配件表Autoparts,由以下属性组成:零件代码PNO(CHAR型),零件名PNAME(CHAR型),颜色COLOR (CHAR型),价格Money (INT型)CREATE TABLE Autoparts(PNO CHAR(3),PNAME CHAR(10),COLOR CHAR(4),Money INT);2)创建供应商表汽车配件表category,由以下属性组成:轮胎Tires(CHAR型),灯Lights(int型)。

CREATE TABLE category(Tires CHAR(20),Lights CHAR(10));3)创建用户表Client,由以下属性组成:姓名NAME(CHAR型),TEL (int型)。

CREATE TABLE Client(NAME CHAR(20),TEL INT(10));4)创建用户类别表Clientkind,由以下属性组成:普通Normal(CHAR 型),贵宾VIP(CHAR型)。

CREATE TABLE Clientkind(Normal CHAR(20),VIP CHAR(20));5)创建购物车表shoppingcart,由以下属性组成:名称SHOPNAME (CHAR型),Money(int型)CREATE TABLE shoppingcart(SHOPNAME CHAR(20),Money INT(10));6)创建订单表Order,由以下属性组成:订单号Order_ID(INT型),Money(INT型)CREATE TABLE Order(Order_ID INT(50),Money INT(10));7)创建订单明细表order_has_Autoparts,由以下属性组成:配件名称SHOPNAME(CHAR型),价格Money(INT型),姓名NAME(CHAR 型),联系电话TEL (INT型),地址Address(CHAR型)CREATE TABLE order_has_Autoparts(SHOPNAME CHAR(50),NAME CHAR(50),TEL INT(20),Address CHAR(50),Money INT(10));8)创建评论表Comment,由以下属性组成:订单号Order_ID(INT 型),分数Fractions(INT型), 内容Content (CHAR型),姓名NAME(CHAR 型),联系电话TEL (INT型),地址Address(CHAR型)CREATE TABLE Comment(Order_ID INT(50),Fractions INT(10)Content CHAR(500),NAME CHAR(50),TEL INT(20),Address CHAR(50));二)数据操作1..插入数据(以Autoparts表为例,其他表同理)1)向Autoparts表插入下列数据:P1,螺母,红,12P2,螺栓,绿,17P3,螺丝刀,蓝,14P4,螺丝刀,红,14P5,凸轮,蓝,40P6,齿轮,红,30 INSERT INTO Autoparts VALUES (‘P1’,’螺母’,’红’,’12’);INSERT INTO Autoparts VALUES (‘P2’,’螺栓’,’绿’,’17’);INSERT INTO Autoparts VALUES (‘P3’,’螺丝刀’,’蓝’,’14’);INSERT INTO Autoparts VALUES (‘P4’,’螺丝刀’,’红’,’14’);INSERT INTO Autoparts VALUES (‘P5’,’凸轮’,’蓝’,’40’);INSERT INTO Autoparts VALUES (‘P6’,’齿轮’,’红’,’30’);2)修改数据:将全部红色零件的颜色改成蓝色。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验3 数据查询与更新
实验目的
1.了解查询的概念和方法;
2.掌握查询分析器的使用方法;
3.掌握SELECT语句在单表查询中的应用;
4.掌握复杂查询的使用方法;
5.掌握多表连接的方法;
6 掌握SELECT语句在多表查询中的应用。

7.掌握数据查询中的嵌套、分组、统计、计算和组合的操作方法
8. 掌握数据库的插入、修改和删除数据的操作方法,加深对标准SQL更新语句的理解。

实验内容和步骤
根据学生成绩管理数据库中的4个表,实现数据的基本查询操作,实现数据的高级查询操作和实现数据的插入、修改和删除操作。

一.数据查询
使用学生成绩管理数据库,试用SQL语句完成下列查询:
1.查询成绩表中的全部数据。

2.查询学生表中院系名称为“计算机学院”学生的姓名,年龄。

3.查询成绩表中成绩在70~80分之间的学生的学号,课程号和成绩。

4.查询学生表中计算机学院年龄在18~20之间且性别为“男”的学生的姓名和年龄。

5.查询成绩表中课程号为“12”的课程的最高分数。

6.查询学生表中计算机学院学生的最大年龄和最小年龄。

7.统计学生表中每个学院的学生人数。

8.统计成绩表中每门课程的选课人数和成绩最高分。

9.查询成绩表中每个学生的选课门数和考试总成绩,并按选课门数的升序显示结果。

10.查询成绩表中总成绩超过200分的学生,要求列出学号,总成绩。

11.查询选修了课程号为"3"的学生的姓名和所在系。

12.查询成绩在80分以上的学生的姓名,课程号和成绩,并按成绩的降序排列。

13.查询没有人选修的课程号和课程名。

14.查询选修了课程号为“10”的学生的姓名和所在系。

15.求选修了课程的学生学号。

16.求选修了“数据库应用”的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。

17.求选修“数据库应用”且成绩在80-90之间的学生学号和成绩,并将成绩乘以系数0.8输出。

18.求缺少了成绩的学生的学号和课程号。

19.求学生的学号、姓名、选修的课程名及成绩。

20.检索至少选修两门课程的学生学号。

21.检索“李雅飞”所授课程的课程号和课程名。

22.检索全部学生都选修的课程的课程号与课程名。

二.数据更新
1.将一个新学生记录(学号:95020;姓名:陈冬;性别:男;院系名称:计算机学院;出生日期:1988-6-28;)插入学生表中。

2.所有学生成绩乘系数0.8。

3.对每门课程,求学生的平均分数,并把结果存入数据库。

4.将学生赵亮亮转到计算机学院。

5.删除学号为“10023”的学生的记录。

6.删除体育学院所有学生的选课记录。

相关文档
最新文档