《《數(shù)據(jù)庫應(yīng)用基礎(chǔ)》課程設(shè)計(jì)報告》由會員分享,可在線閱讀,更多相關(guān)《《數(shù)據(jù)庫應(yīng)用基礎(chǔ)》課程設(shè)計(jì)報告(10頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、《數(shù)據(jù)庫應(yīng)用基礎(chǔ)》課程設(shè)計(jì)報告
學(xué)號:
班級:
姓名:
第二部分、教務(wù)管理系統(tǒng)相關(guān)的表與視圖的結(jié)構(gòu)
表的結(jié)構(gòu)
T (教師關(guān)系表)
列名
數(shù)據(jù)類型
數(shù)據(jù)長度
是否為空
TNO
varchar
16
V
TN
varchar
16
V
SEX
int
4
V
AGE
int
4
V
S (學(xué)生關(guān)系表)
列名
數(shù)據(jù)類型
長度
允許空
SNO
varchar
20
V
SN
char
20
V
SEX
char
20
V
AGE
int
4
V
SC (選課表)
列名
數(shù)據(jù)類型
數(shù)
2、據(jù)長度
是否為空
CNO
VARCHAR
16
是
CN
CHAR
16
否
CT
INT
4
否
SCORE
INT
4
否
SNO
Varchar
16
否
TNO
INT
4
否
學(xué)生部分信息視圖SI結(jié)構(gòu)
列名
數(shù)據(jù)類型
長度
允許空
SNO
VARCHAR
20
V
SN
CHAR
20
V
CN
CHAR
20
V
SCORE
INT
4
V
第三吾B分、表與視圖的數(shù)據(jù)列表
表的數(shù)據(jù)列表
T (教師關(guān)系表)
TNO
TN
SEX
AGE
01
趙成
男
35
3、02
李強(qiáng)
男
28
03
[何東
男
30
04
李紅
女
22
05
張力
男
39
S (學(xué)生關(guān)系表)
SNO
SN
SEX
AGE
S1
趙亦
女
17
S2
錢爾
男
18
S3
孫珊
女
18
S4
李思
男
21
S5
周武
男
19
S6
吳麗
男
15
SC選課表
CNO
CN
CT
SCORE
SNO
TNO
2
信息
60
80
S3
05
2
信息
60
56
S2
05
1
計(jì)算機(jī)
60
90
S5
01
1
計(jì)
4、算機(jī)
65
92
S1
04
3
物理
75
90
S3
02
5
自動化
80
75
S4
02
5
自動化
55
65
S6
05
7
會計(jì)
58
74
S5
03
創(chuàng)建命令:
Create view SI as select sno,sn,cn,score from s,sc
where s.sno=sc.sno
執(zhí)行結(jié)果:
SNO
SN
CN
SCORE
S1
趙亦
計(jì)算機(jī)
92
S3
孫珊
信息
80
S3
孫珊
物理
90
S5
周武
計(jì)算機(jī)
90
S6
吳麗
自動化
5、
65
第四吾B分、自定義函數(shù)、存儲過程、觸發(fā)器的源碼
一、自定義函數(shù)
(1)計(jì)算全體學(xué)生課程號為1的平均成績
DECLARE @cnum char(15)
declare @aver float
set @cnum=1
select @aver=(select avg(score)from SC WHERE
CNO=@CNUM
GROUP BY CNO
)
SELECT @aver AS 1課程的平均成績
(2)對于給定的學(xué)號S3,查詢該值在學(xué)生表中是否存在,若存
在返回0,不存在返回1。
declare @num varchar,@flag varchar
6、
set @num=S3
IF EXISTS(SELECT SNO FROM S WHERE SNO=@num)
select @flag=1
else
select @flag=0
二、存儲過程
在TEACH數(shù)據(jù)庫中,創(chuàng)建一個名稱為 QUERYTEACH的存
儲過程,該存儲過程的功能是從數(shù)據(jù)表 S中根據(jù)學(xué)號查詢某一同 學(xué)的姓名和系別, 查詢的結(jié)果由參數(shù) @5門和@~6。1返回.
CREATE PROCEDURE QUERYTEACH
(@sno char(20),
@sn char(20)OUTPUT,
@dept char(10) OUTPUT )
AS
SEL
7、ECT @sn=SN,@dept=DEPT
FROM S
WHERE SNO=
sno
10
(3)觸發(fā)器
創(chuàng)建一個觸發(fā)器,當(dāng)向S表中插入一條記錄時,自動顯示S表中 的記錄。
CREATE TRIGGER CHANGEDISPLAY
ON S
FOR INSERT
AS
SELECT * FROM S
第五部分、自定義函數(shù),存儲過程,觸發(fā)器的執(zhí)行結(jié)果
自定義函數(shù)
DECLZKE 融ng char 15 declare tavr f jet
SfrlfA* 毗v41r 咕 f tab SC THERE CWD WCITUM
GftCT BT
8、 CWO )
SELECT ewr AS F鼻慳勖不均成
c】前收的平均咸憤 9L0
declare %ua vxcIut,蛾 1叫 v&rchar
set Mg SJJ
IF cm [ SELECT SNO FROi S WHERE SK)Otiun
svlfCt 就1 卻 1
elf*
Sfliet 趾 17 0
府令己成功用庭.
存儲過程
declara CKIR : St)jDECLIRE CHAR 10 ESEC QUERYTEACHit . ASM OUTPUT OUT
iF
於名耳或口 i KULL NULL
觸發(fā)器
insEt into S 亶泣靄
9、 &ELJUtE 腌FI VALUES S7 ,芻當(dāng).文
W1M,|
SHO
SN
DEPT
1
S1
文 17
R 16
文 20
氨 2t
R 19
安 賴
it算機(jī)
自動化 計(jì)算機(jī) g動此
2
53
3
4
54
5
S5
*
C
7
S?
女 20
? 口網(wǎng)粗[二二消息
PART 6課程設(shè)計(jì)的體會與建議
通過一個學(xué)期的數(shù)據(jù)庫學(xué)習(xí), 我覺得這門課程還是比較難學(xué) 的,期末考試弁不是很理想。 對于兩周的數(shù)據(jù)庫實(shí)踐感覺還是比 較茫然與困惑。
實(shí)踐的第一天,老師只是簡單的說了下實(shí)踐所要參考的重要 章節(jié),同學(xué)們都感覺比較迷茫,不知道要干什么。后面幾天就好 多了,大家都按照課本上的要求開始學(xué)習(xí), 在學(xué)習(xí)的過程中還是
有比較多的問題的,但是我發(fā)現(xiàn)老師來機(jī)房的時間不夠多, 以致 于同學(xué)們堆積了很多問題,所以希望老師以后能多去機(jī)房解答同 學(xué)們的難題。
兩周的實(shí)踐說短不短說長不長, 但是我卻受益匪淺。我弄懂
了許多在學(xué)習(xí)中一直困擾我的問題, 而且對計(jì)算機(jī)的操作對數(shù)據(jù)
庫系統(tǒng)的運(yùn)用也更加熟練了, 同時我也深深的感受到數(shù)據(jù)庫的確
是一門值得認(rèn)真學(xué)習(xí)的學(xué)科, 學(xué)會使用數(shù)據(jù)庫對我們以后的工作
有很大的幫助。
總的來說,這次的數(shù)據(jù)庫實(shí)踐過的既有意義又充實(shí)。