數(shù)據(jù)庫(kù)及其應(yīng)用實(shí)驗(yàn)報(bào)告_第1頁(yè)
數(shù)據(jù)庫(kù)及其應(yīng)用實(shí)驗(yàn)報(bào)告_第2頁(yè)
數(shù)據(jù)庫(kù)及其應(yīng)用實(shí)驗(yàn)報(bào)告_第3頁(yè)
數(shù)據(jù)庫(kù)及其應(yīng)用實(shí)驗(yàn)報(bào)告_第4頁(yè)
數(shù)據(jù)庫(kù)及其應(yīng)用實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、數(shù)據(jù)庫(kù)及其應(yīng)用實(shí)驗(yàn)報(bào)告二實(shí)驗(yàn)序號(hào):B0901000-03 實(shí)驗(yàn)項(xiàng)目名稱:SQL查詢、選擇查詢和動(dòng)作查詢學(xué)號(hào)姓名專業(yè)、班實(shí)驗(yàn)地點(diǎn)指導(dǎo)教師時(shí)間一、實(shí)驗(yàn)?zāi)康募耙?掌握Access表達(dá)式的基本概念。了解不同類型數(shù)據(jù)的常量、參數(shù)、運(yùn)算與函數(shù)的使用。2理解查詢對(duì)象的意義和建立方法。3掌握SQL語(yǔ)言中SELECT語(yǔ)句的主要應(yīng)用。4掌握SQL的插入、更新、刪除操作命令的基本應(yīng)用。5了解SQL定義數(shù)據(jù)表的基本方法。6理解Access選擇查詢的意義和類別。7掌握一般選擇查詢的操作應(yīng)用;理解并掌握交叉查詢的應(yīng)用;理解參數(shù)查詢的意義。8理解Access動(dòng)作查詢包含的查詢類別。 9將動(dòng)作查詢與SQL命令進(jìn)行對(duì)比,理解

2、并掌握動(dòng)作查詢的操作應(yīng)用。 二、實(shí)驗(yàn)設(shè)備(環(huán)境)及要求 PC機(jī),Windows XP,Access 2003,學(xué)生管理數(shù)據(jù)庫(kù)三、實(shí)驗(yàn)內(nèi)容要求(一) SQL視圖中表達(dá)式練習(xí)1進(jìn)入SQL視圖及在不同視圖間切換在Access中進(jìn)入查詢的設(shè)計(jì)視圖并在查詢的不同視圖之間切換。2不同類型數(shù)據(jù)的表達(dá)式運(yùn)算在SQL視圖中分別輸入以下命令并運(yùn)行,對(duì)于參數(shù)自己輸入數(shù)據(jù)。查看并寫(xiě)出各表達(dá)式運(yùn)算結(jié)果。SELECT -5.122+(17 mod 3);SELECT "Hello "+",World!",LEFT("清華大學(xué)出版社",2)+RIGHT("

3、;清華大學(xué)出版社",3);SELECT "你畢業(yè)的年份是", VAL(LEFT(你的學(xué)號(hào),4)+4;SELECT "現(xiàn)在是"+STR(YEAR(DATE()+"年","現(xiàn)在的時(shí)間是:"+CSTR(TIME();SELECT "張三">"李四","ABCD"<"abcd",(DATE()-#1992-10-8#)>1000;(二)SQL命令進(jìn)行查詢和操作1練習(xí)SQL查詢的SELECT語(yǔ)句啟動(dòng)教學(xué)管理數(shù)據(jù)庫(kù),在數(shù)

4、據(jù)庫(kù)窗口對(duì)象欄中單擊“查詢”,然后進(jìn)入SQL視圖。在“SQL視圖”中輸入以下SELECT命令,查看執(zhí)行結(jié)果,并仔細(xì)體會(huì)查詢的實(shí)現(xiàn)。 查詢“學(xué)院”、“專業(yè)”、“學(xué)生”完整數(shù)據(jù)。SELECT * FROM (學(xué)院 INNER JOIN 專業(yè) ON 學(xué)院.學(xué)院號(hào)=專業(yè).學(xué)院號(hào)) INNER JOIN 學(xué)生 ON 專業(yè).專業(yè)號(hào)=學(xué)生.專業(yè)號(hào)); 查詢“工商管理”專業(yè)所有女生信息。SELECT 專業(yè),學(xué)生.* FROM 專業(yè) INNER JOIN 學(xué)生 ON 專業(yè).專業(yè)號(hào)=學(xué)生.專業(yè)號(hào)WHERE 專業(yè).專業(yè)="工商管理" AND 學(xué)生.性別="女"; 查詢平均成績(jī)

