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

下載本文檔

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

文檔簡(jiǎn)介

1、 實(shí) 驗(yàn) 報(bào) 告課程名稱(chēng):數(shù)據(jù)庫(kù)應(yīng)用與設(shè)計(jì) 班級(jí):姓名: 學(xué)號(hào): 一、實(shí)驗(yàn)?zāi)康模?)進(jìn)一步熟悉 visualfoxpro6.0 的窗口界面及各菜單項(xiàng)的基本用途。(2)初步掌握 visualfoxpro 的基本數(shù)據(jù)類(lèi)型。掌握變量的賦值、輸出、清除、保存以及恢復(fù);區(qū)分常量、變量的不同;掌握運(yùn)算符使用及表達(dá)式的書(shū)寫(xiě)。(3)初步掌握 visualfoxpro 的常用函數(shù)的使用及表達(dá)式的書(shū)寫(xiě)規(guī)則。二、實(shí)驗(yàn)要求(1)實(shí)驗(yàn)前復(fù)習(xí) visualfoxpro 的用戶(hù)界面、操作方式、命令的結(jié)構(gòu)。(2)掌握 visualfoxpro 的數(shù)據(jù)類(lèi)型、運(yùn)算規(guī)則和函數(shù)功能(3)掌握交互式命令執(zhí)行方法。三、實(shí)驗(yàn)內(nèi)容1、簡(jiǎn)單內(nèi)

2、存變量的賦值與輸出(1) 用賦值號(hào)“=” ,對(duì)變量 a,b,c,d,e 分別賦值為數(shù)值常量 123,字符常量“abc” ,日期常量20060910,邏輯常量.t.,字符常量”cdf” (其中“”表示空格) ;(2)在下一行輸出 a,b,c,d 的值;(3)用命令store 對(duì)變量 x1,x2,xyz,xz 均賦值為 10;(4)在當(dāng)前行輸出 x1,x2,xyz,xz的值;(5)分別用listmemory/displaymemory顯示內(nèi)存中的變量,觀察這兩個(gè)命令的區(qū)別。 解:a=123b=abc c=2006-09-10d=.t.e= cdf?a,b,c,dstore 10 to x1,x2,

3、xyz,xz?x1,x2,xyz,xz 當(dāng)變量很多時(shí),list命令只顯示最后一屏內(nèi)容,而display命令可以分別顯示每一屏內(nèi)容。2 數(shù)組的賦值與輸出(1)定義兩個(gè)數(shù)組變量 x(3),y(2,3)(2)用 displaymemory 顯示數(shù)組 x,y,觀察其元素個(gè)數(shù)及值(3)在命令窗口依次執(zhí)行如下三條命令: x=3y(1,1)=5y(2,2)=.t.(4)輸出 x(1),x(2),x(3),y(1,1),y(1,2),y(2,2),y(1) ,y(5)的值,觀察其結(jié)果,注意數(shù)組變量賦值和數(shù)組元素賦值的不同,體會(huì)一維數(shù)組和二維數(shù)組的關(guān)系。解: dimension x(3),y(2,3)disp

4、memo like xdisp memo like yx=3 y(1,1)=5 y(2,2)=.t.? x(1),x(2),x(3),y(1,1),y(1,2),y(2,2),y(1),y(5)3 變量的清除、保存以及恢復(fù)(1)將以上定義的變量保存在文件 bl.mem 中(2)將 x 開(kāi)頭的內(nèi)存變量清除,并用 displaymemory 顯示 解:save to bl.mem all release all like x*disp memo (2) 將文件bl.mem 中的變量恢復(fù)到內(nèi)存中,并用 displaymemory 顯示,觀察與有何不同? restore from bl.memdisp

5、 memo 4 利用前面定義的變量 a、b、c、d、e,完成以下操作,注意變量與常量的區(qū)別:(1) 輸出變量 b 和字符串常量”b” ,觀察兩者有何不同;(2)輸出日期型常量20060910和變量 c;(3)給變量t 賦值為 2,執(zhí)行命令 ?.t.,t 注意觀察結(jié)果。解:?b?b?2006-09-10?ct=2?.t.,t5 利用前面定義的變量 a、b、c、d、e,完成以下操作,注意運(yùn)算符的使用:(1) 輸出當(dāng)天日期與日期型變量 c相差的天數(shù);?date()-c(2) 輸出當(dāng)天日期的前 10 天和后 10天的日期;?date()-10?date()+10(3) 輸出變量 a加上 20后的結(jié)果;

