SQL Server数据更新

本文介绍了一个SQL数据操作实验,包括数据插入、修改、删除等基本操作,以及复杂查询如统计平均成绩、条件更新和删除记录。实验在Windows环境下使用SQL Server进行,涵盖了学生、课程、选课和教师等实体的关系数据库操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.实验目的

    通过本次实验使学生掌握SQL数据更新操作。

2.实验内容

  1. 数据插入
  2. 数据修改
  3. 数据删除

3.实验环境

  1. Windows
  2. SQL Server

4.实验步骤及结果

  1. 创建一个数据库,文件名为“教学”
  2. 打开“教学”数据库

Student 表

S#SnameAgeSsex
S1WANG15
S2LI17
S3LU19
S4ZHAO13
S5YANG20

Course表

C#CnameT#
C1MathsT1
C2DBT2
C3EnglishT3
C4ComputerT2

SC表

S#C#Score
S1C150
S2C170
S3C180
S4C175
S5C187
S1C2
S2C2
S4C285
S1C3
S5C460
S4C445

Title表

T#TnameTitle
T1吴恩达教师
T2刘晓庆教授
T3张龙副教授

注明:表格和下面的代码可能不会一一对应,可能需要增加,删除,更改表中的数据

  1. 输入如下数据:

1、往关系course中插入一个课程元组

    Insert 
    	into course(C#,cname,T#)
    	values ('C5','COMPUTER','t3')
    go

2) 在sc中删除尚无成绩的选课元组

    Delete 
    	from sc
    	where score is null
    go

3) 把选修刘晓庆老师课程的女同学的选课元组全部删去

    Delete 
    	from SC
    	where c# 
    	in (select c#
    		from course,title
 			where course.t#=title.t# and tname='刘晓庆')and 
				s# in(select s#
    			from student
    			where sex='女')
    go

4) 统计每个学生的平均成绩并存到平均成绩表中。

    Create Table avgescore
    	(s# char(9) primary key,
    		chengji smallint)
    go

        创建表和插入数据不能同时进行

    Insert into avgescore
    	select student.s#,avg(score) 成绩
    		from student,sc
    		where student.s#=sc.s#
    		group by student.s#;
    go

        insert如果是查询不需要加 values

5) 把maths不及格的成绩全改为 60分

    Update sc 
    	set score=60 
    	where score<60 and c# in (
    		select c# 
    		from course where Cname='maths')
    go

6) 把低于所有课程总平均成绩的女同学成绩提5%

    Update SC 
    	set score=score*1.05 
    	where s# in(
    	Select s# 
    		from Student 
	    	where sex='女') 
    		and score<(
    		Select AVG(score) 
    			From SC);
    go

7) 删除所有女同学的选课信息。

    Delete 
    	from sc
    	where s# in
    	(select s#
    		from Student 
    		where sex='女'and c# is not null)
    go

8) 一次往Title表里加入3名老师信息

    Insert 
 	into title(t#,tname,title)
    	values('t5','王天一','教授'),
    	('t6','张萌','助教'),
    	('t7','林莉','助手')
    go

9)将教师号为T3的教师姓名改为刘凯,职称改为实验员

    Update title 
    	Set tname = '刘凯', title = '实验员'
	    Where t# = 't3'  
	go
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值