第3章表的基本操作_第1頁
第3章表的基本操作_第2頁
第3章表的基本操作_第3頁
第3章表的基本操作_第4頁
第3章表的基本操作_第5頁
已閱讀5頁,還剩135頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第3章

表的基本操作

3.1表文件結(jié)構3.2表記錄編輯的常用命令3.3索引、查詢和排序3.4數(shù)據(jù)統(tǒng)計3.1表文件結(jié)構 3.1.1定義表結(jié)構 一般情況下,人們在用手工繪制一張如表3.1所示的學生成績表時都要了解這張學生成績表有幾欄?每欄的最大寬度是多少?這張表共有幾行? 在確定了以上數(shù)據(jù)和繪制表格所用紙張的規(guī)格后,依據(jù)每欄的字符數(shù)與表格的行數(shù)就可以利用尺或其他工具畫出這張表格。表3.1學生成績表 計算機存儲和處理這張表格時,實際上也采用了類似的描述方法。在VFP中,表的每一欄稱為一個字段(Field),欄標題作為對應的字段名;表中的每一行稱為一條記錄(Record)。一個字段名對不同的記錄而言可有不同的值,也可以說字段實際上是一個變量。因此,字段名又叫作字段變量名。由此,為了準確描述表,VFP對每一欄就應當有字段名、字段類型、字段寬度、小數(shù)位數(shù)等描述。 1.字段名 字段名與二維表中的欄名相對應,字段名的長度不超過10個字符,可以由字母、數(shù)字、下劃線或漢字等組成,而且必須以字母開頭。字段名中不能包含空格,在同一個表文件中,任意兩個字段不允許重名。 2.字段類型 VFP字段變量可以是字符型(C)、數(shù)值型(N)、邏輯型(L)、日期型(D)、備注型(M)、通用型(G)、整型(N)、雙精度型(N)、浮點型(N)、日期時間型(T)、貨幣型(Y)、二進制字符型(C)、二進制備注型(M)等數(shù)據(jù)類型中的一種。 3.字段寬度 字段寬度的意義類似于手繪表的欄寬,由每一欄的最大字符數(shù)決定。手工繪表時可通過換行來減少字符數(shù)太多的某欄的長度,但在計算機存儲的表中,系統(tǒng)則對不同數(shù)據(jù)類型的字段寬度作了限定,如字符型字段的寬度為1~245,數(shù)值型字段的寬度為1~20。其中有的字段類型的寬度是固定的(見表3.2)。表3.2字段寬度表 4.小數(shù)位數(shù) 定義數(shù)值型和浮點型等字段時不僅需要指出字段的寬度,而且還要指明小數(shù)位數(shù)。以表3.1為例,其表結(jié)構描述為: 以上描述了表的每一欄,即定義了表結(jié)構。其中,字段名采用拼音以方便使用。注意,字段含義僅作注解之用,不是定義表結(jié)構所必需的。 3.1.2建立表文件 為了方便人機交流,VFP提供了一系列交互操作命令、菜單操作與項目操作。本節(jié)介紹利用上述操作建立表文件的過程。從知識的理解與掌握以及方便后續(xù)編程的目標出發(fā),希望讀者以命令的理解作為學習的重點。 文件是一組信息的有序結(jié)合,而表文件是二維表在計算機中的映射,二維表數(shù)據(jù)依據(jù)表結(jié)構存儲于表文件中。表文件是VFP工作的基礎。

1.命令方式建立表文件 命令格式:CREATE [驅(qū)動器][路徑]<表文件名> 設對應于表3.1的文件名為xscj.dbf,且保存于c:\vfplx文件夾(c:\vfplx為本書練習文件夾,若無特別說明,本書中省略了[驅(qū)動器][路徑]的所有文件,皆表示此文件夾中的文件)。在命令窗口中輸入(見圖3-1): CREAc:\vfplx\xscj 表文件的默認擴展名為?.dbf,若未輸入其他擴展名,該擴展名會自動加入。依據(jù)系統(tǒng)約定,命令輸入時取命令詞前四個字母即可。 輸入CREATE命令后,“表設計器”窗口打開,見圖3-1所示。根據(jù)表3.1中的表結(jié)構描述,在“表設計器”窗口中輸入每一行,完成圖3-1所示的內(nèi)容。圖3-1“表設計器”窗口 輸入完畢后,用鼠標單擊“確定”按鈕,打開圖3-2所示信息框。在信息框中單擊“是”按鈕,即可在圖3-3所示的記錄錄入框中輸入記錄數(shù)據(jù)。如果單擊信息框中的“否”按鈕,將結(jié)束表文件的建立而不輸入記錄數(shù)據(jù),以后可用本書后面章節(jié)中介紹的記錄追加APPEEND等命令輸入記錄數(shù)據(jù)。 讀者可自行按表3.1所示,在圖3-3所示的畫面中輸入記錄數(shù)據(jù),完成記錄錄入與表文件建立工作。圖3-2信息框圖3-3記錄錄入框 2.其他方式建立表文件 除了命令方式外,還可以用其他方法建立表文件,本小節(jié)介紹其中的幾種。 1)利用菜單建立表文件 利用菜單建立表文件時,先單擊“文件”菜單中的“新建”菜單項,并在隨之出現(xiàn)的文件類型選擇對話框(見圖3-4)中選取“表”,然后單擊“新建文件”按鈕;在隨之出現(xiàn)的“創(chuàng)建”對話框(見圖3-5)中選取存盤位置并輸入表名后,圖3-1所示的界面出現(xiàn);在此界面中重復前述命令方式下建立新表的步驟即可完成新表文件的建立。圖3-4文件類型選擇圖3-5“創(chuàng)建”對話框

類似于以上的操作過程,本書以后將統(tǒng)一表示為:“文件”/“新建”/選取“表”/單擊“新建文件”/輸入表名。 2)利用向?qū)Ы⒈砦募? 采用向?qū)?chuàng)建新表的操作過程為:“文件”/“新建”/選取“表”/單擊“向?qū)А?選取“樣表”與“可用字段”/……,并按對話框中的提示繼續(xù)操作就可以完成新表的建立。 3)在項目管理器中建立新表 項目管理器將在后續(xù)的學習中詳細介紹。若讀者有興趣,可先嘗試用下面介紹的方法在項目管理器中建立新表。首先創(chuàng)建項目文件,其操作方法是:“文件”/“新建”/選取“項目”/單擊“新建文件”/輸入項目文件名。操作完成后,“項目管理器”窗口就會出現(xiàn)(見圖3-6)。圖3-6“項目管理器”窗口

