數(shù)據(jù)庫實習(xí)報告_第1頁
數(shù)據(jù)庫實習(xí)報告_第2頁
數(shù)據(jù)庫實習(xí)報告_第3頁
數(shù)據(jù)庫實習(xí)報告_第4頁
數(shù)據(jù)庫實習(xí)報告_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、成績指導(dǎo)教師 安康學(xué)院經(jīng)濟(jì)與管理系課程實習(xí)報告 課程名稱 實習(xí)時間 實習(xí)地點 班級專業(yè) 學(xué)生姓名 學(xué) 號 指導(dǎo)教師 教研室主任 教學(xué)副主任 填寫時間: 年 月 日課程實習(xí)報告填寫要求1.課程實習(xí)結(jié)束時學(xué)生必須提交課程實習(xí)報告,學(xué)生應(yīng)充分運用所學(xué)專業(yè)根底理論知識,結(jié)合自己的課程實習(xí)經(jīng)歷和有關(guān)資料,進(jìn)行比擬深入的分析和總結(jié),以此作為學(xué)生課程實習(xí)成績考核重要依據(jù)。2.課程實習(xí)報告要有獨立的見解,重點突出、條理清晰,字?jǐn)?shù)不少于2000字。3.課程實習(xí)報告的資料必須真實,內(nèi)容應(yīng)簡明扼要,且必須與所學(xué)課程內(nèi)容相關(guān),能反映出本人實習(xí)的情況、體會和感受。4.課程實習(xí)報告的封面反映學(xué)生課程實習(xí)的根本信息,其中“

2、指導(dǎo)教師欄填寫課程實習(xí)單位和校內(nèi)指導(dǎo)教師姓名,注意成績框中“指導(dǎo)教師欄應(yīng)由校內(nèi)指導(dǎo)教師手寫簽署姓名。5.正文內(nèi)容一般應(yīng)包含以下四個方面:課程實習(xí)目的;課程實習(xí)單位及實習(xí)崗位介紹;課程實習(xí)內(nèi)容、過程和完成的任務(wù);課程實習(xí)收獲、體會和建議。6.課程實習(xí)必須由校內(nèi)指導(dǎo)教師評定成績并親筆簽名,按百分制記分,評定的工程和權(quán)重為:實驗態(tài)度20%,實驗過程30%,實驗結(jié)果、結(jié)論與討論30%,實驗報告寫作20%。成績書寫在封面右上方表格內(nèi)。安康學(xué)院經(jīng)濟(jì)與管理系 課程實習(xí)報告一、實習(xí)的目的:實習(xí)的目的是為了配合課堂教學(xué),進(jìn)一步強(qiáng)化對理論知識的理解,結(jié)合SQL語言實驗和SQL SERVER數(shù)據(jù)庫系統(tǒng), 熟練掌握和

3、深入理解課堂教學(xué)內(nèi)容。幫助學(xué)生更好地學(xué)習(xí)本課程,理解和掌握數(shù)據(jù)庫設(shè)計所需的技術(shù),為整個專業(yè)學(xué)習(xí)打好根底,要求運用所學(xué)知識,上機(jī)解決一些典型問題,通過分析、設(shè)計、建庫建表、建立查詢等各環(huán)節(jié)的訓(xùn)練,使學(xué)生深刻理解、牢固掌握所用到的一些技術(shù)。二、課程實習(xí)地點電子商務(wù)實驗室5003三、實驗內(nèi)容:實習(xí)工程一:創(chuàng)立和修改數(shù)據(jù)庫和數(shù)據(jù)表1創(chuàng)立數(shù)據(jù)庫:創(chuàng)立一個StuSeleCourse數(shù)據(jù)庫,其主數(shù)據(jù)文件邏輯名StuSeleCourse_data,物理文件名StuSeleCourse_data.mdf,初始大小10MB,最大尺寸為無限大,增長速度1MB,文件的存放路徑為“d:test;數(shù)據(jù)庫日志文件邏輯名稱為

