正文 第二章 漢字FoxBASE+數據庫的基本操作(一)(2 / 3)

說明:

(1)指磁盤上已經存在的某一數據庫文件。

(2)選擇FOR項,是對追加記錄進行條件限製。

(3)選擇FIELDS項,指定的字段必須相同才能對號人座,係統不理會字段不同的數據。

(4)選擇TYPE項,文件類型有兩種選擇:

①DELIMITED〔WITHC定界符>/BLANK〕

定界格式文件。這是一種ASCII文件,每個記錄以回車、換行結束。

若選定DELIMITEDWITHBLANK由空格分隔字段的文件。

若選DELIMITEDWITH由用戶選擇定界符分隔字段的文件。如“HALT”,2096,264。

②SDF

係統數據格式文件。這是一個標準的ASCII正文文件,文件中每個記錄都有固定的長度,並以回車、換行結束。因此,要求被添加記錄的內容必須按字符與當前庫的記錄匹配,即要等長。

1.命令格式

LIST〔範圍〕〔FIELDSC表達式>〕〔FOR〕〔WHILE〕〔OFF〕〔TOPRINT〕

功能:顯示當前已打開的數據庫中所有記錄內容。

說明:

(1)〔範圍〕有四種不同形式:ALL數據庫全部記錄(缺省值ALL);NEXT數據庫中自當前記錄開始的第n個記錄(n為數值表達式);RECORD數據庫中第n個記錄(n可以為數值表達式);REST自當前記錄開始到文件尾的所有記錄。

(2)選擇〔FIELDS〕用來指定顯示的字段名。該項缺省,除了備注字段顯示“memo”外,其餘字段內容全部顯示。若要顯示備注字段,則必須在中明確指出該字段名。

(3)選擇〔FOR〕表示找到滿足條件的記錄則顯示,不滿足的則跳過,直至在規定範圍內的記錄搜索完畢為止。

(4)選擇〔WH1LEC條件表達式>〕表示從當前記錄開始順序地對滿足條件的記錄予以顯示一旦週到不滿足條件的記錄則停止顯示。

(5)選〔OFF〕時,不顯示記錄號。

(6)選TOPRINT時,顯示內容送打印機打印。

2.命令格式

DISPLAY〔範圍〕〔FIELDS〕〔FOR〕〔WHILE〕〔OFF〕〔TOPRINT〕

功能:顯示當前打開的數據庫記錄內容

說明:參數的選擇項使用方法與LIST命令的選擇相同。DISPLAY與LIST兩種格式的區別在於:

(1)LIST的〔範圍〕默認為所有記錄,並從第一條記錄開始顯示;而DISPLAY的〔範圍〕默認為當前記錄。而DISPLAYALL時才與LIST相同。

(2)LIST的每十五個記錄之後連續顯示,而DISPLAY顯示滿屏時暫停,待用戶任擊一鍵後繼續顯示。

2.2.3修改數據庫記錄

FoxBASE+提供了一組靈活多樣的修改、查閱、更新數據的命令。

1.編輯修改命令EDIT,

命令格式:EDIT〔範圍〕〔FIELDS〈字段名表〉〕〔FOR〈條件〉〕〔WHILE〈條件>〕

功能:以全屏方式對記錄進行編輯修改。

說明:

(1)〔範圍〕缺省則指當前記錄。

(2)指定的字段變量才能修改,否則係統對當前數據庫所有字段提供修改。

(3)FOR,WHILE指編輯的記錄應符合條件才修改。

(4)編輯時可利用PgDn和PgUp實現對範圍內的前後多個記錄的編輯,也可以用回車鍵和I鍵的連續操作進入下一個記錄,或用I鍵的連續操作返回上一個記錄。

(5)可用U加上或取消記錄的刪除標記。

把光標移到開戶方式這一字段,把現金改為支票,改完後按W或在其餘字段上按回車鍵,退出edit命令。

2.修改數據CHANGE命令格式:CHANGE〔範圍〕〔FIELDSC字段名表>〕〔FOR〕〔WHILE〕

功能:該命令功能與EDIT命令的功能完全相同。