“項目管理器”對話框打開后,執(zhí)行如下操作:選取“數(shù)據(jù)”/選取“自由表”/單擊“新建表”,打開圖3-5所示的“創(chuàng)建”對話框。 在“創(chuàng)建”對話框(見圖3-5)中選取存盤位置并輸入表名后,就可以打開表設計器(見圖3-1所示);在表設計器中重復前述命令方式下建立新表的步驟即可完成新表文件的建立。 4)從現(xiàn)存表文件中復制表結(jié)構 如果已經(jīng)有了一個表文件,我們就可以用復制結(jié)構的方法迅速建立一個新的表文件。從現(xiàn)存表文件中復制表結(jié)構時需要先打開要復制的表文件。打開要復制的表文件后,執(zhí)行以下命令即可: COPYSTRUCTURETO<新文件名>

例3-1從已有文件c:\vfplx\xscj.dbf復制一個文件表結(jié)構并保存為c:\vfplx\xscj2.dbf usec:\vfplx\xscj &&打開要復制的表文件 copystrutoc:\vfplx\xscj2 &&表結(jié)構復制 use &&養(yǎng)成良好習慣,及時關閉表文件

為了方便本書的后續(xù)學習并練習、鞏固建立新表的各種方法,讀者可按以下要求以練習建立三個新表: §

建立學生表(c:\vfplx\xs.dbf):表結(jié)構描述見表3.3。注意,表文件中有備注字段時,除了表文件外,還會自動建立一個擴展名為(.FPT)的備注文件。這個備注文件用于存放備注字段的內(nèi)容。 §

建立課程代碼表(c:\vfplx\kcdm.dbf):表結(jié)構描述見表3.4。 §

建立考試類別代碼表(c:\vfplx\kslb.dbf):表結(jié)構描述見表3.5。表3.3學生表表3.4課程代碼表表3.5考試類別代碼表 3.1.3顯示表結(jié)構 建立表文件后,為了檢查其正確性或查看表結(jié)構內(nèi)容,常需要顯示表結(jié)構。顯示表結(jié)構命令的格式如下(詳細命令格式可查閱幫助說明): DISPLAYSTRUCTURE或LISTSTRUCTURE 例3-2顯示學生成績表xscj的結(jié)構。 usec:\vfplx\xscj liststru use

顯示結(jié)果見圖3-7所示。從圖中可見,DISPLAYSTRUCTURE命令除了顯示表結(jié)構一般描述外,還列出了表文件的存儲位置、記錄數(shù)、最近更新時間、所有字段總寬數(shù)、表的代碼頁、索引和排序等信息。圖3-7成績表結(jié)構

3.1.4表結(jié)構文件修改 表結(jié)構確定之后,如果通過顯示表結(jié)構的內(nèi)容發(fā)現(xiàn)有錯誤或表結(jié)構的設計想法發(fā)生了變化,都需要對表結(jié)構文件進行修改。修改表結(jié)構文件的命令如下: MODIFYSTRUCTURE 使用修改表結(jié)構命令時,必須首先打開要修改的表。MODIFYSTRUCTURE命令將會打開表設計器(見圖3-1)對表結(jié)構進行修改。 修改表結(jié)構時,將創(chuàng)建一個擴展名為.BAK表備份文件,若有備注字段,系統(tǒng)將創(chuàng)建一個擴展名為.TBK備注備份文件。如果修改操作導致表中數(shù)據(jù)丟失,可刪除修改后的文件,然后備份文件的擴展分別改為.DBF和.FBT以恢復原有的結(jié)構和數(shù)據(jù)。3.2表記錄編輯的常用命令

3.2.1命令方式編輯表記錄 事實上,我們在介紹有關表文件結(jié)構的一些命令時,已經(jīng)學習了一些命令約定(命令格式)。VFP命令格式的一般形式為: 命令動詞[<范圍>][FIELDS<字段名表>][FOR<條件>][WHILE<條件>] [TOPRINTER[PROMPT]/TOFILE<文件名>][NOOPTIMIZE][OFF] 其中,命令動詞常為英文動詞,“[]”內(nèi)為可選項,“<>”內(nèi)為必選項。注意,在輸入語句時,不要輸入選項外的方括號和尖括號。 從VFP命令格式的一般形式中可以看出,VFP命令通常由命令動詞、“范圍”子句、“條件”子句和其他的一些選項構成。 “范圍”子句用于確定要操作記錄的范圍,即指定在表中要操作哪一行。在“范圍”子句中共有四種選擇: ·RECORDn 指定第n條記錄; ·NEXTn 指定當前記錄開始的共n條連續(xù)記錄; ·REST 指定當前記錄開始到表文件尾的所有記錄; ·ALL 指定所有記錄(可省略)。 FIELDS子句實際上也是一種范圍子句,用于確定記錄中要操作的字段,也就是表中的列。要操作字段的字段名在字段名列表中逐個列出,字段名間用逗號分隔。注意,使用英文的逗號“,”,不要用中文的逗號“,”。如果省略“FIELDS<字段名表>”子句,則表示對所有字段進行操作。 “條件”子句根據(jù)條件確定要操作的記錄。該子句有兩種形式,“FOR<條件>”和“WHILE<條件>”?!癋OR〈條件〉”子句表示對給定的范圍內(nèi)滿足條件的所有記錄進行操作,“WHILE〈條件〉”子句表示從當前記錄開始操作,只要碰到不滿足條件的記錄就停止操作。如果同時存在FOR和WHILE子句,則WHILE子句優(yōu)先。 “條件”子句中的“條件”是一個邏輯型的表達式。 1.打開表文件 命令格式:USE<文件名> USE命令打開指定的表文件并將記錄指針指向第一條記錄,表中若有備注字段,相關的備注文件自動打開(.FPT)。 2.關閉表文件 命令格式:USE或CLOSETABELS

