鄺允新
摘 要 本文針對(duì)SQL Server數(shù)據(jù)庫應(yīng)用技術(shù)的特性,闡述了SQL Server 數(shù)據(jù)庫應(yīng)用技術(shù)在實(shí)驗(yàn)過程當(dāng)中體現(xiàn)的問題,通過實(shí)驗(yàn)項(xiàng)目的設(shè)計(jì)與分析,深刻探討對(duì)SQL Server數(shù)據(jù)庫的應(yīng)用價(jià)值。
【關(guān)鍵詞】數(shù)據(jù)庫 實(shí)驗(yàn)項(xiàng)目 觸發(fā)器
隨著科技發(fā)展,數(shù)據(jù)庫技術(shù)作為軟件系統(tǒng)的核心部分,在許多技術(shù)方面起到了支撐作用,計(jì)算機(jī)的存在離不開數(shù)據(jù)庫技術(shù)。SQL Server是微軟公司設(shè)計(jì)研發(fā)的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS)軟件,最初由Ashton-Tate與Microsoft Sybase共同研發(fā)的,1988年OS/2版本首次推出。Windows NT推出之后,SQL Server的開發(fā)上,Sybase與Microsoft分道揚(yáng)鑣,隨后,SQL Server被Microsoft移植于Windows NT系統(tǒng)中,注重Windows NT版本,而Sybase注重于SQL Server安裝界面中。
1 實(shí)驗(yàn)現(xiàn)狀分析
對(duì)于從實(shí)驗(yàn)項(xiàng)目分析,通過社會(huì)調(diào)查研究發(fā)現(xiàn),諸多使用者僅僅會(huì)運(yùn)用SQL Server做一個(gè)數(shù)據(jù)庫,在其基礎(chǔ)上,添加幾個(gè)表,然而觸發(fā)器、存儲(chǔ)過程這些有關(guān)SQL Server的重要資源都沒用過,甚至不會(huì)使用。書本中的實(shí)驗(yàn)項(xiàng)目,注重形式,有關(guān)實(shí)際操作內(nèi)容不多,導(dǎo)致人們?cè)谄綍r(shí)學(xué)習(xí)當(dāng)中缺乏實(shí)踐操作能力,在做實(shí)驗(yàn)的過程中顯得吃力。
2 上機(jī)實(shí)驗(yàn)設(shè)計(jì),編寫實(shí)驗(yàn)項(xiàng)目
2.1 操作student數(shù)據(jù)庫
(1)將數(shù)據(jù)庫進(jìn)行分離,觀察是否有文件存儲(chǔ)在資源管理器中;
(2)執(zhí)行數(shù)據(jù)庫附加操作;
(3)執(zhí)行數(shù)據(jù)庫收縮操作;
(4)執(zhí)行數(shù)據(jù)庫的刪除操作;
(5)執(zhí)行更改數(shù)據(jù)庫名稱操作;
2.2 d盤創(chuàng)建文件夾
方案一:在企業(yè)管理器中創(chuàng)建文件夾。
方案二:利用T-SQL語句,在查詢分析器創(chuàng)建文件夾。
2.3 操作三個(gè)表
(1)在信息表中添加性別、年齡、身高三個(gè)信息字段,其中,將性別默認(rèn)值設(shè)置為男,年齡輸入值控制在18至30之間,并輸入兩條信息記錄值。
(2)利用設(shè)計(jì)窗口,分別查看三個(gè)表中外鍵和主鍵,并觀察三個(gè)表之間存在的關(guān)系。
(3)在信息表中創(chuàng)建索引,編號(hào)字段創(chuàng)建簇索引;姓名字段創(chuàng)建唯一索引。
(4)創(chuàng)建tmp、is_row uniqueidentifier數(shù)據(jù)表;設(shè)置標(biāo)示種子id int,其中,將基數(shù)設(shè)置為1,將遞增量設(shè)置為2;位:數(shù)據(jù)類型bit。
(5)將tmp刪除。
2.4 操作pubs數(shù)據(jù)庫
根據(jù)三個(gè)表,創(chuàng)建關(guān)系圖,并對(duì)其設(shè)置索引。
2.5 T-SQL語言實(shí)驗(yàn)
(1)對(duì)信息表中所有男性信息進(jìn)行查詢操作:查詢表中男性總?cè)藬?shù),查詢表中所有男性的出生日期和姓名,創(chuàng)建一個(gè)新表new table,將查詢的結(jié)果存在新表中。
(2)對(duì)LessonSelectTable表中的21002這門課程進(jìn)行平均分查詢的操作。
(3)根據(jù)課程名稱,對(duì)LessonTable表中的所有信息進(jìn)行查詢操作,并按升序排列。
(4)在信息表中,按職業(yè)進(jìn)行人數(shù)查詢操作。
(5)對(duì)信息表中的所有姓氏是王的職工進(jìn)行查詢操作。
(6)對(duì)信息表中的年齡和姓名兩個(gè)字段進(jìn)行查詢操作。
(7)對(duì)信息表中的男性、女性的人數(shù)進(jìn)行查詢操作。
2.6 索引和試圖實(shí)驗(yàn)
(1)在表Student Table 中的StudentName字段創(chuàng)建唯一索引。
(2)創(chuàng)建一個(gè)視圖文件,命名為StudentView.sql,在該視圖中,只能看到職工單位和姓名,同時(shí)要求將基礎(chǔ)表中的英文字段名替換為中文字段名。
(3)創(chuàng)建一個(gè)視圖文件,命名為Depart LessonView.sql,在該視圖中,可查詢到LessonTable和DepartmentTable兩個(gè)表中的所有系的課程開設(shè)情況,并且要求其含有課程名稱和系名稱兩列信息。
(4)創(chuàng)建一個(gè)視圖文件,命名為LessonView.sql,在該視圖中,按課程分類,可以查詢關(guān)于LessonSelectTable和LessonTable兩個(gè)表中的平均成績(jī),并且要求其含有平均成績(jī)和課程名稱兩列信息。
2.7 儲(chǔ)存過程和觸發(fā)器實(shí)驗(yàn)
(1)創(chuàng)建一個(gè)儲(chǔ)存過程文件,命名為procstu.sql,查看該儲(chǔ)存過程,可以獲取信息表中姓名、籍貫、性別、出生日期信息。
(2)創(chuàng)建一個(gè)具有輸入?yún)?shù)功能的存儲(chǔ)過程procdep,利用這個(gè)存儲(chǔ)過程,輸入某單位的名稱,可得到有關(guān)職工信息,具體信息包括職務(wù)、工齡、編號(hào)、姓名、出生日期、性別。
(3)利用部門表和職工表,創(chuàng)建一個(gè)存儲(chǔ)過程procfind,要求輸入一個(gè)參數(shù),可以查詢到該部門職工的姓名、編號(hào)、工資以及出生日期。
(4)利用職工表,創(chuàng)建一個(gè)存儲(chǔ)過程procfind,無需輸入?yún)?shù),可以查詢到“打字員”的基本信息。
(5)創(chuàng)建一個(gè)存儲(chǔ)過程countnum.sql,該存儲(chǔ)過程具有輸入?yún)?shù)、輸出參數(shù)功能,輸入系名稱,輸出職工的總?cè)藬?shù)。
(6)創(chuàng)建一個(gè)存儲(chǔ)過程stu.sql,該存儲(chǔ)過程具有輸入?yún)?shù)、輸出參數(shù)功能,輸入編號(hào),輸出對(duì)應(yīng)職工的姓名。
(7)創(chuàng)建一個(gè)存儲(chǔ)過程lessa.sql,該存儲(chǔ)過程具有輸入?yún)?shù)、輸出返回值的功能,輸入部門名稱,如果該部門存在,則輸出“部門存在”字樣,如果該部門不存在,則輸出“部門不存在”字樣。
3 總結(jié)
綜上所述,結(jié)合實(shí)驗(yàn)教學(xué)的現(xiàn)狀以及存在的問題,編寫適合學(xué)習(xí)的實(shí)驗(yàn)項(xiàng)目,其中包括綜合性實(shí)驗(yàn)和基礎(chǔ)性實(shí)驗(yàn),SQL Server 數(shù)據(jù)在當(dāng)前社會(huì)中應(yīng)用廣泛,在報(bào)表數(shù)據(jù)統(tǒng)計(jì)中有著得天獨(dú)厚的優(yōu)勢(shì),是端到端、集成的、全面的數(shù)據(jù)解決方案,所以,SQL Server數(shù)據(jù)庫的應(yīng)用技術(shù)運(yùn)用意義深遠(yuǎn)。
參考文獻(xiàn)
[1]夏海靜.SQL Server數(shù)據(jù)庫應(yīng)用技術(shù)本科教學(xué)現(xiàn)狀分析與解決策略[J].科技世界,2014,29(02):175-176,183.
[2]李志軍.基于SQL Server BI決策樹的學(xué)生成績(jī)分析[J].數(shù)據(jù)庫與信息管理,2016(15):57-58,63.
[3]李興旺,孫汪峰.《數(shù)據(jù)庫高級(jí)應(yīng)用》教學(xué)創(chuàng)新方法研究[J].科技世界,2016(20):14,59.
作者單位
湖南鐵道職業(yè)技術(shù)學(xué)院 湖南省株洲市 412001