說明:與EDIT命令不同的地方,該〔命令範圍〕的缺省指REST,即自當前記錄開始到文件尾的所有記錄。

3.瀏覽編輯BROWSE

命令格式:BROSWER〔FIELDS〈字段名表〉〕CLOCK〈表達式〉〕〔FREEZE〕CNOMODIFY]。

功能:BROWSE命令是對數據庫記錄操作中最有用的命令之一。以全屏方式查閱和修改數據庫內容。

說明:

(1)不指定FlfeLDS表示對所有字段查閱和修改。

(2)屏幕記錄是從當前記錄開始向下列出,當查閱到最後一個記錄時,再向下移動光標可以添加記錄。

(3)除了前麵介紹的全屏幕編輯外,編輯時還可以用下麵功能鍵:

(4)各個選擇項的用法:HELDS子句指定了所顯示的字段及其在屏幕上從左到右的排列順序。

LOCK子句用於在作滾動顯示時鎖定若幹個字段。被鎖定的字段在屏幕左右平移時保持不動,以使用戶查看。

FREEZE子句使得執行該命令時隻能對一個字段進行修改,這個字段由指定。其它字段隻能顯示而不能修改,提高了數據編輯的安全性和效率。

NOFOLLOW:隻在索引文件打開時起作用。索引文件打開時,如果修改了一個記錄的關鍵字段的值,該記錄將在索引文件中重新定位。此時如未使用NOFOLLOW則記錄指針跟隨該記錄指向它的新位置。如果使用了NOFOLLOW則記錄指針不跟該記錄移動,而指向原來記錄的下一個記錄。

NOMENN:禁止使用BROWSE命令的子功能菜單,即使HOME或F10失效。

NOAPPEND:禁止用戶後數據庫增加記錄。

WIDTHC數值表達式限定每個字段的顯示寬度。係統默認值是79。

NOMODIFY:禁止修改或刪除庫記錄。

(5)在執行BROWSE命令時,用戶可按HOME/F10/來顯示子功能菜單:

選擇菜單有兩種方法:第一種用空格鍵或光標鍵把光標移到所要的選擇項再按RETURN鍵。第二種是直接鍵入選擇項的第一個字母。

4.替換記錄內容的REPLACE

EDIT命令,CHANGE命令和BROWSE命令都是在全屏方式下進行數據編輯的。這些命令對於零星的無規則的數據修改是有效的。但如果需要進行修改數量較大並且具有某種規律性,則應采用REPLACE命令。

命令格式:REPLACE〔範圍〕WITH〔,WITH〕〔FOR〕〔WHILE〕

功能對當前數據庫中指定範圍內符合條件的所有記錄自動以WITH後麵表達式的值替換相應字段的內容。

說明:

(1)缺省指當前記錄。

(2)各表達式的類型必須與相應的字段相匹配。

(3)如對索引關鍵字段進行更新,打開的索引文件會隨之更新。

(4)對數值型的表達式來說,整數部分位數大於字段的整數位數,係統有出錯信息處理。

功能:在數據庫中間的指定位置上插入一條記錄。

說明:

(1)默認值在當前記錄的後麵插入一條記錄。

(2)選擇BLANK則不進入全屏幕輸入方式,而是自動插入一個空白記錄。

(3)選擇BEFORE則把新記錄插在當前記錄的前麵。

(4)當索引文件打開的情況下,INSERT命令和APPEND命令相同,均添加在最後一條記錄上,因為索引文件的位置是根據關鍵字段的要求排列的。

(5)插入新記錄後數據庫中後麵的記錄號增加1。

2.2.5過濾數據庫記錄

命令格式:SETFILTERTO

功能:對當前使用的數據庫過濾,符合的記錄進行操作,不符合條件的記錄被“隱含”起來不參加操作。

說明:

(1)過濾時當前數據庫指針指向的記錄,不管是否符合條件表達式,將不參加過濾。為此,在執行過濾命令之後,再執行GOTOP和GOBOTTOM兩條命令。

(2)不帶的SETFILTERTO命令是取消這條命令設置的條件。正如USE命令一樣,後麵不跟數據庫名則是關閉當前工作區上打開的數據庫。

(3)過濾僅對當前工作區有效。