3.記錄指針定位 在表文件中,計算機采用記錄指針來確定要操作的記錄的位置。記錄指針指向的記錄稱為當前記錄。若記錄指針指向第5條記錄,則當前記錄號為5。移動記錄指針的方法有絕對移動和相對移動兩種,使用不同的命令來實現(xiàn)。 1)絕對移動 命令格式1:GO/GOTO[RECORD]<記錄號> 命令格式2:GO/GOTOTOP/BOTTOM 命令中的“記錄號”應小于表中的總記錄數(shù),如果記錄號大于表中的總記錄數(shù),系統(tǒng)將提示“記錄超出范圍”;命令中的TOP表示表中第一條記錄,BOTTOM表示表中最后一條記錄。 2)相對移動 命令格式:SKIP<±n> SKIP命令相對于當前記錄的位置把記錄指針移動指定的記錄個數(shù)。若n為正,則相對于當前記錄把記錄指針向文件尾移動n條記錄;若n超過記錄總數(shù),則記錄指針移到文件尾,同時,系統(tǒng)的當前記錄號為記錄總數(shù)加1;若n為負,則相對于當前記錄把記錄指針向文件頭移動n條記錄。若每次向文件尾移動一條記錄,則可省略<±記錄數(shù)n>。

例3-3設xscj.dbf共有9條記錄,記錄指針移動命令的示例如下: usexscj &&打開學生成績表文件,記錄指針指向第一條記錄 ?recno() &&顯示打開文件時的記錄號 skip3 &&記錄指針指向第4條記錄,相對第一條記錄移動3條 skip &&記錄指針指向第5條記錄,相對第4條記錄移動1條 ?recno() &&顯示記錄號,結(jié)果為5 skip7 &&超過記錄總數(shù) ?recno() &&顯示記錄號,結(jié)果為10 skip–2 &&記錄指針指向第8條記錄 ?recno() &&顯示記錄號 skip–10 &&記錄指針指向第1條記錄 ?recno() &&顯示記錄號 gotop &&記錄指針指向第1條記錄,TOP記錄頭(第1條) go5 &&記錄指針指向第5條記錄 gobottom &&記錄指針指向第9條記錄 use &&關閉表文件 注意,在VFP程序中“*”和“&&”后的內(nèi)容是對程序的注解。一般“*”用于以整行注解,“&&”用以語句后注解。 4.顯示、瀏覽表文件 命令格式:LIST[<范圍>][FIELDS<字段名表>][FOR<條件>][WHILE<條件>] 命令格式:DISPLAY[<范圍>][FIELDS<字段名表>][FOR<條件>][WHILE<條件>] LIST與DISPLAY命令的作用除“[<范圍>]”子句省略時相同外,其余均相同。當省略“[<范圍>]”時,LIST命令顯示所有記錄;DISP命令則顯示當前記錄。 例3-4理解以下命令語句中“<范圍>”子句的用法(“***”后為要求完成內(nèi)容)。 usexscj &&打開表文件 ***顯示第6條記錄 LISTRECO6 ***顯示第2條至第7條記錄 GO2 &&先移記錄指針至第2條記錄 LISTNEXT6 &&第2條至第7條記錄共為7-2+1=6條記錄 ***顯示第5條至文件尾的所有記錄 GO5 &&先移記錄指針至第5條記錄 LISTREST &&按要求顯示 ***顯示所有記錄 LISTALL USE &&關閉文件 例3-5理解以下命令語句中“FIELDS<字段名表>”子句的用法(“***”后為要求完成內(nèi)容)。

usexscj &&打開表文件 ***顯示xh,xm,cj字段的內(nèi)容(即學號,姓名。成績?nèi)校? LISTFIELDSXH,XM,CJ ***顯示第2條至第7條記錄的xm,cj字段(即:指定的行、列) GO2 &&先移記錄指針至第2條記錄 LISTNEXT6FIELDSXM,CJ &&第2條至第7條記錄共為7-2+1=6條記錄 ***顯示第5條至文件尾的所有記錄(省略“FIELDS<字段名表>”子句, GO5 &&先移記錄指針至第5條記錄LISTREST &&顯示其余記錄(第5條至文件尾的所有記錄) 例3-6理解以下命令語句中“[FOR<條件>][WHILE<條件>]”子句的用法(“***”后為要求完成的操作及有關的注解)。 usexscj &&打開表文件 ***顯示“大學英語”的學生姓名和成績 LISTFIELDSXM,CJFORKCM="大學英語" ***顯示“李小偉”個人內(nèi)容 LISTFORXM="李小偉" ***顯示第5條至文件尾課程為“計算機基礎”、所有記錄的姓名與成績 GO5 &&先移記錄指針至第5條記錄 LISTRESTFIELDSXM,CJFORKCM="計算機基礎" ***顯示第4條至文件尾姓名為“王勇”的連續(xù)記錄 GO4 LISTWHILEXM="王勇" &&顯示二條連續(xù)記錄 ***如用“FORXM="王勇"”則顯示三條不連續(xù)記錄,不符合題意 5.追加與修改記錄 在建立了表結(jié)構,并打開該表文件的前提下,可以用APPEND命令追加與修改記錄。 命令格式:APPEND[BLANK] 例3-7據(jù)表3.3建立學生表結(jié)構前提下,打開學生情況表xs.dbf,按下表輸入數(shù)據(jù)。 usexs append &&輸入及修改數(shù)據(jù)(見圖3-8) list &&顯示結(jié)果 use ***APPENDBLANK為添加一條空記錄 ***數(shù)據(jù)輸入后,可顯示檢查。 ***鼠標雙擊備注字段(如:jl),可輸入文本 ***鼠標雙擊通用字段(如:zp),可編輯該字段圖3-8記錄錄入 6.插入記錄 使用APPEND命令添加的記錄都位于表的尾部。如果要在現(xiàn)有記錄的中間插入新的記錄,應使用插入命令INSERT。命令格式:INSERT[BEFORE][BLANK] 當我們需要插入記錄使其成為第三條記錄時,如果當前記錄為正是第三條記錄,可在當前記錄前插入新記錄(稱為前插記錄),這時使用的命令為INSERTBEFORE。 如果當前記錄為第二條記錄,可在當前記錄后插入新記錄(稱為后插記錄),這時使用的命令為INSERT 命令INSERTBLANK則在記錄指針的當前位置插入一條空記錄。 例3-8在學生情況表xs.dbf中,按下表規(guī)定插入一條記錄并使其為第三條記錄。 方法一: usexs &&先打開表 go3 &&使指針指向第三條記錄 insebefo &&第三條記錄前插入記錄,新記錄成為第三條,原記錄后移 ***完成輸入 list &&顯示結(jié)果 use 方法二: usexs &&編輯表,必須先打開表 go2 &&使指針指向第二條記錄 inse &&第二條記錄后插入記錄,新記錄成為第三條,原記錄后移 ***完成輸入 list &&顯示結(jié)果 use

7.刪除記錄 一個表建立后,除了添加數(shù)據(jù)和插入數(shù)據(jù)操作外,也會進行刪除某些記錄的操作。在VFP中,記錄的刪除有邏輯刪除和物理刪除兩種方式。 邏輯刪除操作僅對記錄作刪除標記,記錄仍保存于表中并可通過去除刪除標記來恢復。 物理刪除操作則刪除是作過刪除標記的所有記錄,將記錄從表中徹底去除。物理刪除后的記錄不可再恢復。 1)邏輯刪除 命令格式:DELETE[<范圍>][FOR<條件>] 若命令中省略<范圍>,且不包含<條件>子句,則表示只對當前記錄作刪除標記。 例3-9對學生成績表完成下列操作(“***”后為要求完成操作的內(nèi)容)。 usexscj ***邏輯刪除第五條記錄 go5 dele &&刪除當前記錄 ***以上二條語句可合并為:delereco5 ***邏輯刪除第三條記錄至文件尾的所有“大學英語”的課程記錄 go3 delerestforkcm="大學英語" list &&顯示結(jié)果(見圖3-9),圖中,左邊的黑色塊為刪除標記 use圖3-9邏輯刪除結(jié)果 如果不想顯示已被邏輯刪除記錄,可以用SETDELEON命令對顯示結(jié)果進行控制。 2)恢復邏輯刪除標記 恢復邏輯刪除標記命令用于恢復當前表文件中有刪除標記的記錄。 命令格式:RECALL[<范圍>][FOR<條件>] RECALL命令的功能是對用DELETE命令的刪除過的記錄進行恢復,它不能恢復用PACK和ZAP命令刪除掉的記錄。RECALL命令中的選項的意義與DELETE命令中選項的意義相同。

