《數(shù)據(jù)庫(kù)及其應(yīng)用》實(shí)驗(yàn)報(bào)告SQL查詢、選擇查詢和動(dòng)作查詢_第1頁(yè)
《數(shù)據(jù)庫(kù)及其應(yīng)用》實(shí)驗(yàn)報(bào)告SQL查詢、選擇查詢和動(dòng)作查詢_第2頁(yè)
《數(shù)據(jù)庫(kù)及其應(yīng)用》實(shí)驗(yàn)報(bào)告SQL查詢、選擇查詢和動(dòng)作查詢_第3頁(yè)
《數(shù)據(jù)庫(kù)及其應(yīng)用》實(shí)驗(yàn)報(bào)告SQL查詢、選擇查詢和動(dòng)作查詢_第4頁(yè)
《數(shù)據(jù)庫(kù)及其應(yīng)用》實(shí)驗(yàn)報(bào)告SQL查詢、選擇查詢和動(dòng)作查詢_第5頁(yè)
已閱讀5頁(yè),還剩14頁(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ù)1002實(shí)驗(yàn)地點(diǎn)指導(dǎo)教師時(shí)間2011年5月一、實(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)作查詢與

2、sql命令進(jìn)行對(duì)比,理解并掌握動(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(清華大學(xué)出版社,3);select 你畢業(yè)的年份是, va

3、l(left(你的學(xué)號(hào),4)+4;select 現(xiàn)在是+str(year(date()+年,現(xiàn)在的時(shí)間是:+cstr(time();select 張三李四,abcd1000;(二)sql命令進(jìn)行查詢和操作1練習(xí)sql查詢的select語(yǔ)句啟動(dòng)教學(xué)管理數(shù)據(jù)庫(kù),在數(shù)據(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));

4、 查詢“工商管理”專業(yè)所有女生信息。select 專業(yè),學(xué)生.* from 專業(yè) inner join 學(xué)生 on 專業(yè).專業(yè)號(hào)=學(xué)生.專業(yè)號(hào)where 專業(yè).專業(yè)=工商管理 and 學(xué)生.性別=女; 查詢平均成績(jī)?cè)?0分以上的各位學(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ù)

5、的專業(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 * from 學(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的插入、更新、刪除操作命令 在課程表中

6、插入一門(mén)新課,數(shù)據(jù)如命令所示。insert into 課程values(06020101,會(huì)計(jì)學(xué)原理,3,06); 將“法學(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è)的所

7、有專業(yè)涉及的學(xué)科門(mén)類。 查詢各專業(yè)學(xué)生的人數(shù)。 查詢沒(méi)有選課的男學(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é)

8、分減少1分。寫(xiě)出以上要求的操作步驟并截取必要的圖片。四、回答問(wèn)題1有哪幾種方式可進(jìn)入“sql視圖”?如果用“記事本”編寫(xiě)了sql語(yǔ)句,是否可以在sql視圖中使用?如何操作?答:?jiǎn)螕舨樵児ぞ邫诘摹耙晥D”工具的下拉按鈕,選擇“sql視圖”選項(xiàng)或單擊菜單欄中“視圖”,選擇“sql視圖”??梢?。2為什么不能在數(shù)字常量前加“¥”或“$”符號(hào)表示幣值常量?“¥”或“$”有何作用?答:“”表示可以在“格式”屬性中的任何位置使用這些字符并將這些字符原文照印。3如果在修改“法學(xué)院”學(xué)分的操作中要求根據(jù)“學(xué)院名”作為輸入條件修改數(shù)據(jù),查詢命令應(yīng)該如何寫(xiě)?答:update 課程 set 學(xué)分=學(xué)分+1where 學(xué)

9、院名=法學(xué)院;4不保存查詢,與將查詢保存為查詢對(duì)象有何區(qū)別?查詢對(duì)象有什么作用?答:將查詢對(duì)象保存為查詢對(duì)象后,可將查詢功能反復(fù)執(zhí)行,并作進(jìn)一步處理。作用:當(dāng)需查看查詢結(jié)果時(shí),進(jìn)入查詢對(duì)象界面,選中相應(yīng)的查詢對(duì)象單擊“打開(kāi)”,即可運(yùn)行查詢,查看結(jié)果;由于查詢的結(jié)果與表的格式相同,所以查詢對(duì)象還可以進(jìn)一步成為其他操作的數(shù)據(jù)源。5根據(jù)以下給定的查詢要求,寫(xiě)出對(duì)應(yīng)的查詢命令。 查詢學(xué)生中的民族來(lái)源,顯示不重復(fù)的民族數(shù)據(jù)。答:select distinct 民族 from 學(xué)生; 查詢各民族男生和女生的人數(shù)。答:select distinct 民族,人數(shù) from 學(xué)生; 查詢沒(méi)有學(xué)生選修的課程信息以

10、及開(kāi)課的學(xué)院名。答:select 課程號(hào),學(xué)院名from 課程where 課程號(hào) not in (select 課程號(hào)from 課程); 插入幾條教師記錄。答:insert into 教師 values(“張?zhí)m”, “趙也聲”); 給“教授”職稱的教師的基本工資增加10%。答:update 教師 set 工資=工資*(1+10%)where 職稱=教授; 刪除沒(méi)有學(xué)生就讀的專業(yè)數(shù)據(jù)。答:delect from 專業(yè)where 專業(yè)號(hào) not in ( select 專業(yè)號(hào) from 學(xué)生); 刪除教師表。答:delect table 教師text(6) primary key,(工號(hào) text

11、(6) primary key,姓名 text(10) not null,性別 text(2),生日 date,職稱 text(8),基本工資 money,學(xué)院號(hào) text(2) references 學(xué)院(學(xué)院號(hào)));6深入體會(huì)交叉表查詢的作用,簡(jiǎn)述交叉表查詢的實(shí)質(zhì)意義。作為行標(biāo)題的字段最多可以設(shè)置幾個(gè)?作為列標(biāo)題和交叉值的字段最多可以設(shè)置幾個(gè)?答:交叉表查詢都是一種特殊的匯總查詢。交叉表事實(shí)上反映的是對(duì)兩種實(shí)體極其練習(xí)的關(guān)系表示,轉(zhuǎn)換為另一種二維表結(jié)構(gòu)來(lái)顯示。行標(biāo)題的字段可是多個(gè),列標(biāo)題只能是一個(gè)。7參數(shù)查詢的參數(shù)設(shè)置是否一定要通過(guò)菜單設(shè)置類型?通過(guò)菜單設(shè)置的參數(shù)是否一定要出現(xiàn)在查詢中?答

12、:是。不一定。8生成表查詢實(shí)現(xiàn)的是sql語(yǔ)言中什么語(yǔ)句的功能?答:實(shí)現(xiàn)select語(yǔ)句中into子句的功能。9追加查詢對(duì)應(yīng)sql的什么語(yǔ)句?該語(yǔ)句是否只具有追加查詢的功能?若有其他功能,如何實(shí)現(xiàn)交互操作?答:insert語(yǔ)句。不是。五、分析討論 通過(guò)這次實(shí)驗(yàn),我基本上掌握了sql查詢、選擇查詢和動(dòng)作查詢。實(shí)驗(yàn)的難度有點(diǎn)大,內(nèi)容非常多,花了我不少時(shí)間,但也大有收獲。對(duì)access也有了進(jìn)一步的了解。也增加了我對(duì)數(shù)據(jù)庫(kù)的興趣。六、教師評(píng)語(yǔ)簽名: 日期:成績(jī)本實(shí)驗(yàn)的操作步驟如下。(一) sql視圖中表達(dá)式練習(xí)1進(jìn)入sql視圖及在不同視圖間切換在數(shù)據(jù)庫(kù)窗口中選擇“查詢”對(duì)象,雙擊“在設(shè)計(jì)視圖中創(chuàng)建查詢

13、”。關(guān)閉“顯示表”對(duì)話框,然后單擊查詢工具欄的“視圖”工具的下拉按鈕,選擇“sql視圖”選項(xiàng)。2不同類型數(shù)據(jù)的表達(dá)式運(yùn)算select -5.122+(17 mod 3);select hello +,world!,left(清華大學(xué)出版社,2)+right(清華大學(xué)出版社,3);select 你畢業(yè)的年份是, val(left(你的學(xué)號(hào),4)+4;select 現(xiàn)在是+str(year(date()+年,現(xiàn)在的時(shí)間是:+cstr(time();select 張三李四,abcd1000;(二)sql命令進(jìn)行查詢和操作1練習(xí)sql查詢的select語(yǔ)句 查詢“學(xué)院”、“專業(yè)”、“學(xué)生”完整數(shù)據(jù)。s

14、elect * 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ī)?cè)?0分以上的各位學(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) grou

15、p 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 * from 學(xué)生 where 籍貫 like 湖北* and 生日 =#1988-1-1# ; 查詢選課人數(shù)最多的課程的課程號(hào)、課程名。select top 1 課程.課程號(hào),課程名from 課程 inner join 成績(jī) on 課程

16、.課程號(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); 將“法學(xué)院(04)”開(kāi)設(shè)課程的學(xué)分增加1分。update 課程set 學(xué)分=學(xué)分+1where 學(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)、姓名、性別

17、、生日、職稱、基本工資、學(xué)院號(hào)。寫(xiě)出創(chuàng)建命令。create table 教師(工號(hào) text(6) primary key,姓名 text(10) not null,性別 text(2),生日 date,職稱 text(8),基本工資 money,學(xué)院號(hào) text(2) references 學(xué)院(學(xué)院號(hào)) );(三)選擇查詢操作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è)”表加入設(shè)計(jì)視圖。在qbe界面中“字段”欄選擇“專業(yè)類別”字段顯示。在設(shè)計(jì)視圖的空白處單擊右鍵,從彈出的快捷菜單中選擇“屬性”命令,打開(kāi)“屬性”對(duì)話

18、框,選擇“唯一值”屬性值“是”。 查詢各專業(yè)學(xué)生的人數(shù)。將專業(yè)表和學(xué)生表加入設(shè)計(jì)視圖。在qbe界面中“字段”欄選中“專業(yè)號(hào)”和“專業(yè)”字段顯示,然后單擊工具欄中的“總計(jì)”按鈕,在qbe中增加“總計(jì)”欄。將“專業(yè)號(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)”、“姓名”字段顯示,在第3列處輸入“注:尚未選課”,選中“顯示”復(fù)選框。然后在第4列中選擇“學(xué)號(hào)”但不顯示。在“條件”欄中輸入一個(gè)子查

19、詢“not in (select 學(xué)號(hào) from 成績(jī))”。2進(jìn)行交叉表查詢將學(xué)生的“學(xué)號(hào)”和“姓名”作為行標(biāo)題,“課程名”作為列標(biāo)題,成績(jī)作為交叉數(shù)據(jù),生成交叉表。啟動(dòng)選擇查詢?cè)O(shè)計(jì)窗口,將“學(xué)生”、“成績(jī)”和“課程”表加入設(shè)計(jì)窗口。選擇“查詢”“交叉表查詢”命令。在qbe窗口中選擇“學(xué)生”表的“學(xué)號(hào)”、“姓名”作為行標(biāo)題,“課程名”作為列標(biāo)題,“成績(jī)”總計(jì)后作為值。運(yùn)行查詢。3進(jìn)行參數(shù)查詢通過(guò)參數(shù)查詢指定日期以后出生的某個(gè)民族的學(xué)生信息。啟動(dòng)選擇查詢?cè)O(shè)計(jì)窗口,將“學(xué)生”表加入設(shè)計(jì)窗口,在qbe窗口中選擇“*”表示輸出學(xué)生表所有字段。然后選中“生日”字段,去掉“顯示”行的復(fù)選框,在條件行輸入sr;按同樣方式設(shè)置“民族”字

溫馨提示

  • 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)論