SQL Server資料更新
阿新 • • 發佈:2018-11-10
文章目錄
1.實驗目的
通過本次實驗使學生掌握SQL資料更新操作。
2.實驗內容
- 資料插入
- 資料修改
- 資料刪除
3.實驗環境
- Windows
- SQL Server
4.實驗步驟及結果
- 建立一個數據庫,檔名為“教學”
- 開啟“教學”資料庫
Student 表
S# | Sname | Age | Ssex |
---|---|---|---|
S1 | WANG | 15 | 男 |
S2 | LI | 17 | 女 |
S3 | LU | 19 | 女 |
S4 | ZHAO | 13 | 女 |
S5 | YANG | 20 | 男 |
Course表
C# | Cname | T# |
---|---|---|
C1 | Maths | T1 |
C2 | DB | T2 |
C3 | English | T3 |
C4 | Computer | T2 |
SC表
S# | C# | Score |
---|---|---|
S1 | C1 | 50 |
S2 | C1 | 70 |
S3 | C1 | 80 |
S4 | C1 | 75 |
S5 | C1 | 87 |
S1 | C2 | |
S2 | C2 | |
S4 | C2 | 85 |
S1 | C3 | |
S5 | C4 | 60 |
S4 | C4 | 45 |
Title表
T# | Tname | Title |
---|---|---|
T1 | 吳恩達 | 教師 |
T2 | 劉曉慶 | 教授 |
T3 | 張龍 | 副教授 |
註明:表格和下面的程式碼可能不會一一對應,可能需要增加,刪除,更改表中的資料
- 輸入如下資料:
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