例3-10對學生成績表完成下列操作內(nèi)容(“***”后為要求完成操作的內(nèi)容)。 usexscj ***恢復邏輯刪除的記錄 recaall list&&顯示結(jié)果為圖3-9左邊黑色塊消失(刪除標記消失) use 3)物理刪除 PACK是物理刪除命令,可以把有刪除標記的記錄從表中清除掉并且重新組織原表中剩余的記錄。 命令格式:PACK 例3-11對學生成績表完成下列操作內(nèi)容(“***”后為要求完成操作的內(nèi)容)。 usexscj go3 delerestforkcm="大學英語" list &&顯示結(jié)果如圖3-9(左邊黑色塊為刪除標記) pack list &&顯示結(jié)果為圖3-9黑色塊的記錄消失 use ***采用所學的追加記錄或插入記錄命令恢復原先所有記錄 4)物理刪除當前表中的所有記錄 命令格式:ZAP 5)DELETE、PACK和RECALL命令的使用 為安全起見,要刪除一個表文件的某些記錄時可先用DELETE命令對其作刪除標記,若發(fā)現(xiàn)刪除了不該刪除的記錄,可用RECALL命令將其恢復;在確認所有用DELETE命令刪除的記錄無誤后,再用PACK命令將其余有刪除標記記錄除掉。

8.修改記錄 表建立后,除對記錄作追加、插入、刪除等操作外,還可以對記錄的內(nèi)容進行修改。可以用于修改記錄內(nèi)容的命令有APPEND、EDIT、BROWSE和REPLACE等。 1)APPEND命令 打開文件并在命令窗口輸入APPEND后,可將光標移動到需修改處直接進行修改。修改后按Ctrl+W鍵保存修改結(jié)果。(讀者可自行試用該命令)。 2)EDIT命令 命令格式:EDIT[<范圍>][FOR<條件>] 打開文件并在命令窗口輸入EDIT后,可將光標移動到需修改處直接進行修改。修改后按Ctrl+W鍵保存修改結(jié)果。EDIT與APPEND不同,它僅能改變記錄中內(nèi)容,不能追加新的記錄。 3)BROWSE命令 BROWSE命令是VFP中最有效的命令之一。通過BROWSE命令可打開瀏覽窗口顯示表,并對記錄進行修改與追加。 命令格式:BROWSE[FIELDS<字段名表>][FOR<條件>][[NOAPPEND][NODELETE][NOEDIT] 例3-12完成下列操作內(nèi)容(“***”后為要求完成操作的內(nèi)容)。 usekcdm &&打開課程代碼表 brow &&出現(xiàn)圖3-10所示的瀏覽窗口

***按下Ctrl+Y鍵,按圖3-10所示的數(shù)據(jù)逐個追加新記錄。 brownoappend ***noappend選項禁止追加記錄 brownoedit &&noedit禁止修改原有記錄, &&但可以追加記錄 brownodelete ***nodelete選項禁止刪除記錄,即用使鼠標單擊圖3-10中 ***kcdm欄左邊的白色小方塊,也不會形成類似圖3-9所示 ***黑色刪除標記。 ***無nodelete選項時,可用鼠標單擊白色小方塊刪除記錄。 use

4)BROWSE命令中的[FIELDS<字段名表>]子句 利用<字段名表>可以改變?yōu)g覽窗口中顯示字段的順序(見圖3-11),如果不使用<字段名表>,BROWSE命令就按表結(jié)構中的字段順序顯示各字段。另外,在每個字段名后可以用一個或多個符號加以修飾以取得不同的顯示效果。BROWSE命令<字段名表>項中的修飾字符比較多,下面只介紹[:R]和[:H]這兩個修飾字符。 修飾字符的使用格式為: <字段名>[:R][:H=<字符串>] 如果在FIELDS選項中的字段名后用[:R]加以限制,則此字段只能讀,不能修改。 如果字段名是英文,則可以用[:H=<字符串>]中的字符串代替英文字段名,從而顯示中文提示信息(見圖3-12)。圖3-11改變字段顯示位置圖3-12字段名中文顯示 例3-13對學生成績表完成下列操作(“***”后為要求完成操作的內(nèi)容)。 usexscj &&打開學生成績表 ***交換圖3-9中的姓名與課程名的顯示位置 browfielxh,kcm,xm,cj,kslb &&出現(xiàn)圖3-11瀏覽窗口 ***使字段名以中文顯示 browfielxh:h="學號",xm:h="姓名",kcm:h="課程名",cj:h="成績" ***顯示結(jié)果如圖3-12所示 use 5)REPLACE命令 除了使用前面介紹的幾個命令修改記錄以外,我們還可利用REPLACE命令對記錄內(nèi)容進行直接修改。 命令格式:REPLACE[<范圍>]<字段名1>WITH<表達式1>] [,<字段名2>WITH<表達式2>][…][FOR<條件>] REPLACE命令用WITH后面表達式的值替換當前記錄某些字段內(nèi)容。若選項<范圍>省略,表示只替換當前記錄。 REPLACE命令具有同時對多個字段進行替換的功能,它要求WITH后面表達式的數(shù)據(jù)類型必須與WITH前面的字段數(shù)據(jù)類型保持一致。 例3-14對學生成績表完成下列操作(“***”后為要求完成操作的內(nèi)容)。 usexscj &&打開學生成績表 list &&顯示結(jié)果如下 ***將課程名“法律基礎”的考試類別改為“口試” replallkslbwith“口試"forkcm="法律基礎" list &&顯示結(jié)果如下 ***將課程名“大學英語”改為“英語”,同時,將考試類別改為“面試”并將每人成績加2分 replallkcmwith“英語",kslbwith“面試",cjwithcj+2forkcm="大學英語" list&&顯示結(jié)果如下use