5、在80分以上的各位學(xué)生的學(xué)號(hào)、姓名和平均分。保存為查詢對(duì)象,對(duì)象名“優(yōu)秀學(xué)生”。SELECT 學(xué)生.學(xué)號(hào),姓名,AVG(成績(jī)) AS 平均分 FROM 學(xué)生 INNER JOIN 成績(jī) ON 學(xué)生.學(xué)號(hào)=成績(jī).學(xué)號(hào) GROUP BY 學(xué)生.學(xué)號(hào),姓名 HAVING AVG(成績(jī))>=80 ;單擊工具欄保存按鈕,彈出“另存為”對(duì)話框,輸入“優(yōu)秀學(xué)生”,單擊“確定”按鈕。 查詢沒(méi)有學(xué)生數(shù)據(jù)的專業(yè)編號(hào)和專業(yè)。SELECT 專業(yè)號(hào),專業(yè) FROM 專業(yè) WHERE 專業(yè)號(hào) NOT IN (SELECT 專業(yè)號(hào) FROM 學(xué)生) ; 查詢“湖北”籍1988年以后出生的學(xué)生信息。SELECT * F

6、ROM 學(xué)生 WHERE 籍貫 LIKE "湖北*" AND 生日 >=#1988-1-1# ; 查詢選課人數(shù)最多的課程的課程號(hào)、課程名。SELECT TOP 1 課程.課程號(hào),課程名 FROM 課程 INNER JOIN 成績(jī) ON 課程.課程號(hào)=成績(jī).課程號(hào) GROUP BY 課程.課程號(hào),課程名ORDER BY COUNT(*) DESC ;2練習(xí)SQL的插入、更新、刪除操作命令 在課程表中插入一門(mén)新課,數(shù)據(jù)如命令所示。INSERT INTO 課程VALUES("06020101","會(huì)計(jì)學(xué)原理",3,"06&q

7、uot;); 將“法學(xué)院(04)”開(kāi)設(shè)課程的學(xué)分增加1分。UPDATE 課程 SET 學(xué)分=學(xué)分+1 WHERE 學(xué)院號(hào)="04" 刪除“信息學(xué)院(09)”開(kāi)設(shè)的沒(méi)有學(xué)生選修的課程。DELETE FROM 課程 WHERE 學(xué)院號(hào)="09" AND 課程號(hào) NOT IN (SELECT 課程號(hào) FROM 成績(jī))3創(chuàng)建“教師”表,包括:工號(hào)、姓名、性別、生日、職稱、基本工資、學(xué)院號(hào)。寫(xiě)出創(chuàng)建命令。(三)選擇查詢操作1進(jìn)入查詢?cè)O(shè)計(jì)視圖進(jìn)行交互式選擇查詢?cè)O(shè)置啟動(dòng)教學(xué)管理數(shù)據(jù)庫(kù)。 查詢“專業(yè)”表,顯示開(kāi)設(shè)的所有專業(yè)涉及的學(xué)科門(mén)類。 查詢各專業(yè)學(xué)生的人數(shù)。 查詢沒(méi)

8、有選課的男學(xué)生學(xué)號(hào)、姓名,即成績(jī)表中沒(méi)有記錄的學(xué)生數(shù)據(jù)。2進(jìn)行交叉表查詢將學(xué)生的“學(xué)號(hào)”和“姓名”作為行標(biāo)題,“課程名”作為列標(biāo)題,成績(jī)作為交叉數(shù)據(jù),生成交叉表。3進(jìn)行參數(shù)查詢通過(guò)參數(shù)查詢指定日期以后出生的某個(gè)民族的學(xué)生信息。(四)動(dòng)作查詢操作1生成表查詢操作練習(xí)將“查詢平均成績(jī)?cè)?0分以上的各位學(xué)生的學(xué)號(hào)、姓名和平均分”的結(jié)果生成新表,表名“優(yōu)秀學(xué)生名單”。2刪除查詢操作刪除“優(yōu)秀學(xué)生名單”表中,平均分在85分以下的記錄。3追加查詢操作將平均分在8085分之間的學(xué)生及成績(jī)數(shù)據(jù)加入“優(yōu)秀學(xué)生名單”表, 4更新查詢操作將沒(méi)有學(xué)生選修的課程的學(xué)分減少1分。寫(xiě)出以上要求的操作步驟并截取必要的圖片。四

