資料更新、檢視的建立與修改
一、實驗目的
1、學會使用INSERT、UPDATE、DELETE等SQL語句進行資料更新;
2、學會使用CREATE、DROP等SQL語句建立和刪除檢視。
二、實驗內容
1、在SQL Server Management Studio中使用INSERT、UPDATE、DELETE語句進行資料更新。
2、在SQL Server Management Studio中使用CREATE、DROP語句建立和刪除檢視。
三、實驗步驟
1、利用SQL Server Management Studio在資料庫S_C的三個表中分別插入以下資料:學生表S:
sno
sname
birthday
sdeptartment
tel
sex
J0401
李軍
1985-2-12
計算機系
0576-85123464
男
J0402
劉晨
1986-5-22
數學系
0576-85123466
女
J0403
王敏
1986-4-28
計算機系
0576-85123464
女
J0404
張立
1984-9-8
計算機系
0576-85123464
男
課程表C:
cno
cname
teacher
pcno
C01
資料庫
GUO
C03
C02
VB
LIU
C03
C03
計算機基礎
LI
C04
數學
WANG
C05
資料結構
ZHANG
C03
C06
C語言
CHEN
C03
成績表SC:
sno
cno
grade
J0401
C05
92
J0401
C06
85
J0401
C02
88
J0401
C01
90
J0402
C04
80
J0403
C02
76
J0404
C03
88
2、在查詢視窗中:
1)選擇資料庫S_C,用INSERT語句向學生表S中插入一個新生記錄(sno:J0405;sname:陳東;birthday:1987-5-3
;sdeptartment:中文系;tel:0576-85123466;sex:女)。Sql語句:
INSERT INTO S
VALUES('J0405', '陳東', '1987-5-3', '中文系', '0576-85123466', '女')
2)把課程名為VB的成績從基本表SC中刪除。
Sql語句:
DELETE FROM SC WHERE cno =
(SELECT cno FROM C WHERE cname = 'VB')
3)把女生的成績提高10%。
Sql語句:
UPDATE SC
SET SC.grade = SC.grade*1.1 FROM SC, S
WHERE SC.sno = S.sno AND S.sex = '女'
4)如果學號為J0404的學生成績少於90分,則加上10分。
Sql語句:
UPDATE SC
SET SC.grade = SC.grade+10
WHERE SC.sno = 'J0404' AND SC.grade < 90
5)將成績最低的學生成績加上10分。
UPDATE SC
SET SC.grade = SC.grade+10
WHERE SC.grade =(SELECT TOP 1 SC.grade FROM SC ORDER BY SC.grade)
6)將成績最高前3名的學生成績減去20分。
Sql語句:
UPDATE SC
SET SC.grade = SC.grade-20
WHERE SC.grade IN(SELECT TOP 3 SC.grade FROM SC ORDER BY SC.grade DESC)
7)將成績最低前10%的學生成績減去5分。
Sql語句:
UPDATE SC
SET SC.grade = SC.grade-5
WHERE SC.grade IN(SELECT TOP 10 PERCENT SC.grade FROM SC ORDER BY SC.grade)
8)把王敏同學的學習選課和成績全部刪去。
Sql語句:
DELETE FROM SC
WHERE SC.sno =(SELECT S.sno FROM S WHERE S.sname = '王敏')
9)從學生表中刪除成績出現過 0 分的所有學生資訊。
Sql語句:
DELETE FROM S
WHERE S.sno =(SELECT SC.sno FROM SC WHERE SC.grade = 0)
3、在查詢分析器中用CREATE語句建立檢視。
1)建立計算機系學生的檢視IS_student。
Sql語句:
CREATE VIEW IS_student
AS
SELECT * FROM S
WHERE S.sdeptartment = '計算機系'
WITH CHECK OPTION
2)建立計算機系選修了C02課程的學生的檢視IS_C02。
Sql語句:
CREATE VIEW IS_C02
AS
SELECT * FROM S
WHERE S.sdeptartment = '計算機系' AND S.sno =
(SELECT SC.sno FROM SC WHERE SC.cno = 'C02')
WITH CHECK OPTION
3)建立計算機系選修了C02課程且成績在90分以上的學生的檢視IS_C0290。
Sql語句:
CREATE VIEW IS_C0290
AS
SELECT * FROM S
WHERE S.sdeptartment = '計算機系' AND S.sno =
(SELECT SC.sno FROM SC WHERE SC.cno = 'C02' AND SC.grade >= 90)
WITH CHECK OPTION
4、在查詢分析器中用DROP語句刪除檢視IS_student。
Sql語句:
DROP VIEW IS_student
四、實驗總結
新手自學 有錯勿噴