9.記錄的尋找定位 除了可以采用前面介紹過的GO與SKIP語句定位記錄外,還可采用類似于文字處理的方式進行記錄定位,即通過LOCATE命令尋找特定的內(nèi)容,從而直接完成記錄的定位。命令格式:LOCATE[<范圍>]FOR<表達式1> 例3-15對學生成績表完成下列操作(“***”后為要求完成操作的內(nèi)容)。 usexscj &&打開學生成績表 ***找姓名為“周天成",所學課程為“計算機基礎”的記錄 locaforxm="周天成"ANDkcm="計算機基礎" disp &&省略范圍時,disp顯示當前記錄 use

當完成特定記錄的定位后,如果還需要查找下一個同條件記錄,可利用CONTINUE命令繼續(xù)查找。 命令格式:CONTINUE 例3-16對學生成績表完成下列操作(“***”后為要求完成操作的內(nèi)容)。 usexscj &&打開學生成績表 ***找姓名為“李小偉”的記錄 locaforxm="李小偉" disp &&省略范圍時,disp顯示當前一條記錄 continue &&找姓名為“李小偉”的下一條記錄 disp ***以上為單條記錄查找與顯示 10.表文件復制 整個表文件的復制可以通過操作系統(tǒng)的資源管理器完成,但如果要按照按一定的條件復制VFP表文件中的部分記錄、部分字段,一般就需通過VFP的COPYTO命令來完成。 命令格式:COPYTO<文件名>[<范圍>][FIELDS<字段名表>][FOR<條件>][WHILE<條件>] 例3-17對學生成績表完成下列操作(“***”后為要求完成操作的內(nèi)容)。 usexscj &&打開學生成績表 ***將姓名為“李小偉”的記錄復制到另一表文件xw.dbf ***xw.dbf字段包括:姓名、課程名、成績、考試類別 copytoxwfieldsxm,kcm,cj,kslbforxm="李小偉" usexw &&打開“李小偉”的成績表,并關閉學生成績表 list &&顯示結(jié)果如下

use 11.從文件中追加記錄 實際應用中,經(jīng)常需要將不同表中的記錄合并到同一個表,比如將不同用戶輸入的數(shù)據(jù)進行合并。這時可以使用APPENDFROM命令。 命令格式:APPENDFROM<文件名>[FOR<條件>][FIELDS<字段表名>] 這條命令把指定表文件中的記錄追加到當前表文件的末尾。在復制記錄時只復制兩個文件中字段名和字段類型相同的那些字段。若有FOR<條件>子句,則只將滿足條件的記錄追加到目標文件中。如果省略FIELDS<字段名表>選項表示復制所有的字段,否則只復制在<字段名表>中指出的字段。 例3-18對學生成績表完成下列操作(“***”后為要求完成操作的內(nèi)容),并進一步理解各命令的作用。 usexscj &&打開學生成績表 ***將姓名為“李小偉”的記錄復制到另一表文件xw.dbf copytoxwforxm="李小偉" ***查看新表文件 usexw &&打開“李小偉”的成績表,并關閉學生成績表 l ist &&顯示結(jié)果如下usexscj &&打開學生成績表,并關閉“李小偉”的成績表***邏輯刪除姓名為“李小偉”的記錄;防止練習追加記錄時數(shù)據(jù)重復deleforxm="李小偉"list &&顯示結(jié)果如下,記錄號中的“*”為邏輯刪除標記 Pack &&物理刪除姓名為“李小偉”的記錄 List&&顯示結(jié)果如下,標有“*”的記錄已經(jīng)被刪除 ***以上操作使學生成績表中缺少了“李小偉”成績 ***從xw.dbf表中追加“李小偉”的成績(注意記錄位置的變化) appefromxw list &&顯示追加后結(jié)果如下 3.2.2菜單方式編輯表記錄 1.打開表文件 在前一節(jié)中,我們學習了表的創(chuàng)建。創(chuàng)建表后,如果要對表作進一步的操作,首先要打開表文件。用菜單方式打開文件的方法為選擇“文件”/“打開”,然后,在“打開”對話框(見圖3-13)中選擇需要打開的表文件。

除了菜單方式外,也可以可合理地運用“數(shù)據(jù)工作期”窗口來選擇并打開表文件。具體方法為: (1)