4、StuSeleCourse_log,物理文件名為StuSeleCourse_log.ldf,初始大小為1MB,最大尺寸為5MB,增長速度為10%,文件存放路徑為“d:test。create database StuSeleCourseon(name=StuSeleCourse_data,filename='d:testStuSeleCourse_data.mdf',size=10MB,filegrowth=1MB)log on(name=StuSeleCourse_log,filename='d:testStuSeleCourse_data.ldf',size=

5、1MB,maxsize=5MB,filegrowth=10%)execute sp_helpdb StuSeleCourse2查看數(shù)據(jù)庫屬性:使用T-SQL語句,查看數(shù)據(jù)庫StuSeleCourse屬性Select * from sys.databases where name='StuSeleCourse'3. 創(chuàng)立表:1在StuSeleCourse數(shù)據(jù)庫中,創(chuàng)立學(xué)生表student,表中的字段的詳細(xì)信息如下:create schema xt(st_id nVarChar(9) primary key not null,st_nm nVarChar(8) not null,s

6、t_sex nVarChar(2) null,st_birth datetime null,st_score int null,st_date datetime null,st_from nChar(20) null,st_dpid nVarChar(2) null,st_mnt tinyint null)2在StuSeleCourse數(shù)據(jù)庫中,創(chuàng)立課程信息表course:(cs_id nVarChar(4) primary key not null,cs_nm nVarChar(20) not null,cs_tm int null,cs_sc int null)3在StuSeleCours

7、e數(shù)據(jù)庫中,創(chuàng)立選課表slt_course:(cs_id nVarChar(4) foreign key references xt.course(cs_id) not null,st_id nVarChar(9) foreign key references xt.student(st_id) not null,score int null,sltdate int null,)4在StuSeleCourse數(shù)據(jù)庫中,創(chuàng)立院系信息表dept:(dp_id nVarChar(2) not null,dp_nm nVarChar(20) not null,dp_drt nVarChar(8) nu

8、ll,dt_tel nVarChar(12) null,)采用“T-SQL語句或“SSMS,完成數(shù)據(jù)完整性操作1空值約束( NULL )將student表中的st_sex列屬性更改為NOT NULLALTER TABLE xt.student ALTER column st_sex nVarChar(2) NOT NULL2默認(rèn)值約束( DEFAULT )將student表中的st_from列默認(rèn)值設(shè)置為“陜西省ALTER TABLE xt.student ADD DEFAULT '陜西省' FOR st_from3默認(rèn)值對象創(chuàng)立默認(rèn)值對象df_today為當(dāng)前日期,并將其綁定

9、到slt_course表中的sltdate列,然后取消綁定,最后刪除默認(rèn)值對象df_today。CREATE DEFAULT df_today AS Getdate( )GOEXEC sp_bindefault df_today, 'xt.slt_course.sltdate'GOEXEC sp_unbindefault 'xt.slt_course.sltdate'GODROP DEFAULT df_todayGO4檢查約束( CHECK )將slt_course表中的score列的檢查約束設(shè)置為>=0且<=100ALTER TABLE xt.sl

10、t_course ADD CHECK (score>=0 AND score<=100)5規(guī)那么約束對象創(chuàng)立規(guī)那么約束對象rl_sex,用于檢查性別的取值僅限于“男和“女,并將其綁定到student表中的st_sex列,然后取消綁定,最后刪除規(guī)那么約束對象rl_sex。CREATE RULE rl_sex AS chksex IN ('男', '女')GOEXEC sp_bindrule rl_sex, 'xt.student.st_sex'GOEXEC sp_unbindrule 'xt.student.st_sex'

11、;GODROP RULE rl_sexGO6主鍵將dept表中的dp_id列設(shè)置為主鍵ALTER TABLE xt.dept ADD PRIMARY KEY (dp_id)7唯一性約束( UNIQUE )將dept表中的dp_nm列設(shè)置為唯一性約束ALTER TABLE xt.dept ADD UNIQUE (dp_nm)8標(biāo)識列向slt_course表中添加標(biāo)識列id,第1行默認(rèn)值為1,相鄰兩個標(biāo)識列間的增量為1ALTER TABLE xt.slt_course ADD id INT IDENTITY(1,1) NOT NULL9外鍵 FOREIGN KEY 被參照表為dept,參照表為st

12、udentADD FOREIGN KEY (st_dpid) REFERENCES xt.dept(dp_id)實習(xí)工程二:添加記錄并建立查詢采用“T-SQL語句或“SSMS,完成表操作修改表結(jié)構(gòu):1向表中添加列:為“dept表添加“dp_count列數(shù)據(jù)類型為varchar,長度為3,允許為空ALTER TABLE xt.dept ADD dp_count varchar(3) NULl2修改列數(shù)據(jù)類型:修改“dept表的“dp_count列數(shù)據(jù)類型為intALTER TABLE xt.dept ALTER COLUMN dp_count int NULL向表中輸入數(shù)據(jù)記錄分別向“stude