6、?a+20(4)執(zhí)行命令?b+e+z,be+z,觀察兩者有何不同;(5)輸出表達(dá)式 c+10date() 的值; ? c+10d 的值; ?b=ab .t. ?b=abd .f.(7)執(zhí)行命令 setexacton 后,輸出(6)中表達(dá)式的值,與上題輸出的值進(jìn)行比較。 ?b=ab .f. ?b=abd .f.6 轉(zhuǎn)換成 vfp的表達(dá)式,并計(jì)算表達(dá)式的值設(shè)直角三角形的兩條直角邊長(zhǎng)分別為 a=12,b=13,求斜邊 c 的長(zhǎng)度,并保留一位小數(shù)解: a=12b=13c=sqrt(a*a+b*b)?round(c,1) 7 利用函數(shù)完成以下操作,注意函數(shù)的使用:假設(shè) n=345.789(1) 求 n

7、的絕對(duì)值和絕對(duì)值的平方根; ?abs(n) ?sqrt(abs(n)(2) 輸出 n的整數(shù)部分,不允許四舍五入; ?int (n)(3) 對(duì) n 保留小數(shù) 2 位; ?round(n,2)(4) 將 n 的值轉(zhuǎn)換字符型,總位數(shù)為 7 位,小數(shù)位為 1 位。 ?str(n,7,1)假設(shè) s1=安徽計(jì)算機(jī)基礎(chǔ)學(xué)會(huì)(5) 從字符串 s1 中分別取出字符串安徽、計(jì)算機(jī)、學(xué)會(huì);?substr(s1,1,4)?substr(s1,5,6)?substr(s1,15,4)(6) 分別測(cè)試字符串計(jì)算機(jī)、計(jì)算機(jī)學(xué)會(huì)在字符串 s1 中的起始位置。?at(計(jì)算機(jī),s1)?at(計(jì)算機(jī)學(xué)會(huì),s1)(7) 測(cè)試字符串學(xué)

8、會(huì)在字符串安徽計(jì)算機(jī)基礎(chǔ)學(xué)會(huì)是華東地區(qū)計(jì)算機(jī)基礎(chǔ)研究學(xué)會(huì)第二次出現(xiàn)的位置;?at(學(xué)會(huì),安徽計(jì)算機(jī)基礎(chǔ)學(xué)會(huì)是華東地區(qū)計(jì)算機(jī)基礎(chǔ)研究學(xué)會(huì),2)(8) 將字符串 s1 中的安徽改成中部地區(qū);?stuff(s1,1,4, 中部地區(qū))(9) 將字符串 s1 中的基礎(chǔ)去掉; ?stuff(s1,11,4,)(10) 在字符串 s1 的前后各加 5 個(gè)星號(hào); ?*&s1.* 假設(shè) s2= abcd34fgs(其中“”表示空格)(11)分別刪除字符串 s2 的首部空格、尾部空格、首尾的所有空格; ?right(s2,11) ?left(s2,12) ?alltrim(s2)(12)將字符串 s2 中所有字母

9、分別轉(zhuǎn)換為大寫(xiě)字母、小寫(xiě)字母; ?upper(s2) ?lower(s2) (13)輸出當(dāng)前的系統(tǒng)日期、系統(tǒng)時(shí)間,并分別測(cè)試其類(lèi)型; ?date() ?time() ?type(date() ?type(time()(14)取出系統(tǒng)日期時(shí)間中的年、月、日、時(shí)、分、秒; ?datetime()?year(datetime() ?month(datetime() ?day(datetime() ?hour(datetime() ?minute(datetime() ?second(datetime()假設(shè) c=07/21/2005(15)將字符串 c轉(zhuǎn)換為日期型并求出它 15 天后的日期; ?ct

10、od(c) ?ctod(c)+15(16)分別將字符串123.456、34abc56、ab123轉(zhuǎn)換成數(shù)值型,并觀察它們的不同; ?val(123.456) ?val(34abc56) ?val(ab123) val()函數(shù)遇到非數(shù)字字符,停止轉(zhuǎn)換;對(duì)于含小數(shù)的數(shù)字字符,會(huì)自動(dòng)四舍五入保留兩位小數(shù)。(17)執(zhí)行命令 ?mod(35,6),mod(35,6),mod(35,6),mod(35,6) 注意觀察當(dāng)兩個(gè)參數(shù)符號(hào)改變后其值有何不同; 兩數(shù)值表達(dá)式同號(hào)時(shí),余數(shù)符號(hào)為表達(dá)式2的符號(hào)。兩表達(dá)式異號(hào)時(shí),函數(shù)值為表達(dá)式1除以表達(dá)式2的余數(shù)(符號(hào)為表達(dá)式1的)加上表達(dá)式2的值(18)分別測(cè)試字符串a(chǎn)

11、,abc的 asc碼。 ?asc(a) ?asc(abc)(19)輸出比z的 ascii 小 20 的字符。 ?chr(asc(z)-20)實(shí) 驗(yàn) 報(bào) 告 (二)課程名稱(chēng):數(shù)據(jù)庫(kù)應(yīng)用與設(shè)計(jì) 3. 實(shí)驗(yàn)內(nèi)容(1)根據(jù)以下給定的數(shù)據(jù)表信息分別對(duì)student, course, score, teacher, teching 表進(jìn)行數(shù)據(jù)插入和修改,以完成給定的數(shù)據(jù)錄入,同時(shí)要求輸入班級(jí)同學(xué)名錄模擬客觀真實(shí)情況,給student、score表添加30條以上記錄,以便以后查詢(xún)應(yīng)用方便。student表:snosnamesbirthdaysclass011110101章海潮1982.02.07信管系010

12、1011111103王天力1982.03.04電商系0101011111204董丞悟1982.06.06電商系0102011112110馬麗鵑1982.04.03工商系0101011113104楊乾坤1982.03.23會(huì)計(jì)系0101011113221劉抗日1983.01.16會(huì)計(jì)系0102011114111丘海棠1983.02.08旅游系0101011115208齊振國(guó)1982.07.22旅游系0102001011101王曉悅1982.01.12材料系0001001011212程伊蓮1982.03.21材料系0002course表:cnocnamecpnocreditctimec001數(shù)據(jù)庫(kù)

13、原理c005464c002高等數(shù)學(xué)472c003管理信息系統(tǒng)c001454c004操作系統(tǒng)c006332c005數(shù)據(jù)結(jié)構(gòu)c007432c006計(jì)算機(jī)文化基礎(chǔ)232c007c語(yǔ)言程序設(shè)計(jì)c006332score表:snocnoscore011110101c00190011111103c00185011111204c00173011112110c00198011113104c00196011113221c00197011114111c00183011115208c00185011110101c00792011111103c00797teacher表:tnotnametsexdepartmentt0

14、01江承基男信息管理系t002梁其征男信息管理系t003徐茉莉女信息管理系t004吳雅云女信息管理系t005楊運(yùn)鐸男電子商務(wù)系t006張昌盛男電子商務(wù)系t007程力衡男電子商務(wù)系teaching表tnocnotdateclassroomsclasst001c0051988-01-09西二405信管系0101t002c0071990-02-01西二406電商系0101t003c0011985-09-10西二504電商系0102t004c0061984-07-15主401工商系0101t005c0041989-11-12主402會(huì)計(jì)系0101t006c0021991-05-21西二506會(huì)計(jì)系01

15、02(3)求每門(mén)課的平均成績(jī),并把結(jié)果存入average表;(4)將學(xué)生“馬麗鵑”的出生日期改為“1982.8.20”;(5)將所有學(xué)生的zipcode屬性列值填補(bǔ)上;(6)將average表中的所有課程的平均成績(jī)置零;(7)刪除average表中的課程號(hào)為c007的平均成績(jī)記錄;(8)刪除所有average表中平均成績(jī)記錄;(9)建立一個(gè)臨時(shí)學(xué)生信息表(tstudent),刪除該表中的學(xué)號(hào)前六位為001011的所有學(xué)生記錄。 select *; from student; into cursor tstudent; where substr(sno,1,6)!=001011(10)查詢(xún)?nèi)w學(xué)

16、生的學(xué)號(hào)與姓名; select sno,sname; from student(11)查詢(xún)?nèi)w學(xué)生的學(xué)號(hào)、姓名、所屬班級(jí); select sno,sname,sclass from student (12)查詢(xún)?nèi)w學(xué)生的詳細(xì)記錄; select * from student(13)查詢(xún)?nèi)w學(xué)生的姓名及其年齡; select sname,year(date()-year(sbirthday) as age; from student(14)查詢(xún)?nèi)w學(xué)生的姓名、出生年份; select sname,sbirthday from student(15)查詢(xún)所有修過(guò)課的學(xué)生的學(xué)號(hào); select st

17、udent.sno; from score, student; where score.sno=student.sno(16)查詢(xún)“信管系0101”班全體學(xué)生名單; select sname; from student; where sclass= 信管系0101 (17)查詢(xún)查詢(xún)所有年齡在27歲以下的學(xué)生姓名及其年齡; select sname,year(date()-year(sbirthday) as age; from student; where year(date()-year(sbirthday)=27(18)查詢(xún)考試成績(jī)有不及格的學(xué)生的學(xué)號(hào); select sno; from

18、score; where score15 and year(date()-year(sbirthday) 28 注:也可以用between and 查詢(xún)(20)查詢(xún)年齡不在15至28歲之間的學(xué)生姓名、班級(jí)和年齡; select sname,sclass, year(date()-year(sbirthday) as age; from student; where year(date()-year(sbirthday)=28 (21)查詢(xún)“信管系0101”和“電商系0102”班的學(xué)生的姓名和班級(jí)信息; select sname,sclass; from student; where sclas

19、s= 信管系0101or sclass= 電商系0102 (22)查詢(xún)既不是“信管系0101”也不是“電商系0102”班的學(xué)生的姓名和班級(jí)信息; select sname,sclass; from student; where sclass!= 信管系0101and sclass!= 電商系0102(23)查詢(xún)學(xué)號(hào)為“011113104”的學(xué)生的詳細(xì)情況; select *; from student; where sno=011113104 (24)查詢(xún)學(xué)號(hào)以“0111”打頭的學(xué)生信息; select *; from student; where substr(sno,1,4)=0111 (

20、25)查詢(xún)所有姓“張”學(xué)生的學(xué)號(hào)、姓名、性別、年齡; select sno,sname,year(date()-year(sbirthday) as age; from student; where sname like 張%(26)查詢(xún)名字中第二個(gè)字有“?!弊值膶W(xué)生的學(xué)號(hào)、姓名、性別、年齡; select sno,sname, year(date()-year(sbirthday) as age; from student; where substr(sname,3,2)=海(27)查詢(xún)所有不姓“劉”學(xué)生的姓名; select sname; from student; where subst

21、r(sname,1,2)!=劉 (28)查詢(xún)課程號(hào)以“c”開(kāi)頭的最后兩個(gè)字母為“05”的課程號(hào)和課程名; select cno,cname; from course; where cno like c%and substr(cno,3,2)=05(29)某些學(xué)生選修某門(mén)課程后沒(méi)有參加考試,所以有選修課記錄,但沒(méi)有考試成績(jī),試查找缺少考試成績(jī)的學(xué)生和相應(yīng)的課程號(hào); select sno,cno; from score; where score=0(30)查找全部有成績(jī)記錄的學(xué)生學(xué)號(hào)、課程號(hào); select sno,cno; from score; where score!=0(31)查找“電商系

22、0101”班年齡在27歲以下的學(xué)生學(xué)號(hào)、姓名; select sno,sname; from student; where sclass= 電商系0101and year(date()-year(sbirthday)=2(40)自然連接student和score表; select *; from student full join score; on student.sno=score.sno(41)使用自身連接查詢(xún)每一門(mén)課程的間接先行課(即先行課的先行課) select x.cno,y.cpno; from course as x,course as y; where x.cpno=y.cn

23、o group by x.cno (42)使用復(fù)合條件連接查詢(xún)選修“c001”號(hào)課程且成績(jī)?cè)?0分以上的所有同學(xué); select student.sno,student.sname,score.score; from student,score; where student.sno=score.sno ;and score.cno=c001;and score.score=90 (43)使用復(fù)合條件連接查詢(xún)每個(gè)學(xué)生選修的課程名及其成績(jī); select course.cname,score.score; from course,score; where course.cno=score.cno(

24、44)查詢(xún)選修了全部課程的學(xué)生; select student.sno,student.sname; from student; where sno in; (select score.sno; from score; group by score.sno; having count(*)=7) (45)查詢(xún)至少選修全部學(xué)分?jǐn)?shù)為4個(gè)學(xué)分的課程的學(xué)生的學(xué)號(hào)、姓名; select student.sno,student.sname; from student,score,course; where student.sno=score.sno;and score.cno=course.cno;gro

25、up by score.sno;having sum(course.credit)=4 (46)查詢(xún)所有選修了c001號(hào)課程的學(xué)生學(xué)號(hào)、姓名; select student.sno,student.sname; from student; where sno in; (select score.sno; from score; where score.cno=c001)(47)查詢(xún)選修了課程c001或c007的學(xué)生學(xué)號(hào)、姓名; select student.sno,student.sname; from student; where sno in; (select score.sno; fro

26、m score; where score.cno=c001or score.cno=c007)(48)查詢(xún)“會(huì)計(jì)系0102”班的學(xué)生及年齡不大于27歲(現(xiàn)有年齡)的學(xué)生; select *; from student; where sclass= 會(huì)計(jì)系0102 and year(date()-year(sbirthday)all; (select sbirthday; from student; where sclass=信管系0101)(52)查詢(xún)與“齊振國(guó)”在同一個(gè)班學(xué)習(xí)的學(xué)生學(xué)號(hào)、姓名、性別、年齡; select sno,sname,year(date()-year(sbirthday)as age; from student; where sclass in; (select sclass; from student; where sname=齊振

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論