用鼠標單擊工具欄的“數(shù)據(jù)工作期”按鈕,使圖3-14所示的“數(shù)據(jù)工作期”窗口出現(xiàn)。 (2)

在“數(shù)據(jù)工作期”窗口中,用鼠標單擊“打開”按鈕,一個如圖3-13所示的“打開”對話框就會出現(xiàn)。這個操作相當于執(zhí)行了use<表文件>命令。 (3)

從“打開”對話框中選擇需打開的表文件。 (4)

在圖3-14的“別名”列表框中,選擇相應的表文件,然后,單擊“瀏覽”按鈕即可查閱或修改表。 在進行菜單操作的同時,系統(tǒng)執(zhí)行的相應命令會都會在“命令”窗口中出現(xiàn),讀者可留意“命令”窗口中出現(xiàn)的這些命令。圖3-13打開表文件圖3-14“數(shù)據(jù)工作期”窗口 2.關閉表文件 在圖3-14所示的對話框中選擇需關閉的表文件,然后用鼠標單擊“關閉”按鈕。 3.瀏覽及記錄指針的定位 以菜單方式瀏覽表文件的方法為選擇“顯示”/“瀏覽”(必須先打開要瀏覽的表)。 利用“數(shù)據(jù)工作期”窗口(見圖3-14)也可以瀏覽表文件,只要在“數(shù)據(jù)工作期”窗口中打開并選擇要瀏覽的表文件,然后,單擊“瀏覽”按鈕即可進行瀏覽。若對成績表進行以上操作,即可見到如圖3-15所示的結(jié)果。在瀏覽狀態(tài)下,菜單中將新增加一個菜單欄“表”(見圖3-16)。 在瀏覽表文件時,可利用新增的“表”菜單完成GO,SKIP,LOCATE等操作。其中,“表”菜單欄中的“第一個”菜單項等同于GOTOP命令;“最后一個”菜單項等同于GOBOTTOM命令;“下一個”菜單項等同于SKIP命令;“上一個”菜單項等同于SKIP–1命令;“記錄號”菜單項等同于GO<記錄號>命令;“定位”菜單項等同于LOCATE命令。讀者可自行嘗試以上菜單操作,操作時請注意圖3-15中最左邊黑三角箭頭的位置變化。圖3-15瀏覽表文件圖3-16記錄定位 注意,如果選擇了新增菜單的“轉(zhuǎn)到記錄”/“記錄號”菜單項,就會出現(xiàn)圖3-17所示的“轉(zhuǎn)到記錄”對話框,要求輸入記錄號;當選擇“轉(zhuǎn)到記錄”/“定位”菜單項,就會出現(xiàn)圖3-18所示的“定位記錄”對話框,要求輸入作用范圍(即LOCATE命令的[范圍]子句)及查詢條件(即LOCATE命令的FOR<條件>子句)。圖3-17轉(zhuǎn)到指定記錄號圖3-18轉(zhuǎn)到定位記錄 在進行以上菜單操作的同時,同樣請留意命令窗口出現(xiàn)的相應命令,以便加深對命令及菜單操作的相互關系的理解。 4.追加與修改記錄 在表文件的瀏覽狀態(tài)下,可以通過移動光標來定位要修改的表記錄的內(nèi)容,但是不能通過移動光標來增加新的記錄。在VFP瀏覽狀態(tài)下,增加新記錄的操作必須通過菜單或鍵盤操作方式來完成。 菜單方式:選擇“表”/“追加新記錄”(相當于執(zhí)行APPENDBLANK命令),每作一次操作可在表中增加一條空記錄。增加空記錄后,可進行記錄內(nèi)容的修改。

§

鍵盤操作:按下CTRL+Y鍵,每按一次CTRL+Y鍵可增加一條空記錄。 如果忘記了增加一條空記錄的鍵盤操作要按下哪些鍵,可用鼠標單擊菜單欄“表”,在“追加新記錄”菜單項的右邊就可以看到該鍵盤操作命令。VFP中的其他鍵盤操作也可以采用這種方式進行查閱。 以上操作方式可以在表中增加新的空記錄。除此之外,利用菜單方式還可以由另一個文件中追加記錄,具體可按下面的方法操作: (1)

選擇“表”/“追加記錄”,打開圖3-19所示的“追加來源”對話框。 (2)

用鼠標單擊“類型”框后的向下箭頭以選擇文件的類型,然后用鼠標單擊“類型”框后的按鈕選擇要追加的數(shù)據(jù)所在的表。 (3)

單擊“確定”按鈕。 用鼠標單擊圖3-19中的“選項”按鈕后,可以進一步選擇要追加的“字段”及指定追加的“條件”,讀者可自行嘗試使用。圖3-19“追加來源”對話框 5.記錄的其他操作 在打開表文件與瀏覽表文件時,還可以進行以下操作: (1)

單個記錄的邏輯刪除與恢復:選擇“表”/“切換刪除標記”,通過此操作可對當前記錄的邏輯刪除狀態(tài)進行,記錄左邊有黑色方塊者表示已邏輯刪除(見圖3-20)。 (2)

刪除單個或多個記錄:選擇“表”/“刪除記錄”,在隨之出現(xiàn)的“刪除”對話框中(與圖3-18所示的對話框類似)輸入或選擇范圍及刪除條件,然后,單擊“刪除”按鈕。 (3)

恢復單個或多個記錄:選擇“表”/“恢復記錄”,在隨之出現(xiàn)的對話框中(與圖3-18所示的對話框類似)輸入或選擇范圍及恢復條件,然后,單擊“恢復記錄”按鈕。 (4)

物理刪除記錄:選擇“表”/“徹底刪除”。這項操作相當于執(zhí)行了命令PACK。 (5)

調(diào)整字段顯示的大小:選擇“表”/“調(diào)整字段大小”或?qū)⑹髽酥赶騼勺侄伍g的分界位置(見圖3-20),當出現(xiàn)兩邊分開鼠標箭頭時,按住鼠標左鍵拖動至適當位置并放開鼠標左鍵即可。 (6)

改變字段顯示順序:選擇“表”/“移動字段”或?qū)⑹髽酥赶蚰匙侄?,當出現(xiàn)向下的鼠標箭頭時,按住鼠標左鍵拖動至適當位置放開即可。 (7)

