正文 第五章 數據庫基礎與操作(二)(1 / 3)

5.4管理數據庫

數據庫建好後,要經常進行增、刪、改記錄等維護操作,有時還需取其部分內容生成另一個數據庫。本節介紹查找顯示指定記錄,記錄增刪改以及複製數據庫的操作和命令。

一、記錄定位

係統按輸入記錄的順序自動給記錄加上順序號l、2、3…等,以方便查找定位,同時也是記錄存儲的物理順序。打開數據庫時,有一個無形的“記錄指針”指向l號記錄,稱為當前記錄,它是記錄操作命令的當前操作對象。將記錄指針指向其它記錄,使之成為當前記錄,可用記錄定位命令。

指向從當前記錄開始的第n個記錄(n在當前數據庫的記錄範圍內)

其中G0命令是根據記錄號絕對移動指針命令;SKIP是以當前記錄號為基準相對移動指針命令。記錄定位也可激活Record下拉菜單中的Got0項,從Got0對話樞中單擊TOP、BoTroM;或單擊RECORD、SKIP,並輸入記錄號n或跳過的記錄數n,再單擊GOT0按鈕定位。此後,執行DISPLAY命令,窗口將顯示出當前記錄的內容。

二、顯示記錄

1.查找記錄

先查找滿足條件的記錄,再用顯示命令顯示其內容。例如要查找一車間主任的情況,就是查找:部門車間,同時崗位=主任的記錄。可以激活Record下拉菜單中的Locate項,按對話框的提示,選擇查找的範圍Scope及查找的條件Expression Builder進行查找。或用鍵盤方式,從命令窗口輸入下述命令:

如找到,在狀態條左端顯示記錄號,找不到顯示“Endof Locate Scope”。輸入顯示記錄命令display可在主窗口顯示查到的記錄。

鼠標方式查找記錄操作步驟如下:

(1)選Record下拉菜單的Locate項,引出Locate對話框。

(2)單擊Scope按鈕,從引出的Scope對話框中選An,單擊OK,返回。

(3)單擊FOR按鈕,引出構造查詢條件表達式的Expression Build對話框。可以直接在查詢條件表達式框中輸入查詢條件,但用對話框提供的工具更方便。

(4)從Fields列表框中雙擊字段名BM,它以za.bm的形式出現在表達式中。

(5)單擊Logical下拉列表框,從其下拉列表中選“=”號(如果構成表達式需數學函數可單擊Match;需字符串函數單擊Strin9;需日期函數單擊Date;再從它們的下拉列表中選擇所需函數即可)。

(6)輸入字符串“一車間”。

(7)從Logical下拉列表中選AND。

(8)從Fields列表框中雙擊GW。

(9)從Logical下拉列表中選“=”號。

(10)輸入字符串“主任”,單擊0K,返回locate對話框。

(11)單擊Locate按鈕,開始查找。

是否查到的信息顯示於狀態條,可以看到此時狀態條顯示“ZGDARecord。I/7”,即找到了,1號記錄是滿足查找條件的記錄。

2.FoxPr0的命令

以上已使用了不少FoxPr0的命令,現歸納一下FoxPr0命令的一般格式:

命令動詞[範圍][FOR/WHILE

][FIELDS字段名列表]

其中:命令動詞表達操作內容,允許隻寫前四個字母;範圍項指定操作的記錄範圍,有四種選擇:ATJT一全部記錄(可省略不寫);RECORDn——第n號記錄;REsT一從當前記錄開始到最後一條記錄;NEXTn一從當前記錄開始的n條記錄。條件項是邏輯表達式,限定滿足條件的記錄為操作的對象。字段名列表列出的字段才被操作。命令中的命令動詞必須寫在最前麵,其後的範圍、條件、字段名列表之間均用空格隔開,但先後順序不限(例如先寫條件後寫範圍),字段名列表中字段名用“,”號分開,命令中帶方括號的參數為可選項。例如:

LOCATEALLFORXM=“王鋼”(查找王鋼的記錄):

LOCATEFORBM=“一車間”ANDGWGZ]

例:複製ZGDA.DBF中的部門、姓名、基本工資、崗位工資字段構成一個工資數據庫GZ.DBF的結構。

2.複製數據庫部分內容

為了從ZGDF.DBF中取出工資情況,生成一個工資數據庫GZ.DBF,以便打印工資表。

5.5記錄排序與索引

查詢數據庫中的數據是常用的操作。為了加快查詢速度,FoxPr0提供了排序和索引命令,重新組織庫文件,使其記錄按某個或某些字段值的大小順序排列。

一、排序

1.簡單排序

將數據庫按某個字段的值按升序或降序排序,重新調整各個記錄的物理存儲順序,生成一個新的庫文件的過程,稱為簡單排序。例如:將ZGDA.DBF按年齡由大至小排序,生成一個排序後的庫文件ZGDAPX1.DBF,操作步驟如下:

(1)打開ZGDA.DBF數據庫。

(2)選Database下拉菜單的Sort命令。

(3)選取FieldOptions中的Ascendin9單選按鈕,意為按升序排序(日期早的在前,即年齡大的在前)。

(4)選取AllFields列表框中的csrq,單擊Move按鈕,使之出現在Sort Order框中,表示esrq是排序的關鍵字段,它前麵有一個“十”箭頭,即按升序排序。

(5)單擊Input框中的Scope按鈕引出一個對話框,單擊其中An按鈕,即全部記錄參加排序。

(6)單擊0utput框中的SaveAs按鈕,在引出的對話框中輸入排序庫文件名ZGDAPXl.DBF,單擊Save,返回。

(7)再回到Sort對話框,此時對話框,單擊OK按鈕,係統將記錄按CSRQ排序後存入ZGDAIPX1.DBF。

(8)打開ZGDAPX1.DBF選取Database下拉菜單的Browse項,屏幕將顯示排序後庫文件的內容。

說明: