1. 程式人生 > >數據更新、視圖的創建與改動

數據更新、視圖的創建與改動

none 記錄 text 分析器 計算機 ext 使用 margin border

一、實驗目的

1、學會使用INSERTUPDATEDELETESQL語句進行數據更新;

2、學會使用CREATEDROPSQL語句創建和刪除視圖。

二、實驗內容

1、在SQL Server Management Studio中使用INSERTUPDATEDELETE語句進行數據更新。

2、在SQL Server Management Studio中使用CREATEDROP語句創建和刪除視圖。

三、實驗步驟

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中插入一個新生記錄(snoJ0405。sname:陳東;birthday1987-5-3sdeptartment中文系;tel0576-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

四、實驗總結

新手自學 有錯勿噴

數據更新、視圖的創建與改動