9、、回答問(wèn)題1有哪幾種方式可進(jìn)入“SQL視圖”?如果用“記事本”編寫(xiě)了SQL語(yǔ)句,是否可以在SQL視圖中使用?如何操作?2為什么不能在數(shù)字常量前加“¥”或“$”符號(hào)表示幣值常量?“¥”或“$”有何作用?3如果在修改“法學(xué)院”學(xué)分的操作中要求根據(jù)“學(xué)院名”作為輸入條件修改數(shù)據(jù),查詢命令應(yīng)該如何寫(xiě)?4不保存查詢,與將查詢保存為查詢對(duì)象有何區(qū)別?查詢對(duì)象有什么作用?5根據(jù)以下給定的查詢要求,寫(xiě)出對(duì)應(yīng)的查詢命令。 查詢學(xué)生中的民族來(lái)源,顯示不重復(fù)的民族數(shù)據(jù)。 查詢各民族男生和女生的人數(shù)。 查詢沒(méi)有學(xué)生選修的課程信息以及開(kāi)課的學(xué)院名。 插入幾條教師記錄。 給“教授”職稱的教師的基本工資增加10%。 刪除沒(méi)

10、有學(xué)生就讀的專業(yè)數(shù)據(jù)。 刪除教師表。6深入體會(huì)交叉表查詢的作用,簡(jiǎn)述交叉表查詢的實(shí)質(zhì)意義。作為行標(biāo)題的字段最多可以設(shè)置幾個(gè)?作為列標(biāo)題和交叉值的字段最多可以設(shè)置幾個(gè)?7參數(shù)查詢的參數(shù)設(shè)置是否一定要通過(guò)菜單設(shè)置類型?通過(guò)菜單設(shè)置的參數(shù)是否一定要出現(xiàn)在查詢中?8生成表查詢實(shí)現(xiàn)的是SQL語(yǔ)言中什么語(yǔ)句的功能?9追加查詢對(duì)應(yīng)SQL的什么語(yǔ)句?該語(yǔ)句是否只具有追加查詢的功能?若有其他功能,如何實(shí)現(xiàn)交互操作?五、分析討論 (根據(jù)實(shí)驗(yàn)寫(xiě)出一些心得或分析等)六、教師評(píng)語(yǔ)1按時(shí)完成實(shí)驗(yàn);2實(shí)驗(yàn)內(nèi)容和過(guò)程記錄完整;3回答問(wèn)題完整、正確;4有實(shí)驗(yàn)的心得或討論;5實(shí)驗(yàn)報(bào)告的撰寫(xiě)認(rèn)真、格式符合要求,沒(méi)有抄襲行為。簽名:

11、 日期:2009.5成績(jī)本實(shí)驗(yàn)的操作步驟如下:(一) SQL視圖中表達(dá)式練習(xí):1進(jìn)入SQL視圖及在不同視圖間切換如上圖可知:要在設(shè)計(jì)視圖,SQL視圖,以及顯示查詢結(jié)果的數(shù)據(jù)表視圖之間進(jìn)行切換,以便查看可視化設(shè)計(jì)、SQL命令以及查詢數(shù)據(jù)時(shí),就通過(guò)這個(gè)工具欄按鈕進(jìn)行選擇切換。2不同類型數(shù)據(jù)的表達(dá)式運(yùn)算SELECT -5.122+(17 mod 3)SELECT "Hello "+",World!",LEFT("清華大學(xué)出版社",2)+RIGHT("清華大學(xué)出版社",3)SELECT "你畢業(yè)的年份是"