分區(qū)顯示:將鼠標指向圖3-20所示的分區(qū)塊,出現(xiàn)兩邊分開鼠標箭頭時,按住鼠標左鍵拖動即可。圖3-20瀏覽狀態(tài)下的記錄操作 7.替換字段 通過“表”/“替換字段”操作,可利用菜單完成REPLACE命令,具體方法是: (1)

選擇“表”/“替換字段”,打開圖3-21所示的“替換字段”對話框。 (2)

在“替換字段”對話框的“字段”框中選取字段,在“替換為”框中輸入替換內(nèi)容,同時,輸入作用范圍及條件,然后,單擊“替換”按鈕完成替換操作。圖3-21“替換字段”對話框 3.2.3備注與通用字段的簡單編輯 1.表文件瀏覽狀態(tài)下編輯 打開表,在瀏覽方式下將光標置于某記錄的備注或通用字段(見圖3-22)上,然后,按Crtl+PageDown鍵或用鼠標雙擊該字段就可以打開備注或通用字段的編輯窗口。在編輯窗口中,可利用通常的文本編輯或圖片粘貼等技術進行編輯,編輯完成后存盤(按Ctrl+W或關閉窗口)或按Esc鍵放棄存盤。若記錄的備注或通用字段中存有內(nèi)容,則圖3-22中備注或通用字段顯示方式為“Gen”、“Memo”;若記錄的備注或通用字段顯示為“gen”、“memo”,則表示字段內(nèi)容為空。圖3-22光標置于通用字段 2.命令方式下編輯 打開表文件后,若表文件有備注或通用字段,可用如下命令編輯: (1)

編輯備注字段:使用命令MODIFYMEMO<備注字段名表> (2)

從文本文件中添加:使用命令

APPENDMEMOFROM<文本文件名>[OVERWRITE]

該命令中若是使用了[OVERWRITE]選項,則用文本文件的內(nèi)容替換當前備注字段內(nèi)容;若無[OVERWRITE]選項,則將文本文件的內(nèi)容追加到原備注字段內(nèi)容之后。 (3)

編輯通用字段:使用命令MODIFYGENERAL<通用字段名表>3.3索引、查詢和排序 3.3.1索引 1.單項索引文件 1)建立單項索引文件 命令格式:INDEXON<索引表達式>TO<索引文件名> 該命令根據(jù)“索引表達式”的值從小到大地對打開的表文件進行排序,并建立相應的單項索引文件。單項索引文件只能以升序排列。

2)打開單項索引文件 新建的單項索引文件在建立后即處于打開狀態(tài)。如果關閉表文件后,再次打開該表文件,那么就應當使用專門的單項索引文件打開命令打開索引文件,或者在打開表文件時使用命令要求索引文件隨著表文件一起打開。具體方法是: (1)

同時打開單項索引文件與表文件,可使用命令:

USE<表文件名>INDEX<索引文件名>

(2)

表文件打開后,再單獨打開單項索引文件,可使用命令:

SETINDEXTO<索引文件名> 3)關閉單項索引文件 單項索引文件隨著表文件的關閉自動關閉,也可以采用下列命令單獨關閉: SETINDEXTO 例3-19理解以下“單項索引文件”的應用(“***”后為要求完成的操作或說明)。 Clear &&清空VFP窗口內(nèi)容命令 setdefaulttoc:\vfplx &&設置VFP缺省路徑 ***設置VFP缺省路徑,以保證使在不指明路徑時,打開與建立的文件都處于此路徑下 usexscj &&打開c:\vfplx\xscj表文件 list &&顯示以記錄號排列(即,按輸入次序排列) ***使記錄顯示等按學號的升序排列 indeonxhtoxhsy &&據(jù)xh字段,新建單項索引文件xhsy list &&顯示結(jié)果如下:注意記錄號為輸入的物理順序記錄號XHXMKCMCJKSLB799041101李小偉英語80.0面試899041101李小偉計算機基礎82.0正??荚?99041101李小偉法律基礎85.0口試199041102王勇計算機基礎87.0正??荚?99041102王勇英語70.0面試 699041102王勇英語67.0面試399041105吳國穎英語90.0面試499041105吳國穎法律基礎67.0口試599041107周天成計算機基礎92.0正??荚? ***單項索引文件的建立使記錄依據(jù)學號由小到大排列而不按物理順序排列 setindeto&&單獨關閉單項索引文件 list &&顯示結(jié)果恢復輸入的物理順序(自己查看) setindetoxhsy &&打開已建立的單項索引文件

list &&顯示結(jié)果依據(jù)學號排列 use &&關閉表文件,單項索引文件同時關閉 usexscjindexhsy &&同時打開表文件與已建立的單項索引文件 list &&顯示結(jié)果依據(jù)學號排列 use 2.復合索引文件 1)建立復合索引文件 命令格式:INDEXON<索引表達式>TAG<索引標識名>[OF<索引文件名>] [ASCENDING|DESCENDING] 該命令為復合索引文件建立一個索引標識。如省略“[OF<索引文件名>]”子句,則索引文件名與表文件名相同,索引標識被寫到結(jié)構復合索引文件中;如使用了“[OF<索引文件名>]”子句,則索引文件名有該子句確定,索引標識被寫到獨立復合索引文件中。 2)打開復合索引文件 結(jié)構復合索引文件自動隨表文件一起打開,無需特別命令。如需打開獨立復合索引文件,則需專門說明。 命令格式:USE<表文件名>INDEX<索引文件名> 由于復合索引文件可包含多個索引表達式,因此除打開索引文件外,還需說明采用哪一個索引標識排序(即確定主控索引標識)。確定主控索引標識應使用以下命令: SETORDERTOTAG<索引標識> 3)關閉索引文件 命令格式1:CLOSEINDEXES 命令格式2:SETINDEXTO 4)在復合索引文件中刪除索引標識 命令格式:DELETETAG<標記名表> 該命令刪除當前打開的復合索引文件的索引標識。如果執(zhí)行DELETAGALL命令,則表示刪除所有的索引標識并將復合索引文件從磁盤上刪掉。 例3-20理解以下“復合索引文件”的應用(“***”后為要求完成的操作或說明)。 Clear &&清空VFP窗口 setdefaulttoc:\vfplx &&設置VFP缺省路徑 usexscj &&打開c:\vfplx\xscj表文件 list &&以輸入順序顯示記錄 ***建立學號升序,姓名降序的結(jié)構復合索引文件 indeonxhtagxh &&據(jù)xh字段,建立復合索引文件xscj.cdx。 ***因為省略了“[OF<索引文件名>]”子句,所以,結(jié)構復合索引文件的文件