13、nt表、“course表、“slt_course表、“dept表中輸入兩個數(shù)據(jù)記錄,記錄內(nèi)容自己定義。INSERT INTO xt.student(st_id,st_nm,st_sex,st_birth,st_dpid)VALUES('202122801','忘賓','男','1990.12.13','01')INSERT INTO xt.student(st_id,st_nm,st_sex,st_birth,st_dpid)VALUES('202122802','揚程','

14、女','1991.12.01','10')INSERT INTO xt.course VALUES ('1111', '英語',48,4)INSERT INTO xt.course VALUES ('1112', '化學(xué)',64,4)INSERT INTO xt.slt_course(cs_id,st_id,score) VALUES ('1111', '202122801',89)INSERT INTO xt.slt_course(cs_id,st_id,s

15、core) VALUES ('1112', '202122802',70)INSERT INTO xt.dept(dp_id,dp_nm,dp_drt,dt_tel) VALUES('01', '經(jīng)濟(jì)與管理系', '張華', '11234444')INSERT INTO xt.dept(dp_id,dp_nm,dp_drt,dt_tel)VALUES('10', '電信系', '王燁', '11234445')四、采用“T-SQL語句或

16、“SSMS,完成數(shù)據(jù)更新1表中插入數(shù)據(jù)Ø 向dept表插入一條記錄,系號11,系名自動控制系,系主任為李麗華, 81234567INSERT INTO xt.dept(dp_id,dp_nm,dp_drt,dt_tel) VALUES('11', '自動控制系', '李麗華', '81234567')Ø 向student表插入一條記錄,學(xué)號070202101,姓名為趙明茗,性別為女,出生日期為1990年9月9日,系號為11,其余字段為NULL或默認(rèn)值INSERT INTO xt.student(st_id, s

17、t_nm, st_sex, st_birth, st_dpid)VALUES ('070202101', '趙明茗', '女', '1990.9.9', '11' )Ø 向course表插入一條記錄,課程號1234,課程名為管理系統(tǒng),其余字段為NULL或默認(rèn)值INSERT INTO xt.course(cs_id, cs_nm) VALUES ('1234', '管理系統(tǒng)')Ø 向slt_course表插入一條記錄,課程號1234,學(xué)名070202101,其余字段

18、為NULL或默認(rèn)值INSERT INTO xt.slt_course(cs_id,st_id) VALUES ('1234', '070202101')2修改表中數(shù)據(jù)Ø 修改student表記錄,將趙明茗的入學(xué)成績改為88UPDATE xt.student SET st_score=88 WHERE st_nm='趙明茗'Ø 修改course表記錄,將所有記錄的學(xué)分改為4,學(xué)時改為64、UPDATE xt.course SET cs_tm=64, cs_sc=4Ø 修改slt_course表記錄,將課程號為1234,

19、學(xué)名為070202101的記錄的成績改為77UPDATE xt.slt_course SET score=77 WHERE cs_id='1234' AND st_id='070202101'3使用T-SQL語句,刪除表中數(shù)據(jù)Ø 刪除slt_course表記錄,將課程號為1234,學(xué)名為070202101的記錄刪除DELETE FROM xt.slt_course WHERE cs_id='1234' AND st_id='070202101'Ø 刪除course表記錄,將課程號為1234的記錄刪除DELETE

20、 FROM xt.course WHERE cs_id='1234'五、采用“T-SQL語句,完成簡單查詢1查詢表中所有的列查詢所有系的信息2查詢表中指定列的信息查詢所有的課程號與課程名稱SELECT3在查詢列表中使用列表達(dá)式在查詢student表時使用列表達(dá)式:入學(xué)成績+400SELECT st_id, st_nm, st_score, st_score+400 AS new_score4重新命名查詢結(jié)果使用AS關(guān)鍵字為dept表中屬性指定列名:系號、系名、系主任、聯(lián)系 SELECT dp_id AS 系號, dp_nm AS 系名, dp_drt AS 系主任, dt_te

21、l AS聯(lián)系 使用"="號為course表中屬性指定列名:課程號、課程名、學(xué)時(=cs_sc*16)、學(xué)分SELECT 課程號=cs_id, 課程名=cs_nm, 學(xué)分=cs_sc, 學(xué)時=cs_sc*165增加說明列查詢dept表的系號、系名和系主任,向查詢結(jié)果中插入說明列:系號、系名和系主任SELECT '系號:', dp_id, '系名:', dp_nm, '系主任:', dp_drt6查詢列表中使用系統(tǒng)函數(shù)顯示所有學(xué)生的學(xué)號、姓名、性別和入學(xué)年份SELECT st_id, st_nm, st_sex, DATEPART