12、;, VAL(LEFT(你的學(xué)號(hào),4)+4SELECT "現(xiàn)在是"+STR(YEAR(DATE()+"年","現(xiàn)在的時(shí)間是:"+CSTR(TIME()SELECT "張三">"李四","ABCD"<"abcd",(DATE()-#1992-10-8#)>1000(二)SQL命令進(jìn)行查詢和操作1 練習(xí)SQL查詢的SELECT語(yǔ)句 查詢“學(xué)院”、“專業(yè)”、“學(xué)生”完整數(shù)據(jù) 查詢“工商管理”專業(yè)所有女生信息 查詢平均成績(jī)?cè)?0分以上的各位學(xué)生的

13、學(xué)號(hào)、姓名和平均分。保存為查詢對(duì)象,對(duì)象名“優(yōu)秀學(xué)生” 查詢沒(méi)有學(xué)生數(shù)據(jù)的專業(yè)編號(hào)和專業(yè) 查詢“湖北”籍1988年以后出生的學(xué)生信息 查詢選課人數(shù)最多的課程的課程號(hào)、課程名2 練習(xí)SQL的插入、更新、刪除操作命令 在課程表中插入一門(mén)新課 將“法學(xué)院(04)”開(kāi)設(shè)課程的學(xué)分增加1分 刪除“信息學(xué)院(09)”開(kāi)設(shè)的沒(méi)有學(xué)生選修的課程3 創(chuàng)建“教師”表,包括:工號(hào)、姓名、性別、生日、職稱、基本工資、學(xué)院號(hào)。創(chuàng)建命令如下:CREATE TABLE 教師(工號(hào) TEXT(6) PRIMARY KEY,姓名 TEXT(10) NOT NULL,性別 TEXT(2),生日 DATE,職稱TEXT(8),基本

14、工資 MONEY,學(xué)院號(hào) TEXT(2) REFERENCE 學(xué)院(學(xué)院號(hào)));(三)選擇查詢操作1進(jìn)入查詢?cè)O(shè)計(jì)視圖進(jìn)行交互式選擇查詢?cè)O(shè)置 查詢“專業(yè)”表,顯示開(kāi)設(shè)的所有專業(yè)涉及的學(xué)科門(mén)類步驟:將“專業(yè)”表加入設(shè)計(jì)視圖,在QBE界面中“字段”“欄選擇”“專業(yè)類別”字段顯示,因?yàn)樽侄蔚闹涤兄貜?fù),因此,在設(shè)計(jì)視圖的空白處單擊右鍵,從彈出的快捷菜單中選擇“屬性”命令,打開(kāi)屬性對(duì)話框,選擇“唯一值”“屬性值”“是” 查詢各專業(yè)學(xué)生的人數(shù)步驟:將“專業(yè)”表和“學(xué)生”表加入設(shè)計(jì)視圖,在QBE界面中“字段”欄選中“專業(yè)號(hào)”和“專業(yè)”字段顯示,然后單擊工具欄中的“總計(jì)”按鈕,在QBE中增加“總計(jì)”欄,將“專業(yè)

15、號(hào)”和“專業(yè)”字段設(shè)置為分組,然后選擇學(xué)生”表的”學(xué)號(hào)”字段,設(shè)置其為”計(jì)數(shù)”,最后再學(xué)號(hào)前面加上”人數(shù)”,作為查詢的列名,設(shè)計(jì)完成,運(yùn)行即可。 查詢沒(méi)有選課的男學(xué)生學(xué)號(hào)、姓名,即成績(jī)表中沒(méi)有記錄的學(xué)生數(shù)據(jù)步驟:將“學(xué)生”表加入設(shè)計(jì)視圖,選擇“學(xué)號(hào)”“姓名”字段顯示,在第三列處輸入“注:尚未選課”,選中“顯示”復(fù)選框,然后再第四列中選擇“學(xué)號(hào)”但不顯示,只是作為比較的對(duì)象,在“條件”欄中輸入一個(gè)子查詢“Not In (SELECT 學(xué)號(hào) FROM 成績(jī))”,設(shè)置完畢后運(yùn)行即可。2進(jìn)行交叉表查詢將學(xué)生的“學(xué)號(hào)”和“姓名”作為行標(biāo)題,“課程名”作為列標(biāo)題,成績(jī)作為交叉數(shù)據(jù),生成交叉表步驟:?jiǎn)?dòng)選擇

16、查詢?cè)O(shè)計(jì)窗口,講學(xué)生成績(jī)和課程表加入設(shè)計(jì)窗口,選擇查詢,交叉表查詢命令,在QBE窗格中選擇學(xué)生表的學(xué)號(hào),姓名作為行標(biāo)題,課程名作為列標(biāo)題,成績(jī)總計(jì)后作為值,這樣交叉表設(shè)計(jì)完畢,運(yùn)行即可看到交叉表查詢的效果。3進(jìn)行參數(shù)查詢通過(guò)參數(shù)查詢指定日期以后出生的某個(gè)民族的學(xué)生信息步驟:?jiǎn)?dòng)選擇查詢?cè)O(shè)計(jì)窗口,將“學(xué)生”表加入設(shè)計(jì)窗口,在QBE窗口中選擇“*”表示輸出學(xué)生表所有字段,然后選中“生日”字段,去掉“顯示”行的復(fù)選框,在條件行輸入>SR;按同樣方式設(shè)置“民族”字段。(四)動(dòng)作查詢操作1 生成表查詢操作練習(xí)將“查詢平均成績(jī)?cè)?0分以上的各位學(xué)生的學(xué)號(hào)、姓名和平均分”的結(jié)果生成新表,表名“優(yōu)秀學(xué)生

