




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
VisualFoxPro實用教程
〔NCRE之VFP全攻略〕中國醫科大學計算機中心第3章
VisualFoxPro自由表操作國家二級考試考點1.自由表的建立、修改:(1)表結構建立與修改。(2)表記錄瀏覽、增加、刪除與修改。(3)表索引:主索引,候選索引,普通索引,唯一索引。2.多表操作:(1)選擇工作區。(2)建立表之間關聯,一對一關聯,一對多關聯。(3)設置參照完整性。(4)建立表間臨時關聯。導學一、學習目標1.熟練掌握自由表的建立、翻開、關閉及表結構的操作方法。2.掌握自由表記錄的顯示、定位、添加、修改和刪除等根本操作方法。3.熟練掌握建立排序文件、索引文件的方法。4.掌握翻開、關閉索引文件的方法和指定主索引的方法。5.熟練掌握VisualFoxPro的多表操作方法。二、重點、難點1.編輯自由表記錄的根本操作方法。2.索引文件的建立、翻開、關閉方法和指定主控索引方法。3.VisualFoxPro的多表操作方法。3.1VisualFoxPro表結構的根本操作3.1.1創立表結構〔考點〕1.創立自由表采用以下任何一種方法都可以翻開“表設計器〞的對話框,進行表結構創立。〔1〕使用工程管理器創立自由表。〔2〕未翻開任何數據庫時,執行菜單命令:【文件】|【新建】或單擊“新建〞按鈕創立自由表。〔3〕未翻開任何數據庫時,在命令窗口中執行命令創立自由表。命令格式如下:【格式】CREATE[路徑][<表文件名>]例:單擊查看創立方法答案:A[解析]用命令方式建立數據庫表,是在命令窗口利用OPENDATA命令先翻開數據庫,然后利用CREATE命令翻開表設計器進行數據表設計。例:〔2021.3〕在VisualFoxPro中可以建立表的命令是(
)。
A.CREATE
B.CREATEDATABASE
C.CREATEQUERYD.CREATEFORM課堂測試〔國二真題〕3.1VisualFoxPro表結構的根本操作3.1.1創立表結構2.表結構中的概念與規定表文件默認的擴展名為.dbf,假設包含備注型或通用型字段那么自動生成擴展名為.fpt的備注文件。表文件中所有的備注型和通用型字段的值都保存在一個備注文件里。存儲在該字段中的數據類型。類型必須以字母或漢字開頭,可由字母、漢字、數字和下劃線組成。字段名字母大、小寫無區別,但其中不允許有空格。自由表的字段名最多由10個英文字符組成。答案:A[解析]此題考查VisualFoxPro中常見文件的文件擴展名,屬于常考題目。擴展名為.dbf的文件是表文件,表單文件的擴展名為.scx,工程文件的擴展名為.pjx,數據庫文件的擴展名為.dbc。應選項A為正確答案。例:〔2004.9〕擴展名為dbf的文件是
A.表文件
B.表單文件
C.數據庫文件
D.工程文件課堂測試〔國二真題〕答案:EMP.fPt[解析]一般一個表對應于磁盤上的一個擴展名為.dbf的文件,如果有備注或通用型字段那么磁盤上還會有一個對應擴展名為.fpt的文件。例:〔2021.3〕在VisualFoxPro中,職工表EMP中包含有通用型字段,表中通用型字段中的數據均存儲到另一個文件中,該文件名為______。課堂測試〔國二真題〕3.1VisualFoxPro表結構的根本操作3.1.1創立表結構存儲在該字段中的數據類型。類型數據類型寬度說明字符型自定義漢字、字母、數字符號等各種字符型文本貨幣型8存儲貨幣值,默認保留4位小數數值型自定義整數或小數,此時可在“小數位數”欄設置小數位浮動型自定義類似于“數值型”,在存儲格式上采用浮點格式。浮點型數據分為
浮點型常量和浮點型變量。
實型常量也稱為實數或者浮點數實型變量分為兩類:單精度型和雙精度型日期型8用于存儲和表示日期,由年、月、日構成日期時間型8由年、月、日、時、分、秒構成3.1VisualFoxPro表結構的根本操作3.1.1創立表結構存儲在該字段中的數據類型。類型續表數據類型寬度說明雙精度型8雙精度數值類型,是較高精度的數值型數據整型4不帶小數的數值類型邏輯型1值為“真”或“假”備注型4用于存放較長的字符型數據通用型4用于OLE對象鏈接與嵌入答案:B[解析]在VisualFoxPro中,字段的數據類型不可以被指定為時間型,其他幾個選項都是可以被指定的合法的數據類型。因此選項B答案。例:〔2004.4〕在VisualFoxPro中字段的數據類型不可以指定為
A.日期型
B.時間型
C.通用型
D.備注型課堂測試〔國二真題〕3.1VisualFoxPro表結構的根本操作3.1.1創立表結構2.表結構中的概念與規定字段所能容納數據的最大字節數。在表設計器中打開“表”選項卡,可以看到表的總體信息。需要注意的是記錄長度應為所有字段寬度之和再加1。字段寬度表示是否允許該字段接受空值。NULL值指沒有值或無確定的值。NULL值(空值)數值型數據保留的小數位數。此時的字段寬度=整數位數+1+小數位數。小數位數答案:C[解析]空值與空(或空白)字符串、數值0等具有不同的含義,空值就是缺值或不確定值。例:〔2021.3〕以下關于空值(NULL值)表達正確的選項是______。
A.空值等于空字符串
B.空值等同于數值0
C.空值表示字段或變量還沒有確定的值
D.VisualFoxPro不支持空值〔2007.4有類似題目〕課堂測試〔國二真題〕3.1VisualFoxPro表結構的根本操作3.1.2修改表結構〔考點〕修改表結構首先要翻開“表設計器〞。1.翻開“表設計器〞的方法當自由表處于翻開狀態時,可使用以下方法翻開:〔1〕執行菜單命令【顯示】|【表設計器】。〔2〕在命令窗口中執行命令翻開:【格式】MODIFYSTRUCTURE答案:A[解析]要用命令修改表結構,先用USE翻開要修改的表,然后使用MODIFYSTRLICTURE翻開表設計器,對表結構進行修改。例:〔2021.9〕假設表文件TEST.DBF已經在當前工作區翻開,要修改其結構,可使用命令()。A.MODISTRU B.MODICOMMTESTC.MODIDBF D.MODITYPETEST〔2021.3、2021.4、2007.9有類似題目〕課堂測試〔國二真題〕3.1VisualFoxPro表結構的根本操作3.1.2修改表結構2.在“表設計器〞中可進行的修改〔1〕可以修改對已有字段的設置。但需要注意,同時修改字段名及其類型會造成數據喪失。應先修改字段名,存盤后再修改字段類型。3.1VisualFoxPro表結構的根本操作3.1.2修改表結構2.在“表設計器〞中可進行的修改〔2〕添加字段。假設在原有字段最后添加那么直接單擊“字段名〞列最下方位置即可開始添加。假設要在某字段前添加,那么單擊該字段后單擊“插入〞按鈕即可開始添加。3.1VisualFoxPro表結構的根本操作3.1.2修改表結構2.在“表設計器〞中可進行的修改〔3〕刪除字段。先單擊要刪除的字段,然后單擊“刪除〞按鈕即可。答案:步驟:1、參見第5頁動圖
2、參見第17頁動圖例:(2021.9)根本操作題1、創立“客戶〞表:客戶號C(4),客戶名C(20),銷售金額N(9,2)。2、增加一個字段,字段名為“說明〞,數據類型為備注型。(2021.3、2021.3、2021.9、2021.3有類似題目)課堂測試〔國二真題〕3.1VisualFoxPro表結構的根本操作3.1.3復制表結構可以選擇表中的假設干字段生成新的表,新表僅保存表的結構,而沒有記錄。【格式】COPYSTRUCTURETO<文件名>[FIELDS<字段名表>]【功能】從當前表文件中選擇字段復制生成新表文件的結構。【說明】命令執行后生成的新表文件只有表結構,沒有記錄。FIELDS選項中<字段名表>決定新表文件結構,缺省該子句那么生成的新表文件與當前表結構相同。新生成的表處于關閉狀態。3.1VisualFoxPro表結構的根本操作3.1.3復制表結構【例3-1】采用復制的方法生成一個新表“pat.dbf〞,要求該表中包含patient.dbf表中的住院號、姓名、性別、住院科室字段。USEpatientCOPYSTRUCTURETOpatFIELDS住院號,姓名,性別,住院科室USEpatMODIFYSTRUCTURE3.1VisualFoxPro表結構的根本操作3.1.4翻開、關閉表文件1.翻開表文件對表進行任何操作之前都要先將文件翻開,翻開表文件有以下3種方法:〔1〕使用工程管理器翻開表。〔2〕執行菜單命令【文件】|【翻開】或單擊“翻開〞按鈕通過“翻開〞對話框翻開表。〔3〕在命令窗口中執行命令翻開表。命令格式如下:【格式】USE[路徑][<表文件名>]3.2VisualFoxPro表記錄的根本操作3.2.1瀏覽表〔考點〕1.翻開瀏覽器〔2〕執行菜單命令【顯示】|【瀏覽】翻開。3.2VisualFoxPro表記錄的根本操作3.2.1瀏覽表1.翻開瀏覽器〔3〕在命令窗口中執行命令翻開瀏覽器。命令格式如下:BROWSE[范圍][FIELDS<字段名表>][FOR<條件表達式>][NOMODIFY][NOAPPEND][NODELETE]范圍:為可選項,可以是ALL、RECORDN、NEXTN、REST中任意一個。FIELDS:指定要顯示的字段,各字段名間用英文逗號分隔。缺省那么顯示所有字段。FOR<條件表達式>:指定顯示條件。NOMODIFY:禁止修改記錄。NOAPPEND:禁止追加記錄。NODELETE:禁止刪除記錄。3.2VisualFoxPro表記錄的根本操作3.2.1瀏覽表〔3〕在命令窗口中執行命令翻開瀏覽器。例:瀏覽patient表中外科患者的住院號、姓名、性別、住院科室信息,并且禁止修改記錄。USEpatientBROWSEFIELDS住院號,姓名,性別,住院科室FOR住院科室="外科"NOMODIFY3.2VisualFoxPro表記錄的根本操作3.2.1瀏覽表2.在瀏覽器窗口操作表〔1〕瀏覽記錄。可對記錄進行上、下、左、右滾動翻頁和定位,采用鼠標操作。也可使用快捷鍵鍵盤操作:上一條記錄“↑〞鍵;下一條記錄“↓〞鍵;上一頁“PageUp〞鍵;下一頁“PageDown〞鍵;上一字段Shift+Tab組合鍵;下一字段“Tab〞鍵。〔2〕追加空記錄。執行菜單命令【表】|【追加新記錄】或快捷鍵Ctrl+Y。答案:步驟:參見上頁動圖例:(2021.3)根本操作題為表“patibed〞插入一條記錄(“100201〞,“劉菲〞,“宋微〞,〞20210101〞,〞外二〞)課堂測試〔根據國二真題改編〕3.2VisualFoxPro表記錄的根本操作3.2.1瀏覽表2.在瀏覽器窗口操作表〔3〕修改記錄。選擇需要修改的內容直接錄入新數據即可。〔4〕刪除記錄。在VisualFoxPro中,表記錄的刪除分為邏輯刪除和物理刪除。邏輯刪除只添加刪除標記,如果需要可以恢復。物理刪除那么不能恢復。光標定位到要刪除的記錄,執行菜單命令【表】|【刪除記錄】,即可對該記錄打上刪除標記,進行邏輯刪除。執行菜單命令【表】|【徹底刪除】,那么將已經邏輯刪除的記錄進行物理刪除。〔5〕退出瀏覽器。使用快捷鍵Ctrl+W或“Esc〞即可關閉瀏覽器窗口。3.2VisualFoxPro表記錄的根本操作3.2.2增加記錄〔考點〕1.表結構建立時錄入數據當完成表結構的設計后,單擊“表設計器〞對話框中的“確定〞按鈕,將彈出“現在輸入數據記錄嗎?〞對話框。單擊“是〞按鈕,那么直接進入輸入記錄窗口。2.使用命令追加記錄【格式一】APPEND【功能】翻開記錄編輯窗口,在表的末尾添加一條或多條新記錄。【格式二】APPENDBLANK【功能】在表末尾添加一條空記錄。【格式三】APPENDFROM<表文件名>[FIELDS<字段名表>][FOR<邏輯表達式>]【功能】從指定表文件中追加符合條件的記錄。答案:步驟:1、在命令窗口中輸入命令:
USEpatient(回車執行)COPYSTRUTOn_patient(回車執行)
2、在命令窗口中輸入命令:
USEn_patient(回車執行)
APPENDFROMpatient(回車執行)例:(2021.9)根本操作題1、將“patient〞表結構復制到新表“n_patient〞中。2、將表“patient〞中的記錄復制到表“n_patient〞中。課堂測試〔根據國二真題改編〕3.2VisualFoxPro表記錄的根本操作3.2.2增加記錄3.使用命令插入記錄【格式】INSERT[BEFORE][BLANK]【功能】在當前表的當前記錄之前或之后插入記錄。【說明】省略BERORE子句那么在當前記錄之后插入新記錄,否那么在當前記錄前插入新記錄。假設使用BLANK子句那么插入的是一條空記錄。3.2VisualFoxPro表記錄的根本操作3.2.3刪除記錄〔考點〕1.邏輯刪除命令【格式】DELETE[<范圍>][FOR<邏輯表達式>]【例3-3】邏輯刪除patient.dbf表中2021年11月之前出院患者的信息。USEpatientDELETEFOR出院日期<{^2021/11/01}BROWSEFIELDS住院號,姓名,出院日期答案:當前[解析]表記錄的刪除[評析]DELETE[〈范圍〉][FOR〈條件〉][WHERE〈條件〉]功能:對當前表在指定〈范圍〉內滿足〈條件〉的記錄加上刪除標記。假設可選項為缺省,只指當前記錄。例:〔2006.9〕不帶條件的DELETE命令(非SQL命令)將刪除指定表的______記錄。〔2005.9〕課堂測試〔國二真題〕3.2VisualFoxPro表記錄的根本操作3.2.3刪除記錄2.恢復邏輯刪除記錄命令【格式】RECALL[<范圍>][FOR<條件表達式>]【功能】去掉當前表中指定范圍內滿足條件的記錄的刪除標記。【說明】當同時缺省<范圍>和FOR子句時,僅去掉當前記錄的刪除標記。3.2VisualFoxPro表記錄的根本操作3.2.3刪除記錄3.物理刪除記錄【格式】PACK【功能】徹底刪除當前表中所有帶刪除標記的記錄。4.物理刪除全部記錄【格式】ZAP【功能】物理刪除當前表文件中所有的記錄。答案:PACK[解析]要刪當前表中加了刪除標記的記錄應該使用命令PACK,如果要取消刪除標記那么要使用命令RECALL。例:〔2021.4〕在VisualFoxPro中,在當前翻開的表中物理刪除帶有刪除標記記錄的命令是______。課堂測試〔國二真題〕答案:C[解析]ZAP命令的作用是將當前翻開的表文什中的所有記錄完全刪除。執行該命令之后,將只保存表文件的結構,而不再有任何數據存在。這種刪除無法恢復。所以,選項C為正確答案。例:〔2007.9〕有關ZAP命令的描述,正確的選項是
A.ZAP命令只能刪除當前表的當前記錄
B.ZAP命令只能刪除當前表的帶有刪除標記的記錄
C.ZAP命令能刪除當前表的全部記錄
D.ZAP命令能刪除表的結構和全部記錄課堂測試〔國二真題〕3.2VisualFoxPro表記錄的根本操作3.2.4顯示記錄〔考點〕【格式】LIST|DISPLAY[OFF][范圍][FIELDS<字段名表>][FOR<條件表達式>][TOPRINTER|TOFILE<文件名>]【功能】顯示滿足條件的各個記錄的相關內容。【說明】使用OFF時,不顯示記錄號,否那么顯示記錄號。FIELDS、范圍和FOR子句的使用方法與BROWSE命令相同。TOPRINTER|TOFILE<文件名>:將結果輸出到打印機或輸出到文件。當同時缺省[范圍]和FOR子句時,LIST命令默認顯示全部記錄,而DISPLAY命令默認顯示當前記錄。答案:B[解析]LIST命令是顯示記錄的命令。格式為:
LIST[fieldlist][FORlExpression]
其中,fieldlist是用逗號隔開的字段名列表,默認顯示全部字段;
lExpression是條件表達式,如果使用FOR短語指定條件,那么只顯示滿足條件的記錄。例:〔2021.9〕在當前翻開的表中,顯示“書名〞以“計算機〞開頭的所有圖書,正確的命令是(
)。A.listfor書名="計算*"
B.listfor書名="計算機"C.listfor書名="計算"
D.listwhere書名="計算機"課堂測試〔國二真題〕3.2VisualFoxPro表記錄的根本操作3.2.5定位記錄指針命令〔考點〕在VisualFoxPro中,記錄號用于標識記錄在表文件中的物理順序。記錄指針指示的是當前的記錄號。當表文件剛翻開時,其記錄指針指向第1條記錄。定位記錄指針就是將記錄指針移動到目標記錄上,記錄指針指向的記錄稱為當前記錄。1.記錄指針的絕對移動【格式】[GO|GOTO]<數值表達式>【功能】將記錄指針定位到記錄號與<數值表達式>值相同的記錄上。3.2VisualFoxPro表記錄的根本操作3.2.5定位記錄指針命令2.記錄指針的相對移動相對移動與是否翻開索引文件有關。如果翻開了索引,那么記錄指針移動順序按索引文件中的順序,否那么按記錄號順序移動。【格式一】GO|GOTO<TOP|BOTTOM>【功能】移動記錄指針到表文件的首記錄或尾記錄。【說明】使用TOP子句,記錄指針定位到首記錄;使用BOTTOM子句,記錄指針定位到最后一條記錄。【格式二】SKIP[<數值表達式>]【功能】記錄指針從當前記錄開始向前或向后移動。【說明】<數值表達式>值為負數時,表示向前移動;為正數時,表示向后移動;缺省時,表示向后移動1個記錄。3.2VisualFoxPro表記錄的根本操作3.2.5定位記錄指針命令3.根據條件定位記錄指針【格式】LOCATEFOR<條件表達式>[<范圍>]【功能】在表中指定范圍內查找滿足條件的第一條記錄。【說明】假設找到滿足條件的第一條記錄,那么將記錄指針指向該記錄,此時FOUND()函數返回值為真。否那么,記錄指針指向<范圍>的底部,此時FOUND()函數返回值為假。假設<范圍>為ALL,記錄指針那么指向文件結束標志。假設繼續查找滿足該條件的下一條記錄,可使用CONTINUE命令,CONTINUE命令必須在LOCATE命令之后使用。【例3-4】記錄指針定位命令的用法USEpatient?RECNO() &&剛翻開表時記錄指針指向第一條記錄SKIP2?RECNO() &&系統主窗口顯示3SKIP-6?RECNO() &&系統主窗口顯示1?BOF() &&系統主窗口顯示.T.GOBOTTOM?RECNO() &&系統主窗口顯示值與記錄個數相同?EOF() &&系統主窗口顯示.F.LOCATEFOR住院科室=〞外科〞DISPLAY &&系統主窗口顯示第一個外科患者信息CONTINUEDISPLAY &&假設表中存在其他外科患者,系統主窗口顯示第二個外科患者信息USE3.2VisualFoxPro表記錄的根本操作3.2.6修改記錄命令〔考點〕1.編輯修改【格式】EDIT|CHANGE[FIELDS<字段名表>][<范圍>][FOR<條件表達式>]【功能】編輯修改當前表文件中指定的范圍內滿足條件的記錄。執行該命令后系統翻開編輯窗口,修改字段的方法與輸入記錄字段的方法相同。3.2VisualFoxPro表記錄的根本操作3.2.6修改記錄命令2.替換修改【格式】REPLACE<字段名1>WITH<表達式1>[,<字段名2>WITH<表達式2>]…[<范圍>][FOR<條件表達式>]【功能】用指定表達式的值替換修改當前表中滿足條件記錄的指定字段的值。【說明】可同時替換假設干個字段的內容。用<表達式N>的值替換<字段名N>中的數據,<表達式N>和<字段名N>中的數據類型必須相同。假設同時缺省<范圍>和FOR子句,那么只對當前記錄進行替換修改答案:D[解析]直接修改記錄的值,可以使用REPLACE命令
此題中A、C選項命令不對。因要對所有學生的總分增加10分,所以要用ALL表示全部記錄。例:(2021.9)為當前表中所有學生的總分增加10分,正確的命令是()。A.CHANGE總分WITH總分+10B.REPLACE總分WITH總分+10C.CHANGEALL總分WITH總分+10D.REPLACEALL總分WITH總分+10〔2021.3、2021.3、2021.4有類似題目〕課堂測試〔國二真題〕3.2VisualFoxPro表記錄的根本操作3.2.7數組與表之間的數據傳遞〔考點〕通過數據表與數組間傳遞數據的命令,能夠實現數據表與內存變量之間的數據交換。數組與記錄之間的數據傳遞〔1〕記錄數據復制到數組【格式】SCATTER[FIELDS<字段名表>]TO<數組名>【功能】將當前表中當前記錄的各個字段的數據依次復制到指定數組的各個元素中。【說明】缺省FIELDS子句,那么傳遞除
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度辦公空間玻璃隔斷藝術裝飾設計與施工合同
- 老人急救護理規范
- 班級創意活動課件
- 建筑涂料運輸租車合同
- 2024沈陽市于洪區職業教育中心工作人員招聘考試及答案
- 2024濟南市萊蕪職業中等專業學校工作人員招聘考試及答案
- 藥品運輸操作流程
- 房地產租賃合同模板
- 森林撫育承包合同協議書范本
- 酒店委托管理合同協議書
- 《聚焦超聲治療》課件
- 2023-2024學年高一下學期第一次月考(湘教版2019)地理試題(解析版)
- 全國國家級園區名單
- 婦科炎癥介紹演示培訓課件
- 如康家園管理制度
- 蓄水池工程施工工藝與技術措施
- 2022年4月自考00149國際貿易理論與實務試題及答案含評分標準
- 大數據驅動的藥物研發
- OLED顯示技術 教學課件
- 走進人工智能-AI發展史及人工智能的應用
- 技術負責人崗位責任制度
評論
0/150
提交評論