22、(yy,st_birth) AS 入學(xué)年份顯示所有學(xué)生學(xué)號、姓名、性別和班級(學(xué)號前6位)SELECT st_id, st_nm, st_sex, LEFT(st_id, 6) AS 班級7消除查詢結(jié)果中的重復(fù)項顯示所有學(xué)生班級、8取得查詢結(jié)果的局部行集添加記錄INSERT INTO xt.student(st_id,st_nm,st_sex,st_birth,st_score,st_date,st_from,st_dpid) VALUES('202122803','李明','男','1990.12.11',80,'202

23、1','杭州','01')INSERT INTO xt.student (st_id,st_nm,st_sex,st_birth,st_score,st_date,st_from,st_dpid) VALUES('202122804','孫莉','女','1991.11.01',70,'2006','北京','11')INSERT INTO xt.student (st_id,st_nm,st_sex,st_birth,st_score,st_

24、date,st_dpid) VALUES('202122805','王林','男','1987.10.13',80,'2007','01')INSERT INTO xt.student (st_id,st_nm,st_sex,st_birth,st_score,st_date,st_dpid) VALUES('202122806','張燦','女','1988.10.01',90,'2021','10')

25、INSERT INTO xt.student (st_id,st_nm,st_sex,st_birth,st_score,st_date,st_dpid) VALUES('080808011','武力','男','1988.10.11',80,'2021','01')INSERT INTO xt.student (st_id,st_nm,st_sex,st_birth,st_score,st_date,st_dpid) VALUES('080808012','許靜',

26、'女','1988.10.01',60,'2007','10')顯示前5條學(xué)生記錄信息顯示前25%條學(xué)生記錄信息六、采用“T-SQL語句,完成條件查詢1使用關(guān)系表達(dá)式表示查詢條件Ø 查詢dept表中系號為11的院系信息SELECT * FROM xt.dept WHERE dp_id = '11'Ø 查詢student表中11系的學(xué)生學(xué)號、姓名、性別和所在系編號WHERE st_dpid = '11'Ø 查詢student表中2021年及以后入學(xué)的學(xué)生信息select

27、* from xt.student where DATEPART(yyyy,st_date)>=2021Ø 在查詢student表080808班學(xué)生的學(xué)號、姓名、性別和入學(xué)成績select st_id,st_nm,st_sex,st_score from xt.student where left(st_id,6)='080808'2使用邏輯表達(dá)式表示查詢條件Ø 查詢student表中非11系的學(xué)生信息select * from xt.student where st_dpid!='11'select * from xt.student

28、 where st_dpid not in(11)Ø 查詢選修了1112號課程且成績在60以上的學(xué)生學(xué)號WHERE (cs_id='1112') AND (score>60)Ø 查詢2007年入學(xué)的01系所有男生信息WHERE (st_date='2007') AND (st_sex='男') and(st_dpid='01')Ø 查詢11系和01系的學(xué)生信息WHERE (st_dpid='01') or(st_dpid='11')Ø 查詢11系和01系

29、所有2007年入學(xué)的學(xué)生信息WHERE (st_dpid='01') or(st_dpid='11')and (st_date='2007')3使用LIKE關(guān)鍵字進(jìn)行模糊查詢Ø 查詢所有“數(shù)開頭的課程信息 WHERE cs_nm like'數(shù)%'Ø 查詢所有由三個字組成的“王姓學(xué)生信息 WHERE st_nm like'王_'Ø 查詢所有課程名中包含“學(xué)的課程信息 WHERE cs_nm like'%學(xué)%'Ø 查詢學(xué)生姓名介于王姓到張姓的信息 WHERE st

30、_nm LIKE '王%' or st_nm LIKE '張%'或者 WHERE st_nm LIKE '王-張%'4使用BetweenAnd關(guān)鍵字進(jìn)行查詢Ø 查詢在1988 WHERE st_birth between '1988.7.1'and '1990.6.30'Ø 查詢選修了1112號課程且成績在60到80之間的學(xué)生選課信息 WHERE cs_id='1112' and (score between 60 and 80)5使用IN關(guān)鍵字進(jìn)行查詢Ø 查詢11系、

31、12系、13系的學(xué)生信息SELECT * FROM xt.student WHERE st_dpid in('11','10','01') Ø 查詢所有張,王,李,趙姓的學(xué)生的學(xué)號、姓名、性別 WHERE left(st_nm,1)in('張','王','李','趙')6使用NOT NULL關(guān)鍵字進(jìn)行查詢Ø 查詢所有生源為非空的學(xué)生信息SELECT * FROM xt.student WHERE st_from is not nullØ 查詢選修了111