***名默認為xscj.cdx,索引標識為xh字段 indeonxmtagxmdescending &&復合索引文件中增加xm索引標識,降序 setordertoxm &&確定以索引標識xm(姓名)排序 list &&按xm降序顯示記錄 setordertoxh &&確定以索引標識xh排序 list &&顯示結(jié)果按xh升序排列 setindeto &&單獨關閉索引文件

list &&顯示結(jié)果恢復輸入的物理順序(自己查看) use &&關閉表文件 usexscj &&表文件與已建立xscj.cdx一起打開,無需其他說明 use ***若沒有建立以上結(jié)構復合索引文件,采用以下獨立復合索引文件完成 usexscj &&打開c:\vfplx\xscj表文件 list &&以輸入順序顯示記錄 ***建立學號升序,姓名降序的獨立復合索引文件 indeonxhtagxhofcjsy &&據(jù)xh字段建立獨立復合索引文件cjsy.cdx。

indeonxmtagxmofcjsydescending&&增加xm索引標識,降序 setordertoxm &&確定以索引標識xm(姓名)排序 list &&顯示結(jié)果為按xm降序排列 setordertoxh &&確定以索引標識xh排序 list &&顯示結(jié)果為按xh升序排列 setindeto &&單獨關閉索引文件 list &&顯示結(jié)果恢復輸入的物理順序(自己查看) use &&關閉表文件 usexscj &&表文件打開時,cjsy.cdx沒有一起打開。 use

***若要求cjsy.cdx與表文件一起打開,應輸入 usexscjindecjsy &&使表文件與索引文件一起打開 use ***也可以單獨打開獨立復合索引文件 usexscj setindetocjsy &&單獨打開獨立復合索引文件 deletagxm &&從cjsy.cdx刪除索引標識xm deletagall &&刪除所有索引標識,并刪除復合索引文件cjsy.cdx use 除了利用索引使表記錄在不改變表文件的物理順序的情況下,按指定的次序排列外,也可以改變表記錄的物理順序使表文件中的記錄按照某個關鍵字值的大小重新排列。 3.3.2索引查詢 1.FIND命令 命令格式:FIND<表達式> FIND命令在當前表文件的主索引文件中查找索引關鍵字段與指定的<表達式>相匹配的第一條記錄,若檢索到匹配的記錄,則將記錄指針指向該記錄,同時使函數(shù)FOUND()的返回值為“真”;否則使FOUND()函數(shù)的返回值為“假”,EOF()函數(shù)的返回值為“真”。FIND只能查找字符型或數(shù)值型關鍵字。 例3-21利用FIND命令查找姓名為“吳國穎”與姓“李”的人。 Clear &&清空VFP窗口 setdefaulttoc:\vfplx &&設置VFP缺省路徑usexscj &&打開c:\vfplx\xscj表文件 indeonxmtagxmofcjsy&&據(jù)xh字段,建立獨立復合索引文件cjsy.cdx find“吳國穎” &&據(jù)姓名索引查找“吳國穎”(可加定界符""查找)

disp &&顯示當前記錄 find李 &&查找姓“李”的人(可不加定界符查找) disp deletagall &&刪除復合索引文件 use 2.SEEK命令 命令格式:SEEK<表達式> SEEK命令在當前表文件的主索引文件中檢索索引關鍵字段與指定<表達式>相匹配的第一條記錄。 SEEK命令功能比FIND命令強,它不僅可以檢索字符型或數(shù)值型數(shù)據(jù),而且還能檢索數(shù)值型和日期型數(shù)據(jù)。該命令要求字符型數(shù)據(jù)必須用定界符括起來,數(shù)值型數(shù)據(jù)則不用定界符,字符型日期數(shù)據(jù)則要用CTOD函數(shù)將其轉(zhuǎn)換成日期型數(shù)據(jù)。此外,在SEEK命令中如果<表達式>為變量名,則無需用宏替換函數(shù)。SEEK命令在檢索到相匹配的記錄后,記錄指針指向該記錄,并使函數(shù)FOUND()的返回值為“真”;否則使FOUND()函數(shù)的返回值為“假”,EOF()函數(shù)的返回值為“真”。 注意:邏輯型定界符為“.”,字符型定界符為“”(雙引號),日期型定界符為{^}。 例3-22利用SEEK命令查找xs.dbf中日期為1973年11月16日的記錄。 Clear &&清空VFP窗口 setdefaulttoc:\vfplx &&設置VFP缺省路徑 usexs &&打開c:\vfplx\xs表文件 indeoncsnytagcsnyofcsnysy &&據(jù)csny字段建立獨立復合索引文件 seek{^1973-11-16} &&{^1973-11-16}是VFP6.0中的年月日格式 disp &&顯示當前記錄 deletagall use 3.3.3排序 所謂排序就是把表文件中的記錄按照關鍵字值的大小重新排列并生成一個新的表文件。排序有時又稱為分類。排序時,使用SORT命令。 命令格式:SORTTO<文件名>ON<字段名>[/A][/D][<范圍>][FOR<條件>][FIELDS<字段名表>] 其中,/A表示按升序排序,/D表示按降序排序,如果省略此項則按升序排序。

例3-23按升序?qū)scj表中的xh字段進行排序并建立一個xhxscj表文件。 Clear &&清空VFP窗口 setdefaulttoc:\vfplx &&設置VFP缺省路徑 usexscj &&打開c:\vfplx\xscj表文件 sorttoxhxscjonxh use 例3-24按降序?qū)scj表中的xm字段進行排序并建立一個xmxscj表文件。 Clear &&清空VFP窗口 setdefaulttoc:\vfplx &&設置VFP缺省路徑 usexscj &&打開c:\vfplx\xscj表文件 sorttoxhxscjonxm/d use3.

溫馨提示

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

評論

0/150

提交評論