實驗22數(shù)據(jù)表記錄的定位、刪除與索引_第1頁
實驗22數(shù)據(jù)表記錄的定位、刪除與索引_第2頁
實驗22數(shù)據(jù)表記錄的定位、刪除與索引_第3頁
實驗22數(shù)據(jù)表記錄的定位、刪除與索引_第4頁
實驗22數(shù)據(jù)表記錄的定位、刪除與索引_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗2-2 數(shù)據(jù)表記錄的定位、刪除與索引一、實驗?zāi)康恼莆沼脭?shù)據(jù)工作期和命令打開、關(guān)閉表的操作;理解記錄指針的概念,掌握記錄指針的絕對定位、相對定位命令;熟悉函數(shù)EOF(),BOF(),RECNO()的使用;掌握表記錄的刪除操作,理解邏輯刪除和物理刪除的概念;掌握單項索引文件、結(jié)構(gòu)復(fù)合索引文件和非結(jié)構(gòu)復(fù)合索引文件的概念及索引文件的建立、打開與使用;理解表使用時的物理順序和邏輯順序。二、實驗準(zhǔn)備預(yù)習(xí)表記錄指針的定位方法;理解表記錄的各種刪除概念與操作;預(yù)習(xí)排序和索引的概念及相關(guān)操作,主要包括:什么是排序;什么是單項索引文件,它是如何建立及打開的,它與表文件的關(guān)系;什么是復(fù)合索引文件(包括結(jié)構(gòu)復(fù)合索

2、引文件和非結(jié)構(gòu)復(fù)合索引文件),他們與單項索引文件有什么區(qū)別?是如何建立及打開的,它們與表文件的關(guān)系;確定主控索引的意義。班 級 14國貿(mào)1 學(xué) 號 140108100421 姓 名 張懿慧 三、實驗內(nèi)容1表文件的打開、關(guān)閉操作用數(shù)據(jù)工作期同時打開“職工”、“銷售”和“商品”三個表文件,然后關(guān)閉其中的兩個文件。用USE打開、關(guān)閉“職工”、“銷售”和“商品”表文件,在數(shù)據(jù)工作期觀察打開的情況。2移動及測試記錄指針以三個數(shù)據(jù)表文件為基礎(chǔ),熟悉表記錄指針的移動方法以及表處理的常用函數(shù)。當(dāng)執(zhí)行LIST、DISPLAY、GO、SKIP等語句后,測試EOF()、BOF()、RECNO()等函數(shù)的值,特別注意

3、當(dāng)文件指針在表文件的首記錄、末記錄和文件頭、文件尾時,測試函數(shù)的返回值 。在命令窗口輸入如下命令(注意輸入一條命令要鍵入回車鍵),并在有?處記錄下命令的執(zhí)行結(jié)果。USE 職工GO 5?RECNO() 回答:5SKIP 3?RECNO() 回答:8GO BOTTOM?RECNO(),EOF() 回答:10;.F.SKIP?RECNO(),EOF() 回答:11;.T.GO TOP?RECNO(),BOF() 回答:1;.F.SKIP -1?RECNO(),BOF() 回答:1;.F.?FCOUNT( ) 回答:9?RECCOUNT( ) 回答:10USE 銷售?FCOUNT( ) 回答:3?RE

4、CCOUNT( ) 回答:103對表文件的記錄進(jìn)行顯示和簡單的編輯(1)顯示“職工”表的前三條記錄,再顯示最后三條記錄?;卮穑海▽懗稣_的命令,下同)USE 職工GO 1GO BOTTOMSKIP -2LIST REST(2)將“職工”表中所有基本工資大于2000的已婚女職工,其基本工資在原有基礎(chǔ)上調(diào)10%,并用DISPLAY命令顯示修改前后的記錄?;卮穑篋ISOLAY FOR 婚否=.T.AND.性別=”女”.AND.基本工資>2000EPLACE 基本工資 WITH 基本工資*1.1 FOR婚否=.T.AND.性別=”女”.AND.基本工資>2000(3)在命令窗口設(shè)置SET