32、2號課程且成績不為空的學(xué)生選課信息SELECT * FROM xt.slt_course WHERE score is not null and cs_id='1112'七、采用“T-SQL語句,完成查詢排序與查詢結(jié)果存儲再添加幾條記錄INSERT INTO xt.slt_course(cs_id,st_id,score) VALUES ('1111', '202122803',89)INSERT INTO xt.slt_course(cs_id,st_id,score) VALUES ('1112', '20212280

33、4',70)INSERT INTO xt.slt_course(cs_id,st_id,score) VALUES ('1111', '202122805',59)INSERT INTO xt.slt_course(cs_id,st_id,score) VALUES ('1112', '202122806',60) INSERT INTO xt.slt_course(cs_id,st_id,score) VALUES ('1112', '080808011',70)1查詢課程信息,按課程名稱

34、降序排序SELECT * FROM xt.course ORDER BY cs_nm DESC2查詢選修了1112號課程成績非空的學(xué)生學(xué)號和成績,并按成績降序排序WHERE cs_id='1112' AND score IS NOT NULLORDER BY score DESC3查詢11系學(xué)生學(xué)號、姓名和年齡,按年齡升序排序SELECT st_id,st_nm,DATEPART(yy,GETDATE( )-DATEPART(yy,st_birth) AS ageFROM xt.student where st_dpid='11'ORDER BY age ASC

35、4查詢學(xué)生信息,按姓名升序排序,再按系號降序排序SELECT * FROM xt.student ORDER BY st_nm asc,st_dpid desc5創(chuàng)立學(xué)生表副本student01,僅保存學(xué)生學(xué)號、姓名和性別SELECT st_id, st_nm, st_sex INTO 6查詢陜西籍學(xué)生,將結(jié)果保存在新表st_shanxiSELECT * INTO st_shanxi FROM xt.student where st_from='陜西省'7查詢選修了1112號課程學(xué)生的選課信息,按學(xué)號升序排序,將結(jié)果保存在新表slt1001SELECT * INTO slt10

36、01 FROM xt.slt_course WHERE cs_id='1112' ORDER BY st_id8用局部變量stage保存學(xué)生張三的年齡DECLARE stage intSELECT stage = DATEPART(yy,GETDATE()-DATEPART(yy,st_birth)WHERE st_nm='小東'9用局部變量name和stscore保存070101班按學(xué)號排序后最后一個學(xué)生的姓名和入學(xué)成績DECLARE name nVarChar(8), stscore intSELECT name = st_nm, stscore = st_

37、scoreWHERE LEFT(st_id,6)='070101'ORDER BY st_id八、采用“T-SQL語句,查詢統(tǒng)計與匯總Ø 查詢課程總數(shù)Ø 查詢選修1112號課程的學(xué)生人數(shù)SELECT COUNT(st_id) FROM xt.slt_course Where cs_id = '1112'Ø 查詢被選修課程的數(shù)量SELECT COUNØ 詢選修080808班學(xué)生的平均入學(xué)成績SELECT AVG(st_score) FROM xt.student WHERE LEFT(st_id,6)='080808

38、'Ø 查詢070101001號學(xué)生選修課程的數(shù)量、總分以及平均分SELECT COUNT(cs_id) AS 課程數(shù)量,SUM(score) AS 總分,AVG(score) AS 平均分 WHERE st_id='070101001'Ø 查詢選修1112號課程的學(xué)生人數(shù)、最高分、最低分和平均分SELECT COUNT(*) AS 學(xué)生人數(shù), MAX(score) AS 最高分,MIN(score) AS 最低分, AVG (score) AS 平均分 FROM xt.slt_course WHERE cs_id='1112'

39、6; 求各個課程號和相應(yīng)的選課人數(shù)SELECT cs_id, COUNT(st_id) as 人數(shù)FROM xt.slt_course GROUP BY cs_idØ 統(tǒng)計各班人數(shù)GROUP BY LEFT(st_id,6)Ø 依次按班級、系號對學(xué)生進(jìn)行分類統(tǒng)計人數(shù)、入學(xué)平均分SELECT st_dpid AS 系號, LEFT(st_id,6) AS 班級, COUNT(st_nm) AS 人數(shù), AVG(st_score) AS 均分FROM xt.student GROUP BY LEFT(st_id,6), st_dpidØ 查詢選修了均分在75以上的課程

40、號及均分SELECT cs_id AS 課程編號, AVG(score) AS 均分FROM xt.slt_course GROUP BY cs_id HAVING AVG(score)>75Ø 查詢選修了2門以上課程的學(xué)生學(xué)號SELECT st_id FROM xt.slt_course GROUP BY st_id HAVING COUNT(*)>2Ø 明細(xì)匯總年齡 >23的學(xué)生,并匯總學(xué)生數(shù)量、平均年齡SELECT st_nm,DATEPART(yy,GETDATE( )-DATEPART(yy,st_birth) AS 年齡FROM xt.stud

41、ent WHERE DATEPART(yy,GETDATE()-DATEPART(yy,st_birth)>23COMPUTE COUNT(st_nm),AVG(DATEPART(yy,GETDATE()-DATEPART(yy,st_birth)Ø 按班級明細(xì)匯總成績<85分的學(xué)生,匯總學(xué)生數(shù)、均分SELECT st_nm, LEFT(st_id,6) AS 班級, st_score FROM xt.student WHERE st_score<85 ORDER BY 班級COMPUTE COUNT(st_nm), AVG(st_score) BY 班級九、采用“

42、T-SQL語句,完成連接查詢Ø 連接查詢學(xué)生學(xué)號、姓名、性別及其所選課程編號Ø 連接查詢學(xué)生學(xué)號、姓名及其所選課程名稱及成績Ø 查詢選修了1112課程的學(xué)生學(xué)號、姓名及1111課程成績SELECT a.st_id, st_nm, score FROM student a,slt_couse b WHERE a.st_id = b.st_id AND b.cs_id = '1112'Ø 查詢選修了“數(shù)據(jù)結(jié)構(gòu)課程的學(xué)生學(xué)號、姓名及課程成績SELECT a.st_id, st_nm, score FROM xt.student a, xt.sl

43、t_course b, xt.course cWHERE a.st_id=b.st_id AND b.cs_id=c.cs_id AND c.cs_nm='數(shù)學(xué)'Ø 用左外連接查詢沒有選修任何課程的學(xué)生學(xué)號、姓名 Ø 用右外連接查詢選修各個課程的學(xué)生學(xué)號 十、采用“T-SQL語句,完成子查詢Ø 用子查詢對各班人數(shù)進(jìn)行查詢新增列SELECT DISTINCT LEFT(a.st_id,6) AS 班級, 人數(shù)= ( SELECT COUNT(st_id) FROM xt.student b WHERE LEFT(a.st_id,6) = LEFT(b

44、.st_id,6) FROM xt.student a ORDER BY LEFT(a.st_id,6) ASC用子查詢對各課程的選課人數(shù)進(jìn)行查詢新增列SELECT DISTINCT a.cs_id, 人數(shù)= ( SELECT COUNT(st_id) FROM xt.slt_course b WHERE a.cs_id = b.cs_id)FROM xt.slt_course a ORDER BY a.cs_id ASCØ 查詢選修了1112課程成績及格的學(xué)生的學(xué)號、姓名和性別,并按姓名升序排序1通過子查詢實現(xiàn):使用IN關(guān)鍵字WHERE st_id IN( SELECT st_id

45、 FROM xt.slt_course WHERE cs_id='1112' AND score >60 )ORDER BY st_nm2通過子查詢實現(xiàn):使用比擬運算符SELECT st_id, st_nm, st_sexFROM xt.student a WHERE ( SELECT score FROM xt.slt_course b WHERE a.st_id = b.st_id AND cs_id = '1112' ) > 60ORDER BY st_nmØ 查詢“王貴同學(xué)所在班的學(xué)生信息,并按姓名降序排序1通過子查詢實現(xiàn):IN運算

46、符SELECT st_id, st_nm, st_sex FROM xt.student WHERE LEFT(st_id,6) IN(SELECT Left(st_id,6) FROM xt.student WHERE st_nm='李明')ORDER BY st_nm DESC2通過自連接查詢實現(xiàn):JOINSELECT s1.st_id, s1.st_nm, s1.st_sex FROM xt.student s1 JOIN xt.student s2 ON LEFT(s1.st_id,6) = LEFT(s2.st_id,6)WHERE s2.st_nm='李明&

47、#39; Ø 查詢其它班比080808班某一學(xué)生的1112號課程成績高的學(xué)生信息ANY/ALLWHERE score > ANY WHERE cs_id = '1112' AND LEFT(st_id,6)='080808')AND LEFT(st_id,6) <> '080808' AND cs_id = '1112'Ø 查詢大于等于60分且且比1112課程平均成績低的學(xué)生課程信息BetweenAndSELECT * FROM xt.slt_course a WHERE a.score BE

48、TWEEN 60 AND ( SELECT AVG(b.score) FROM xt.slt_course b WHERE b.cs_id='1112' )Ø 查詢系主任為“李澤陽的系的所有學(xué)生信息1通過子查詢實現(xiàn):IN運算符SELECT * FROM xt.student WHERE EXISTS( SELECT * FROM xt.dept WHERE st_dpid = dp_id AND dp_drt='張華' )2通過子查詢實現(xiàn):=運算符SELECT * FROM xt.student WHERE st_dpid =( SELECT dp_i

49、d FROM xt.dept WHERE dp_drt='張華' )實習(xí)工程三:創(chuàng)立視圖和索引1使用企業(yè)管理器創(chuàng)立視圖、查看視圖數(shù)據(jù)、應(yīng)用視圖進(jìn)行查詢、更改數(shù)據(jù)表中數(shù)據(jù)。2使用查詢分析器執(zhí)行Tnsact-SQL語句創(chuàng)立視圖、查看視圖數(shù)據(jù)、應(yīng)用視圖進(jìn)行查詢、更改數(shù)據(jù)表中數(shù)據(jù)。3視圖的功能要求可由帶課教師指定。4使用企業(yè)管理器創(chuàng)立數(shù)據(jù)表的聚集型、非聚集型索引,唯一性索引等。5使用查詢分析器執(zhí)行Tnsact-SQL語句創(chuàng)立數(shù)據(jù)表的聚集型、非聚集型索引,唯一性索引等。索引的功能要求可由帶課教師指定。任務(wù)一、對學(xué)生表創(chuàng)立一個復(fù)合索引,使用姓名字段和出生日期字段。啟動SQL Server

50、2005,單擊“新建查詢,在彈出窗口中輸入如下語句:use StuSeleCoursecreate INDEX I_studenton xt.student(st_nm,st_birth)withPAD_INDEX,FILLFACTOR=40任務(wù)二、使用SQL語句創(chuàng)立一個視圖,命名為 V_ 選課。要求基表的數(shù)據(jù)來源為:學(xué)生表、選課表、授課任務(wù)表、教師、課程表。選擇的字段為:學(xué)生表中的學(xué)生號、姓名和班級,課程表中的課程號和課程名字段,授課任務(wù)表中的授課學(xué)期字段,教師表中的教師號、教師姓名和所在部門字段。as select student.st_id,student.st_nm,left(stud

51、ent.st_id,6) as class,course.cs_id,實習(xí)工程四:創(chuàng)立觸發(fā)器和存儲過程1使用企業(yè)管理器及查詢分析器執(zhí)行Tnsact-SQL語句創(chuàng)立創(chuàng)立AFTER 2INSERT、AFTER UPDATA觸發(fā)器。3AFTER觸發(fā)器的功能要求可由帶課教師指定。4使用企業(yè)管理器及查詢分析器執(zhí)行Tnsact-SQL語句創(chuàng)立執(zhí)行存儲過程。5存儲過程的功能要求可由帶課教師指定。任務(wù)一:對數(shù)據(jù)庫“StuSeleCourse中的“student表的delete操作定義AFTER觸發(fā)器,檢查該學(xué)生是否選課,假設(shè)該學(xué)生有選課那么不能刪除,否那么可以刪除。create trigger wyy on

52、xt.student after delete as declare a nvarchar(9)select a=st_id from deletedif exists(select * from xt.slt_course where slt_course.st_id=a)begin raiserror('不',1,10)rollback end任務(wù)二:創(chuàng)立存儲過程求一個數(shù)的階乘,一個輸入,一個輸出。(帶有輸出參數(shù)的) 并執(zhí)行該存儲過程: create procedure numm i int, s int output as set i=2 set s=1 while (i

53、<=10) begin set s=s*i set i=i+1 end return sdeclare s int exec numm 2,s output select sdeclare s int exec numm 2,s output select s 任務(wù)三:創(chuàng)立一個名為stu_info的存儲過程,要求:輸入學(xué)號,查詢學(xué)生所在的班級、學(xué)生姓名,課程名和選課成績。create procedure stu_info1 st_id nvarchar(9) asselect left(student.st_id,2) as 班級,st_nm,cs_nm,scorewhere stude

54、nt.st_id=st_id執(zhí)行該存儲過程:exec stu_info1 st_id='080808011'五、實習(xí)心得寫1000字左右的實習(xí)心得體會建議數(shù)據(jù)庫對我來說是一直都很神秘,沒接觸的時候總是覺得它比擬深奧或是不可接近的電腦知識,盡管自己對電腦非常感興趣,其實還是有些心理上的陌生感。電腦就和我們平時的其它科目學(xué)習(xí)一樣感覺它有永無止境的知識,在這從初接觸電腦時連個電腦的鍵盤都不敢動到現(xiàn)在的熟悉,其中的過程是多么長啊,數(shù)據(jù)庫是我在高中時候聽過,到了大學(xué)漸漸了解了些,但就其原理性的內(nèi)容還不知道,也就是根本就不清楚什么是數(shù)據(jù)庫,只是知道一個所謂的中國字典里的名詞。當(dāng)時感覺sql

55、 sever 2005數(shù)據(jù)庫既然是單獨一門課程一定會講的比擬細(xì),也能學(xué)到真正實用的內(nèi)容。選上了這門課以后發(fā)現(xiàn)和我想的根本是一樣的,老師對學(xué)生也比擬和藹可親,對我們要求也不是很緊。讓每個人都覺得輕輕松松就能把這門課程學(xué)完,沒有多么緊張的作業(yè),也沒有太苛刻的要求。這個星期是我們SQL Server 大型數(shù)據(jù)庫課的實訓(xùn),經(jīng)過將近一個星期的實訓(xùn),讓我領(lǐng)會到了許多平時課堂上所沒有接受的課外知識,很讓人受益匪淺,懂得如何去運用,而進(jìn)行的一次分析設(shè)計綜合的訓(xùn)練。而本次實訓(xùn)的目的是讓我們掌握數(shù)據(jù)庫系統(tǒng)的創(chuàng)立、原理、技術(shù)應(yīng)用。將理論與實際相結(jié)合,應(yīng)用現(xiàn)有的數(shù)據(jù)庫管理系統(tǒng)軟件,標(biāo)準(zhǔn)、科學(xué)地完成

56、一個設(shè)計與實現(xiàn) 對于學(xué)習(xí)sql sever 2005數(shù)據(jù)庫從網(wǎng)絡(luò)上找資料我認(rèn)為是比擬好的,現(xiàn)在的網(wǎng)絡(luò)又這么的興旺應(yīng)該去充分利用。我知道sql sever 2005的官方網(wǎng)站:這里有sql sever 2005的各種版本的數(shù)據(jù)庫、應(yīng)用工具和權(quán)威的官方文檔。雖然我是個新手,但是常到哪些相關(guān)的數(shù)據(jù)庫論壇或是網(wǎng)站覺得每次的收獲都不小,網(wǎng)絡(luò)對我來說可是個重要的東西,除了sql sever 2005數(shù)據(jù)庫對于其它的一些電腦知識都從網(wǎng)絡(luò)里學(xué)習(xí)了不少,我常用的一個搜索網(wǎng)站就是大家都熟悉的百度了以前沒接觸過它,現(xiàn)在認(rèn)識了它才知道sql sever 2005的體系很龐大,要學(xué)習(xí)它,首先要了解sql sever 2

57、005的框架。它有物理結(jié)構(gòu)(由控制文件、數(shù)據(jù)文件、重做日志文件、參數(shù)文件、歸檔文件、密碼文件組成),邏輯結(jié)構(gòu)(表空間、段、區(qū)、塊),內(nèi)存分配(SGA和PGA)算機(jī)的實際內(nèi)存中得以分配,如果實際內(nèi)存不夠再往虛擬內(nèi)存中寫,后臺進(jìn)程(數(shù)據(jù)寫進(jìn)程、日志寫進(jìn)程、系統(tǒng)監(jiān)控、進(jìn)程監(jiān)控、檢查點進(jìn)程、歸檔進(jìn)程、效勞進(jìn)程、用戶進(jìn)程),SCN(System Change Number)。這些東西感覺都比擬專業(yè),我對它們也就是個知道,想要真真去認(rèn)識我還得努力去做。雖然懂得還不是很多,起碼會了根本的軟件操作,老師說我們用的都是客戶端,效勞端看不到,也不知道效勞端是什么樣的,只知道客戶端就挺多東西的,沒有真正的去學(xué)習(xí)利用

58、是很難掌握的。實訓(xùn)課是在學(xué)習(xí)與探索中度過的,短暫的5天實訓(xùn)是結(jié)束了,但其中讓我們學(xué)到了許多知識,出現(xiàn)許多未知的為什么,如倉庫管理數(shù)據(jù)庫的初步設(shè)置、數(shù)據(jù)備份與復(fù)原的步驟,如何建立視圖、觸發(fā)器等一系列的問題,正是在老師和同學(xué)的共同努力之下,我們才一步步把問題解決了,最終完成了不可能完成的任務(wù)。教師評語教師用紅色筆填寫: 教師簽名: 年 月 日注:學(xué)生實習(xí)報告按照五級制評閱,五級制轉(zhuǎn)換為百分制成績是“優(yōu)95,“良85,“中75,“及格60,“不及格50。下面為朱自清的散文欣賞,不需要的朋友可以下載后編輯刪除!謝謝!荷塘月色作者: 朱自清這幾天心里頗不寧靜。今晚在院子里坐著乘涼,突然想起日日走過的荷塘,在這滿月的光里,總該另有一番樣子吧。月亮漸漸地升高了,墻外馬路上孩子們的歡笑,已經(jīng)聽不見了;妻在屋里拍著閏兒,迷迷糊糊地哼著眠歌。我悄悄地披了大衫,帶上門出去。沿著荷塘,是一條曲折的小煤屑路。這是一條幽僻的路;白天也少人走,夜晚更加寂寞。荷塘四面,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論