17、名單”步驟:輸入SQL命令后,選擇“查詢”“生成表”查詢,彈出“生成表”對(duì)話框,輸入表的名稱,單擊“確定”即可,運(yùn)行查詢,結(jié)果被保存到當(dāng)前數(shù)據(jù)庫(kù)中。2刪除查詢操作刪除“優(yōu)秀學(xué)生名單”表中,平均分在85分以下的記錄步驟:進(jìn)入設(shè)計(jì)視圖,加入優(yōu)秀學(xué)生名單表,選擇查詢刪除查詢命令,這是窗口改為刪除查詢,QBE欄目發(fā)生變化,出現(xiàn)刪除欄,調(diào)整或撤銷其他欄。在字段欄中選擇平均分,這是刪除欄值默認(rèn)為Where。在條件欄輸入<85.單擊工具欄中的運(yùn)行按鈕運(yùn)行,將刪除數(shù)據(jù)。如果選擇查詢刪除查詢命令后,不進(jìn)行條件設(shè)置而直接運(yùn)行,即為無(wú)條件刪除,將刪除表中所有的記錄。3追加查詢操作將平均分在8085分之間的學(xué)生

18、及成績(jī)數(shù)據(jù)加入“優(yōu)秀學(xué)生名單”表步驟:?jiǎn)?dòng)設(shè)計(jì)視圖,添加“學(xué)生”和“成績(jī)”表;在“字段”欄設(shè)置“學(xué)號(hào)”,“姓名”和“成績(jī)”字段,單擊工具欄中的“總計(jì)”按鈕增加“總計(jì)”欄,設(shè)置“學(xué)號(hào)”和“姓名”為“分組”字段,“成績(jī)”字段為“平均值”字段,在“條件”欄中輸入>=80 and <85;選擇“查詢”“追加查詢”命令,打開(kāi)“追加”對(duì)話框,選擇“優(yōu)秀學(xué)生名單”表,單擊“確定”按鈕;這時(shí)設(shè)計(jì)視圖的QBE窗格中增加“追加到”欄,選擇“學(xué)號(hào)”,“姓名”和“平均分”字段,設(shè)計(jì)完成,運(yùn)行查詢,數(shù)據(jù)被追加到”優(yōu)秀學(xué)生名單”表中。4更新查詢操作將沒(méi)有學(xué)生選修的課程的學(xué)分減少1分步驟:?jiǎn)?dòng)設(shè)計(jì)視圖,添加“課

19、程”表,選擇“查詢”“更新查詢”命令,設(shè)計(jì)視圖變?yōu)椤案虏樵儭保琎BE窗格中增加更新到欄;選中“學(xué)分”字段,然后再“更新到”欄中輸入“課程.學(xué)分-1”;選中“課程號(hào)”字段,在“條件”欄中輸入“Not In (SELECT 課程號(hào) FROM 成績(jī))”,設(shè)計(jì)完成,單擊“運(yùn)行”按鈕查詢即可。四、回答問(wèn)題1. 有這兩種方式可以進(jìn)入SQL視圖:通過(guò)“查詢?cè)O(shè)計(jì)”工具欄上的“查詢”可以進(jìn)入“SQL視圖”;在查詢?cè)O(shè)計(jì)工具欄上的第一個(gè)按鈕上單擊,降下拉出一個(gè)選擇列表,在列表中單擊“SQL視圖”即可。如果用“記事本”編寫(xiě)了SQL語(yǔ)句,可以在SQL視圖中使用;操作方法:只要編寫(xiě)的SQL語(yǔ)句都是在英文狀態(tài)下輸入的,只

20、需將其復(fù)制粘貼到SQL視圖中運(yùn)行即可。2. 因?yàn)閿?shù)據(jù)庫(kù)表中有固定的貨幣型設(shè)計(jì),限制了是貨幣型的時(shí)候,只需輸入相應(yīng)的數(shù)據(jù)即可;“¥”或“$”是當(dāng)限制位數(shù)字型的時(shí)候,就能夠表示輸入的數(shù)據(jù)是貨幣型。3. 查詢命令:UPDATE 課程 SET 學(xué)分=學(xué)分+1 WHERE 學(xué)院名="法學(xué)院"4. 不保存查詢,下次打開(kāi)查詢的時(shí)候就沒(méi)有查詢的記錄,保存的話下次打開(kāi)查詢的時(shí)候就看得到查詢,方便查看操作過(guò)的內(nèi)容;查詢對(duì)象的作用:下次操作的時(shí)候可以直接運(yùn)行查詢進(jìn)行其他的操作。5. SELECT 學(xué)生.民族FROM 學(xué)生WHERE (學(xué)生.民族)="不重復(fù)的民族");SELECT 學(xué)生.民族, Count(學(xué)生.性別) AS 人數(shù)FROM 學(xué)生GROUP BY 學(xué)生.民族HAVING (Count(學(xué)生.性別)="男" and (

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論