5、DELETED ON,邏輯刪除職工表中在1978年以后出生的女職工記錄,用LIST命令顯示結(jié)果,再將打上刪除標(biāo)記的記錄恢復(fù),并用DISPLAY命令檢查恢復(fù)是否正確。回答:SET DELETED ONDELETE FOR 出生日期> (1978-01-01 .AND. 性別=女ListRECALL FOR 出生日期> (1978-01-01 .AND. 性別=女BROWSE LASTDISPLAY FOR出生日期> (1978-01-01 .AND. 性別=女(4)在命令窗口設(shè)置SET DELETED OFF,將第(3)題再做一遍,注意結(jié)果有什么不一樣?;卮穑篠ET DELET

6、ED OFFDELETE FOR 出生日期> (1978-01-01 .AND. 性別=女ListRECALL FOR 出生日期> (1978-01-01 .AND. 性別=女DISPLAY FOR出生日期> (1978-01-01 .AND. 性別=女4有一個工資表文件,其表結(jié)構(gòu)及記錄如表2-14和表2-15所示,用REPLACE命令計算每位職工的應(yīng)發(fā)金額和實發(fā)金額?;卮穑篣SE 工資Replace ALL 應(yīng)發(fā)工資 WITH 基本工資+崗位津貼+其他發(fā)款REPLACE ALL 實發(fā)工資 WITH基本工資+崗位津貼+其他發(fā)款-其他扣款LIST表2-14 工資.DBF的結(jié)構(gòu)表

7、2-15 工資.DBF的數(shù)據(jù)5建立排序文件(1)單字段排序:將職工表按照出生日期的升序排列顯示?;卮穑篣SE 職工LISTSORT TO 職工出生日期升序 ON 出生日期 /A USE 職工出生日期升序 LIST (2)多字段排序:將職工表按性別排序,性別相同的情況下再按基本工資的升序排列?;卮穑篣SE 職工 SORT ON 性別,基本工資 /A TO zgxbgz USE zgxbgz LIST 6建立單項及復(fù)合索引文件(1)建立單項索引文件,按職工表的基本工資字段的邏輯順序排列?;卮穑篣SE 職工 INDEX on 基本工資 to zggz LIST (2)建立單項索引文件,按出生日期的邏

8、輯順序排列?;卮穑篣SE 職工 INDEX on 出生日期 to zgrq LIST (3)建立結(jié)構(gòu)復(fù)合索引文件的索引標(biāo)識,按姓名的升序索引?;卮穑篣SE 職工 INDEX ON 姓名 TAG zgxm1 LIST(4)建立結(jié)構(gòu)復(fù)合索引文件的索引標(biāo)識,按出生日期的降序索引?;卮穑篣SE 職工 INDEX ON 出生日期 TAG zgrq2 DESCENDING LIST(5)建立非結(jié)構(gòu)復(fù)合索引文件的索引標(biāo)識,按出生日期的升序排列。回答:USE 職工 INDEX on 出生日期 Tag csrq of FJGLIST (6)建立非結(jié)構(gòu)復(fù)合索引文件的索引標(biāo)識,按基本工資、出生日期的升序索引。回答:

9、USE 職工 INDEX on STR(基本工資,6,2)+DTOS(出生日期) TAG zggzrq of FIG LIST (7)用一條命令打開所有的索引文件,并確定主索引文件或標(biāo)識,在屏幕上顯示索引結(jié)果?;卮穑篣SE 職工 SET INDEX TO zggz, zgrq, 職工, fjg SET ORDER TO zggz LIST (8)建立一個單項索引文件,使其按照基本工資降序排列?;卮穑篣SE 職工 INDEX on 3000-基本工資 to zggz2 LIST(9)利用表設(shè)計器對建立的索引標(biāo)識情況進(jìn)行檢查。四、實驗2-2報告 1通過上述實驗,請回答下列問題(1)LIST _=D

10、ISPLAY,而DISPLAY_=LIST。回答:recno();all(2)執(zhí)行了LIST命令后,EOF()=_?;卮穑?T.(3)執(zhí)行了GO TOP命令后,BOF()=.T.,對嗎?為什么?回答:不對;GO TOP之后指針只是指到了首記錄而非文件頭,而BOF()是表頭測試函數(shù),因此應(yīng)該BOF()=.F.(4)如何用LIST/DISPLAY命令顯示備注字段內(nèi)容?回答:用LIST /DISPLAY ALL命令顯示備注型字段內(nèi)容(5)你認(rèn)為用REPLACE對表文件記錄進(jìn)行修改,與用BROWSE命令修改有什么不同?回答:BROWSE是顯示文件記錄然后對文件記錄進(jìn)行修改,REPLACE直接對文件記錄

11、進(jìn)行修改,而且REPLACE可以批量修改(6)SET DELETED ON/OFF語句對被邏輯刪除的記錄有何影響?回答:使用SET DELETED ON 對邏輯刪除標(biāo)志有效,刪除標(biāo)記的記錄不參與處理。 使用SET DELETED OFF對邏輯刪除標(biāo)志無效,刪除標(biāo)記的記錄參與處理。(7)通過實驗,請你歸納當(dāng)EOF()為.T.時,RECNO()為多少?當(dāng)BOF()為.T.時,RECNO()為多少?回答:11和1(8)用SORT命令建立排序文件后,緊接著用LIST命令卻看不到排序結(jié)果,為什么?回答:用SORT命令建立排序文件后,會產(chǎn)生一個新表,排序內(nèi)容在新建的新表里,要USR 新表再LIST瀏覽(9)建立索引文件時,有一個可選參數(shù)UNIQUE,它有什么意義?你能舉例說明嗎?回答:當(dāng)多個記錄的<索引表達(dá)式>值相同時,只有其中第一個記錄的值記入索引文件。 例一:INDEX ON 婚否 TAG HF OF FJG UNIQUE &&按婚否建唯一索引標(biāo)識HF加到非結(jié)構(gòu)復(fù)合索引文件FJG.cdx中(10)請總結(jié)一下表的排序與表索引有什么不同。回答:不同: 1.建索引是在系統(tǒ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

提交評論