第3章數據庫的基本操作_第1頁
第3章數據庫的基本操作_第2頁
第3章數據庫的基本操作_第3頁
第3章數據庫的基本操作_第4頁
第3章數據庫的基本操作_第5頁
已閱讀5頁,還剩53頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、第第第第第第3 3 3章數據庫的基本操作章數據庫的基本操作章數據庫的基本操作章數據庫的基本操作章數據庫的基本操作章數據庫的基本操作 學習要點學習要點1、建立項目管理器、認識項目管理器;2、建立數據庫和表的基本方法;3、表結構的基本處理方法;4、記錄的基本處理方法。第第第第第第3 3 3章數據庫的基本操作章數據庫的基本操作章數據庫的基本操作章數據庫的基本操作章數據庫的基本操作章數據庫的基本操作 3.1 建立項目管理器建立項目管理器 3.2 數據庫設計方法數據庫設計方法 3.3 數據庫的建立與維護數據庫的建立與維護 3.4 建立數據表建立數據表 3.5 記錄基本處理方法記錄基本處理方法 小結小結

2、返返 回回退退退退退退 出出出出出出3.6 數組與表的字段之間的相互數據傳遞數組與表的字段之間的相互數據傳遞 3.1 3.1 3.1 建立項目管理器建立項目管理器建立項目管理器建立項目管理器建立項目管理器建立項目管理器 3.1.1 項目管理器項目管理器 3.1.2 用項目管理器構造可執行文件用項目管理器構造可執行文件 3.1.3 添加文件到一個項目添加文件到一個項目 3.1.4 生成應用程序生成應用程序 返返 回回退退退退退退 出出出出出出3.1.1 3.1.1 3.1.1 項目管理器項目管理器項目管理器項目管理器項目管理器項目管理器 項目管理器項目管理器是VFP應用程序開發過程中所有對象與數

3、據的“控制中心(Control Center)” 項目管理器的創建方法 :1、利用VFP系統菜單上的【文件】中的【新建】菜單項進行創建,并且可以使用創建項目管理器的向導。2、在VFP的命令窗口中通過輸入命令來創建項目管理器。方法一:方法一:利用菜單創建項目Gxglxt。格式一: CREATE PROJECT 方法二:方法二:利用命令創建項目管理器 :參數描述:參數描述:指定項目的文件名。如果沒有為文件指定擴展名,則VFP自動指定.PJX為擴展名。 :打開“創建”對話框,提示為正在創建的項目文件命名。項目管理器項目管理器項目管理器項目管理器項目管理器項目管理器【新建】:創建新文件命令按鈕。【修改

4、】:修改項目管理器中存在的文件。【添加】:添加已存在的文件到項目管理器。【運行】或【打開】或【關閉】或【瀏覽】:運行“文檔”、“代碼”和“其它”選項卡中文件,打開、關閉數據選項卡中的數據庫、表等,關閉(或稱為折疊)項目文件中某一展開的選項卡顯示。【移去】:將所選擇的文件移出項目文件或從磁盤上刪除。【連編】:建立應用程序(.APP)或可執行(.EXE)程序。 折疊或展開項目管理器。項目管理器項目管理器項目管理器項目管理器項目管理器項目管理器全部選項卡單擊折疊或展開按鈕將項目管理器折疊 。從項目管理器中拖下后的“全部”選項卡。從項目管理器中拖下后的“其它”選項卡。從項目管理器中拖下后的“代碼”選項

5、卡。從項目管理器中拖下后的“數據”選項卡。從項目管理器中拖下后的“文檔”選項卡。從項目管理器中拖下后的“類”選項卡。返返返返返返 回回回回回回3.1.2 3.1.2 3.1.2 用項目管理器構造可執行文件用項目管理器構造可執行文件用項目管理器構造可執行文件用項目管理器構造可執行文件用項目管理器構造可執行文件用項目管理器構造可執行文件 構造一個應用程序應注意以下問題: 1、首先應設置起始點 應用程序都應該有一個主文件作為其執行的起始點,它可以是包含在一個項目中的任何程序、表單或查詢文件,然后從【項目】菜單中選擇【設置主文件】來建立應用程序的起始點。在項目中,只有一個文件能設置成為主文件建立一個主

6、程序的一般步驟如下:安裝應用程序的環境確定初始用戶界面建立事件循環(Event loop)當應用程序退出時恢復環境。【例3-1】主程序示例:DO Setup &安裝環境DO MainMenu.mpr &調用主菜單顯示初始用戶界面READ EVENTS &建立事件循環DO cleanup &恢復環境注意:在MainMenu.mpr中應加一個退出菜單項,以便發出CLEAR EVENTS命令防止死循環。 2、安裝應用程序環境在安裝應用程序環境時應注意,在安裝源程序中,應先將初始環境存貯起來,然后啟動一個應用程序特定的環境,它包括初始化變量、建立默認路徑、引用外部庫(E

7、xternal library)和過程(procedure)文件等。3 、顯示初始界面初始用戶界面可以是一個開始屏幕、菜單欄、表單或者任何其它組件。可以在主程序中通過使用DO命令去運行一個菜單,或者通過DO FORM去運行一個表單,或者通過設置一個表單為主程序來初始化用戶界面。4、控制事件循環一旦環境安裝并且已經顯示初始界面后,應該準備建立一個事件循環去等待用戶交互。控制事件循環的方法是:發出READ EVENTS命令啟動處理事件;發出CLEAR EVENTS命令去停止處理事件。 5、恢復原始環境為了恢復存貯變量的原始值,可用宏替換它們進原始SET命令。例如,如果已在安裝應用程序環境時已存貯S

8、ET TALK設置的內容進入了CtalkVal變量:CtalkVal=SET (“Talk”)如果在使用中改變了“TALK”的設置,當要恢復其初始設置時,則在恢復原始環境時可以用下一條命令去恢復: SET TALK &CtalkVal 返返返返返返 回回回回回回3.1.3 3.1.3 3.1.3 添加文件到一個項目添加文件到一個項目添加文件到一個項目添加文件到一個項目添加文件到一個項目添加文件到一個項目一旦建立了應用程序的框架后,便可以準備將其它文件添加到項目中 。添加文件到項目中一個好的方法是去連編此項目。 為添加一個文件到項目管理器中,也可以先在項目管理器中選擇要添加的文件類別,在

9、單擊項目管理器中的【添加】按鈕。 若要連編 項目,可在項目管理器中設置主文件后再選擇【連編】。 當向項目中添加組件時,應該重復項目的連編和運行。如果沒有在“連編選項”對話框中的“操作”選項組中選擇“重新編譯所有文件”,那么,在連編時只編譯自上次連編以后修改過的文件。 連編選項對話框返返返返返返 回回回回回回3.1.4 3.1.4 3.1.4 生成應用程序生成應用程序生成應用程序生成應用程序生成應用程序生成應用程序 要從項目管理器創建一個最終的文件,需要把它連編為一個應用程序文件或可執行文件。連編應用程序步驟:連編應用程序步驟:第1步:設置主文件;第2步:在“項目管理器”中選擇【連編】按鈕;第3

10、步:在彈出的“連編選項”對話框中的“操作”選項組中選中“連編應用程序”單選項;第4步:單擊【確定】。連編可執行文件步驟:連編可執行文件步驟:第1步:設置主文件;第2步:在“項目管理器”中選擇【連編】按鈕;第3步:在彈出的“連編選項”對話框中的“操作”選項組中選中 “連編可執行程序”單選框;第4步:單擊【確定】。返返返返返返 回回回回回回3.2 3.2 3.2 數據庫設計方法數據庫設計方法數據庫設計方法數據庫設計方法數據庫設計方法數據庫設計方法 3.2.1 數據庫設計步驟數據庫設計步驟 3.2.2 數據需求分析數據需求分析 3.2.3 數據庫表確定數據庫表確定 3.2.4 數據庫表字段確定數據庫

11、表字段確定 返返 回回退退退退退退 出出出出出出3.2.5 數據庫表間關系設定數據庫表間關系設定 3.2.6 設計求精設計求精 3.2.1 3.2.1 3.2.1 數據庫設計步驟數據庫設計步驟數據庫設計步驟數據庫設計步驟數據庫設計步驟數據庫設計步驟 數據庫設計步驟:第1步:確定建立數據庫的目的,這有助于確定需要VFP保存哪些信息;第2步:確定需要的表;在明確了建立數據庫的目的之后,就可以著手把信息分成獨立的主題,例如“Student”(學生情況)或“Grade”(學生成績)等。每個主題都可以是數據庫中的一個表。第3步:確定所需字段;確定在每個表中保存哪些信息。在表中,每類信息稱為一個字段,瀏覽

12、表時在表中顯示為一列。例如,在Student表中,可以有這樣的字段:“學號”、“姓名”、“性別”等。第4步:確定關系;分析每個表,確定一個表中的數據和其它表中的數據有何關系。必要時,可以在表中加入字段或創建一個新表來明確關系。第5步:設計求精。對設計進一步分析,查找其中的錯誤。創建表時,在表中加入幾個示例記錄,看能否從表中得到所想要的結果。 返返返返返返 回回回回回回3.2.2 3.2.2 3.2.2 數據需求分析數據需求分析數據需求分析數據需求分析數據需求分析數據需求分析 這一步是建立數據庫的關鍵,也就是說必須清楚地了解最終的需求是什么?有一些什么樣的信息要保存?以后需要如何對數據進行處理?

13、等等 建立建立Gxglxt數據庫需求分析數據庫需求分析首先列出需數據庫回答的問題清單。如:本學期每個人每門課的期末考試成績是多少?有哪些人的哪些課程不及格?哪些學生的學業成績達到了獲獎學金的標準?哪些學生在考試中哪門課程舞弊了?等等。其次收集所有的表單和報表。這些表單和報表包含了應該由數據庫提供的各種信息。如期末考試成績需要錄入哪些信息等。最后,期末考試成績冊如何打印等等。 返返返返返返 回回回回回回3.2.3 3.2.3 3.2.3 數據庫表確定數據庫表確定數據庫表確定數據庫表確定數據庫表確定數據庫表確定 確定數據庫表是數據庫設計過程中技巧性最強的一步。應注意以下幾個方面的問題:應注意以下幾

14、個方面的問題: 一個表只保存一個主題的內容;同一信息只保存一次,這將減少出錯的可能性; 防止刪除有用信息。以建立以建立Gxglxt數據庫中的表為例:數據庫中的表為例:在學習成績表中,每位學生所學的課程不屬于一位學生,因而需要有一個學習課程表。同樣,一個班級不只一名學生,要有一個班級主題的表等。Student表和Grade表都與學生有關,但關于學生個人情況的信息保存在Student表中,Grade表中只保存與成績有關的信息。當一個班的學生畢業后,可能要刪除這個班級,但不能刪除這個專業,最好的方法是建立一個“專業(Specialty)”表。返返返返返返 回回回回回回3.2.4 3.2.4 3.2.

15、4 數據庫表字段確定數據庫表字段確定數據庫表字段確定數據庫表字段確定數據庫表字段確定數據庫表字段確定 確定表字段的幾點技巧:確定表字段的幾點技巧:每個字段直接和表的主題相關 ;不要包含可推導得到或通過計算可以得到的字段 ;收集所需的全部信息 ;以最小的邏輯單位存儲信息。 使用主關鍵字段使用主關鍵字段 VFP不允許在主關鍵字中有重復值或null值。因此,不能選擇包含有這類值的字段作為主關鍵字。 因為要用主關鍵字的值來查找記錄,所以它不能太長,以方便記憶和鍵入。主關鍵字可由一定長度的字母和數字組成,或是某一范圍內的值。 主關鍵字的長度直接影響數據庫的操作速度,因此,在創建主關鍵字時,該字段值最好使

16、用能滿足存儲要求的最小長度。 返返返返返返 回回回回回回3.2.5 3.2.5 3.2.5 數據庫表間關系設定數據庫表間關系設定數據庫表間關系設定數據庫表間關系設定數據庫表間關系設定數據庫表間關系設定 VFP是一個關系型數據庫管理系統。在每個不同的表中存儲的數據之間有一定的關系。通過在這些表之間定義關系后,可以利用這些關系來查找數據庫中有關的信息。 表之間有三種關系:即一對一關系、一對多關系和多對多關系一對一關系、一對多關系和多對多關系 在一對一關系中 如果兩個表有相同的主題,可在兩個表中使用同樣的主關鍵字字段,并以此建立一對一關系。如果兩個表有不同的主題及不同的主關鍵字,選擇一個表(任意哪個

17、表)把它的主關鍵字放到另一個表中作為外部關鍵字。 在一對多關系中要建立這樣的關系,就要把關系中“一方”的主關鍵字字段添加到“多方”的表中。在關系中,“一方”用主關鍵字或候選索引關鍵字,而“多方”使用普通索引關鍵字。 在多對多關系中向VFP正確指定關系之前,需要改變數據庫的設計,即創建第三個表,把多對多關系分解為二個一對多關系。這第三個表稱作“紐帶表”,紐帶表可能只包含這兩個表的主關鍵字,也可能包含其它信息。 返返返返返返 回回回回回回3.2.6 3.2.6 3.2.6 設計求精設計求精設計求精設計求精設計求精設計求精 對所設計的表分析,查找是否存在如下問題:對所設計的表分析,查找是否存在如下問

18、題:表中是否帶有大量的并不屬于這個主題的字段? 表中是否有些字段由于對很多記錄不適用而始終保持空白? 是否有大量的表包含了同樣的字段? 是否遺忘了字段?是否有需要的信息沒包括進去?如果有,它們是否屬于已創建的表?如果不包含在已創建的表中,那就需要另外創建一個表。 是否為每個表選擇了合適的主關鍵字?在使用這個主關鍵字查找具體記錄時,它是否很容易記憶和鍵入? 是否有字段很多、記錄卻很少的表,而且許多記錄中的字段值為空? 查找到存在的問題后,就要修改表的結構,以改進設計方案。 返返返返返返 回回回回回回3.3 3.3 3.3 數據庫的建立與維護數據庫的建立與維護數據庫的建立與維護數據庫的建立與維護數

19、據庫的建立與維護數據庫的建立與維護3.3.1 數據字典的作用數據字典的作用 3.3.2 將表加入到數據庫將表加入到數據庫 返返 回回退退退退退退 出出出出出出3.3.1 3.3.1 3.3.1 數據字典的作用數據字典的作用數據字典的作用數據字典的作用數據字典的作用數據字典的作用 主關鍵字和候選索引關鍵字。數據庫中表間的永久關系。長表名和長字段名。各字段的標題,日后它們作為標題頭顯示在“瀏覽”窗口和表格中。字段的默認值。表單中使用的默認控件類。字段的輸入掩碼和顯示格式。字段級規則和記錄級規則。觸發器。存儲過程。與遠程數據源的連接。本地視圖與遠程視圖。對每個字段、表和數據庫的注釋。返返返返返返 回

20、回回回回回3.3.2 3.3.2 3.3.2 將表加入到數據庫將表加入到數據庫將表加入到數據庫將表加入到數據庫將表加入到數據庫將表加入到數據庫 1、創建數據庫、創建數據庫 2、將表加入到數據庫、將表加入到數據庫 要將一個或多個表加入到數據庫中時,可以在“項目管理器”中選擇“數據數據”選項卡,再從列表中選擇“數據庫數據庫”項下的“表表”,最后選擇【添加】按鈕。要添加的表必須具備下列條件:要添加的表必須具備下列條件:該表是一個有效的.DBF文件;除非為表指定一個唯一的長文件名,否則表不允許與打開的數據庫中已有的表同名。表不能同時放在另一個數據庫中。要加入表的數據庫必須具備下列條件:要加入表的數據庫

21、必須具備下列條件:必須以獨占方式打開。要想獨占地打開一個數據庫,在使用OPEN DATABASE命令時加入EXCLUSIVE子句;不包含在事務中。 返返返返返返 回回回回回回3.4 3.4 3.4 建立數據表建立數據表建立數據表建立數據表建立數據表建立數據表 3.4.1 建立表前的準備建立表前的準備 3.4.2 建立表基本結構建立表基本結構 3.4.3表結構的基本處理方法表結構的基本處理方法 返返 回回退退退退退退 出出出出出出3.4.1 3.4.1 3.4.1 建立表前的準備建立表前的準備建立表前的準備建立表前的準備建立表前的準備建立表前的準備 在建立表結構以前,首先應該根據用戶的需求,明確

22、所要創建的表中應該包含哪些字段,每個字段的名稱、類型和寬度。創建Gxglxt中的Student(學生情況)表基本情況應包括:學號、姓名、性別、出生日期、班級、電話等內容 。結構如下:表中項目名 字段名稱 字段類型 字段寬度 小數位 學號 學號 C 9 姓名 姓名 C 8 性別 性別 C 2 出生日期 出生日期 D 8 班級 班級 C 10 宿舍 宿舍 C 5 電話 電話 C 8 說明 說明 M 4 返返返返返返 回回回回回回3.4.2 3.4.2 3.4.2 建立表基本結構建立表基本結構建立表基本結構建立表基本結構建立表基本結構建立表基本結構 使用命令建立表結構:使用命令建立表結構:格式:格式

23、: CREATE 功能:建立一個表文件。說明:輸入命令后,按Enter鍵,屏幕上會出現“表設計器”對話框,利用該對話框即可建立表的結構。參數描述:指定要創建的表的名稱。說明:輸入命令后,按Enter鍵,屏幕上會出現“表設計器”對話框,利用該對話框即可建立表的結構。建立表結構是指原來磁盤上沒有這個表文件,通過CREATE命令的執行,在磁盤上建立起一個新的表文件,若定義了備注型字段,則同時建立了一個.FPT為擴展名的表備注文件。若在文件名前指定了驅動器標識符,則文件建立在指定的驅動器上,否則建立在當前驅動器上。不指定文件擴展名時,缺省擴展名為.DBF。若磁盤上存在這個文件或文件重名,系統顯示一個警

24、告對話框,提示是否要改寫表。如果需要改寫,則選擇【是】,否則選擇【否】。不要用A-J單個字母作為表文件名,因為他們是專門用于工作區別名的。 使用命令創建Student.dbf示例:使用菜單創建表在VFP的系統菜單上單擊【文件】|【新建】菜單項便可打開“新建”對話框(也可以利用鍵盤操作:先按Alt+F組合鍵,再按Ctrl+ N鍵,也可以直接按Ctrl+N鍵)。在“新建”對話框中,選擇“表”單選項,然后再單擊【新建文件】按鈕進入到的“打開”對話框。在這個對話框中首先是(關鍵也是)選擇一個表,或為表新取一個文件名,然后按【保存】按鈕, VFP會進入“表設計器”。進入表設計器后的操作與上相同。 使用菜

25、單創建表示例使用項目管理器創建表結構 在項目管理器的“數據”選項卡中選擇“表”,然后單擊【新建】|【新建表】按鈕。在出現的“創建”對話框中輸入所要創建的表的文件名,并選擇存儲路徑,然后選擇【保存】,將打開表設計器。 使用項目管理器創建表結構示例顯示格式:指定字段值顯示時的格式。顯示輸入掩碼:指定字段值在輸入時的格式。顯示標題:指定字段名在顯示時所用的字符串。字段有效規則:指定字段在進行結構修改時應該滿足的條件。字段有效性信息:指定字段在結構修改時提示字段級規則的信息。字段有效性默認值:為字段指定默認值。記錄有效性規則:指定在輸入記錄時所輸入的數據應滿足的條件。記錄有效性信息:當輸入的數據不滿足

26、條件而又試圖將數據保存時所出現的提示信息。返返返返返返 回回回回回回3.4.3 3.4.3 3.4.3 表結構的基本處理方法表結構的基本處理方法表結構的基本處理方法表結構的基本處理方法表結構的基本處理方法表結構的基本處理方法 功能:顯示當前表結構的有關信息。包括表文件名、記錄個數、最后一次修改日期、各字段的字段號、字段名、類型、寬度和小數位,一條記錄的字節總數。參數說明:TO PRINTER子句表示將操作結果送到打印機。后面可以接PROMPT參數,這一參數的在執行打印命令之前,先打開“打印設置”對話框,用以對打印機有關參數(如紙張大小、打印范圍等)進行設置。PROMPT參數只能緊接TO PRI

27、NTER命令。TO FILE子句表示將操作結果輸出到指定的磁盤文件中。 1、顯示表結構格式一:格式一:LIST STRUCTURE TO PRINTERPROMPT /TO FILE格式二:格式二: DISPLAY STRUCTURE TO PRINTERPROMPT /TO FILELIST STRUCTURE和DISPLAY STRUCTURE命令的區別DISPLAY STRUCTURE在每顯示一屏信息后暫停,等待用戶按任意一鍵后繼續顯示;LIST STRUCTURE顯示信息時沒有周期性暫停,而是連續向下顯示,直到顯示完畢。 顯示Student表的結構USE StudentLIST STR

28、UCTURE 執行上面的命令后,屏幕顯示如下: 2、 修改表文件的結構修改表文件的結構格式:MODIFY STRUCTURE功能:顯示表設計器,修改當前表文件的結構。說明:如果沒有在當前選定工件區打開表,則顯示“打開”對話框,允許用戶從中選擇一個要修改的表。對表結構的更改包括:添加和刪除字段;修改字段名稱、大小和數據類型;添加、刪除或修改索引標識,以及指定是否支持NULL值等。(1)、刪除字段 第一步:將光標移到要刪字段的任一位置或單擊該字段的任意位置;第二步:按Ctrl+D刪除該字段或單擊【刪除】命令按鈕;第三步:按Ctrl+W或單擊【確定】按鈕存盤,返回命令窗口。 說明:若刪除了某些字段,

29、對應字段的內容也丟失。 (2)、插入新字段 第一步:將光標移到要插入字段的下一行的任一位置或單擊要插入字段的下一字段;第二步:按Ctrl+I或單擊【插入】按鈕,便可插入一個新的空字段,在空字段的位置上可以填入新字段名稱、類型、寬度及小數位。第三步:按Ctrl+W或單擊【確定】按鈕存盤,返回命令窗口。 (3)、修改字段名、寬度、類型和小數位 將光標移到要修改處直接進行修改。一個字段有四個結構參數項,每次只能修改其中的一項。如果需要修改其中的多項,為了不丟失數據,應分為多次進行修改,每次修改存盤后繼續修改,直到結束。修改字段類型時,可能造成數據丟失。無論進行何種修改,退出MODIFY STRUCT

30、URE命令的方法與退出CREATE命令環境的方法相同。 3、復制表結構 格式:格式:COPY STRUCTURE TO FIELDS 功能:將當前打開的表文件結構的部分或全部復制為所指定的一個表的結構。 參數描述:指定生成新表結構的表文件名。FIELDS :指定在新表中包含的字段及順序。說明:復制生成的表文件中的結構部分包含哪些字段,以及字段先后順序都由FIELDS 所規定。若省略該子句,則按字段原來的順序復制全部字段。 4、建立表結構的其它方法 (1)生成表結構文件 格式:格式:COPY STRUCTURE TO EXTENDED 功能:它將當前表的結構復制生成一個特殊的表文件,即表結構伸展

31、文件。將Student的結構復制生成一個表結構文件studstr,然后用顯示其結構 USE StudentCOPY STRUCTURE TO studstr EXTENDEDUSE studstrLIST STRUCTURE (2)將表結構文件還原成表結構 格式:格式:CREATE FROM 功能:將表結構文件還原成為普通表文件。新建的表文件是一個只有結構部分而沒有記錄的表結構框架。將上例中的studstr表結構文件還原生成一個新的表文件Student1CREATE Student1 FROM studstrUSE Student1LIST STRUCTURE 返返返返返返 回回回回回回3.5

32、 3.5 3.5 記錄基本處理方法記錄基本處理方法記錄基本處理方法記錄基本處理方法記錄基本處理方法記錄基本處理方法 3.5.1 表的打開與關閉表的打開與關閉 返返 回回退退退退退退 出出出出出出3.5.2 錄入記錄錄入記錄 3.5.3 記錄指針定位記錄指針定位 3.5.4 在表中插入記錄在表中插入記錄 3.5.5 顯示表中的記錄顯示表中的記錄 3.5.6 修改表中的記錄修改表中的記錄 3.5.7 刪除記錄刪除記錄 3.5.1 3.5.1 3.5.1 表的打開與關閉表的打開與關閉表的打開與關閉表的打開與關閉表的打開與關閉表的打開與關閉 使用任何一個表以前,都必須首先打開表。 格式:格式:USE

33、EXCLUSIVE SHARED功能:功能:打開指定的表文件。參數描述:參數描述:指定要打開的表的名稱。EXCLUSIVE:在網絡上以獨占的方式打開表。SHARED:在網絡上以共享的方式打開表。打開表時若表含有備注型字段,則FPT文件也同時被打開。每個表被打開時均賦于一個別名。若省略ALIAS,則其別名與主文件名相同。若不選擇任何參數,表示關閉當前工作區中已打開的表。在任一時刻,每個工作區最多允許打開一個表。如果指定工作區已有表打開,在打開新的表時,系統總是先自動關閉原來打打開的表。打開表時,記錄指針指向第一條記錄。 3.5.2 3.5.2 3.5.2 錄入記錄錄入記錄錄入記錄錄入記錄錄入記錄

34、錄入記錄 表的數據錄入有多種方法:第一種方法是在表結構建立時錄入數據;第二種方法是在表結構建成并存盤關閉了“表設計器”之后,利用命令向表中追加記錄。 格式:格式:APPEND BLANK 參數描述:BLANK:在當前表的末尾添加一條空記錄。 功能:在表的末尾添加一個或多個新記錄。說明:可以在只有表結構而沒有記錄的空表中添加記錄,也可以在已經錄入數據的表中的尾部追加記錄;它可以向當前表的尾部追加一條或多條新記錄。省略可選項,返返返返返返 回回回回回回則在當前表的尾部追加任意新記錄,追加記錄的方法及操作與用CREATE命令建立表時輸入數據的方法相同;當發出APPEND或APPEND BLANK命令

35、,并且在選定工作區中沒有打開的表時,將顯示一個“打開”對話框,我們可以在對話框中選擇一個要添加記錄的表。APPEND命令打開一個編輯窗口,我們可以在其中輸入一個或多個新記錄。增加新記錄后,VFP將自動修改打開的所有索引。打開瀏覽窗口后通過追加方式添加記錄方法:在項目管理器中選定一個要添加記錄的表,然后單擊【瀏覽】,然后在系統菜單中選擇【顯示】|【追加方式】。添加記錄的數據學號 姓名 性別 出 生 日 班級 宿舍 電話 說明 99041001 李娟 女 10/17/8 99 電子 4-201 2356122 9904王堅 男 04/21/8 99 機械 3-305 2356300 9804謝少文

36、 男 02/23/8 98 電子 3-304 2356404 9805歐陽南 女 02/07/8 98 計算機 4-411 2356188 9906李磊 男 10/04/8 99 英語 2-222 2356234 9904王向陽 男 03/29/8 99 機械 3-310 2356333 返返返返返返 回回回回回回3.5.3 3.5.3 3.5.3 記錄指針定位記錄指針定位記錄指針定位記錄指針定位記錄指針定位記錄指針定位 記錄定位就是將記錄指針移到指定的記錄上,記錄指針指向的記錄稱為當前記錄。VFP提供了下列絕對定位和相對定位兩類命令。1、記錄指針的絕對定位 格式一格式一:GOTO RECOR

37、D /TOP/BOTTOM 格式二:格式二:GO RECORD /TOP/BOTTOM格式三:格式三: 功能:將記錄指針直接定位到指定的記錄上。參數描述:指定一個物理記錄號,記錄指針移至該記錄上。TOP:將記錄指針定位在表的第一個記錄上。 BOTTOM:將記錄指針定位在表的最后一個記錄上。說明: RECORD可省略。的值必須大于0,且不大于當前表文件的記錄個數。2、記錄指針的相對定位 相對定位與當前記錄有關,它是把記錄指針從當前位置作相對移動。 格式格式:SKIP 功能:將記錄指針向前或向后作相對若干條記錄的移動。參數描述:指定記錄指針作相對移動的記錄數據。說明:1、移動的記錄數等于的值,其值

38、為正數時,記錄指針向下移動,當是負數時,記錄指針向上移動。2、省略選擇項,約定為向下移動一條記錄,即SKIP 等價于SKIP 1。 返返返返返返 回回回回回回3.5.4 3.5.4 3.5.4 在表中插入記錄在表中插入記錄在表中插入記錄在表中插入記錄在表中插入記錄在表中插入記錄 1 1、INSRETINSRET命令命令 格式格式:INSERT BLANK BEFORE 功能:在當前記錄之前或之后插入一條或多條新記錄。參數描述:選擇BEFORE子句,新記錄插在當前記錄之前,當前記錄和其后的記錄向后順序移動;否則插在當前記錄之后,當前記錄之后的記錄順序向后移動。選擇BLANK子句,則插入一條空記錄

39、。 說明:1、省略所有可選項,則在當前記錄之后插入新記錄。2、在VFP中,如果數據庫具有表緩沖或行緩沖功能,則INSERT命令不能用于該數據庫的表;對于具有參照完整性規則的表也不能使用INSERT命令 。2 2、INSERTINSERTSQLSQL命令命令 格式一:格式一:INSERT INTO ( ,) VALUES (,)格式二:格式二:INSERT INTO FROM ARRAY / FROM MEMVAR 功能:功能:在表尾追加一個包含指定字段值的記錄。 參數描述:參數描述:指定要追加記錄的表文件名。中可以包含路徑,也可以是一個名稱表達式。 ( ,):指定要插入值的字段名。VALUES

40、 (,):新插入記錄的字段值。FROM ARRAY :指定一個數組,數組中的數據將被插入到新記錄中。 FROM MEMVAR:把內存變量的內容插入到與它同名的字段中。說明:說明: 1、如果指定的表沒有打開,則VFP先在一個新工作區中以獨占方式打開該表,然后再把新記錄追加到表中,此時并未選定該工作區,選定的仍然是當前的工作區。2、如果省略了VALUES子句后的字段名,那么,必須按照定義表結構時的順序來指定字段值。3、使用FROM ARRAY 子句時,從指定數組的第一個數組元素開始,數組中的每一個元素的內容依次插入到新記錄的對應字段中。第一個數組元素的內容插入到新記錄的第一個字段,第二個元素的內容

41、插入到新記錄的第二個字段,依此類推。4、當使用FROM MEMVAR子句時,如果某一字段不存在同名的內存變量,則該字段為空。使用INSERTSQL命令向Student表中追加一條新記錄 學號姓名性別出生日期班級宿舍電話99045002張中強男03/22/8099電子3-3112356306INSERT INTO Student(學號,姓名,性別,出生日期,班級,宿舍,;電話) VALUES(99045002,張中強,男,1980/03/22,;99電子,3-311,2356306) 3 3、從另一個表中成批追加記錄、從另一個表中成批追加記錄 格式:格式:APPEND FROM /? FIELD

42、S FOR 功能:功能:從一個表中讀入記錄,追加到當前表的尾部。參數描述:參數描述:指定要向當前表中追加記錄的數據源。 :顯示“打開”對話框,從中選擇從哪個表中讀入數據。FIELDS :指定添加哪些字段數據。FOR :為當前選定表中每一條為“真”的記錄追加新記錄,直至達到當前選定表的末尾。如果省略FOR子句,則整個源文件記錄都追加到當前表中。返返返返返返 回回回回回回3.5.5 3.5.5 3.5.5 顯示表中的記錄顯示表中的記錄顯示表中的記錄顯示表中的記錄顯示表中的記錄顯示表中的記錄 格式一:格式一:LIST OFF FIELDS FOR WHILE TO PRINTER PROMPT /

43、TO FILE 格式二:格式二:DISPLAY OFF FIELDS FOR WHILE TO PRINTER PROMPT / TO FILE 功能:功能:顯示當前表中的全部或部分記錄和數據。參數描述:參數描述:OFF:使用OFF時,不顯示記錄號,否則顯示記錄號。:范圍為可選項,選擇時為ALL、RECORD(N)、 NEXT(N)、REST中的一個參數,表示記錄顯示的范圍。FIELDS :若省略,則顯示當前表中的所有字段,否則顯示指定的字段。如果備注字段名出現在中,則它的內容按50個字符列寬顯示, FOR/WHILE:該子句用于有選擇地顯示某些記錄,省略時則顯示限定的全部記錄。 TO PRI

44、NTER PROMPT / TO FILE :指定記錄列表的輸出方向。TO PRINTER PROMPT指定輸出到打印機。PROMPT參數的使用方法同前。TO FILE 指定輸出到所指定的文本文件中。 LIST和DISPLAY的區別:(1)DISPLAY每顯示一屏記錄時暫停一次,按任意鍵后繼續顯示剩余的記錄,而LIST沒有周期性暫停,連續向下顯示,直到記錄顯示完畢為止。(2)若省略所有可選項,則DISPLAY命令顯示當前記錄,即范圍為NEXT 1,而LIST命令顯示全部記錄,即范圍為ALL。 返返返返返返 回回回回回回3.5.6 3.5.6 3.5.6 修改表中的記錄修改表中的記錄修改表中的記

45、錄修改表中的記錄修改表中的記錄修改表中的記錄 1、全屏幕編輯命令(1)利用菜單瀏覽和修改表中的數據 第一步:在項目管理器中選擇【數據】選項卡第二步:在數據庫中選擇一個表第三步:單擊項目管理器中的【瀏覽】按鈕VFP系統打開全屏幕瀏覽窗口第四步:在瀏覽窗口中修改數據記錄標志位當前記錄標志刪除標志位關閉按鈕第五步:修改結束后單擊關閉按鈕關閉瀏覽窗口在瀏覽窗口中可以去除、恢復垂直分隔線,也可以改變字段的顯示寬度。 (2)利用命令瀏覽和修改表中的數據 格式:格式:BROWSE FIELDS LOCK LAST FOR 功能:功能:在屏幕上打開一個瀏覽窗口,在窗口中顯示表的記錄。參數描述:參數描述: Fi

46、elds: 指定在瀏覽窗口中顯示的表的字段。LOCK :將瀏覽窗口一分為二,指定在左窗口中顯示的字段數。LAST:按最后一次關閉瀏覽窗口的方式打開瀏覽窗口。FOR :指定在瀏覽窗口中顯示的記錄所要求滿足的條件。說明:說明:1、BROWSE命令可以帶有很多任選項,命令格式中只介紹了BROWSE命令的最基本的任選項。 2、在中,除了可以使用表所定義的字段以外,還可以使用計算字段。計算字段計算字段:就是由表中的字段組合成的合法的VFP的表達式。注意:注意:計算字段的名稱不能與當前表中的字段名同名,長度不能超過10個字符。計算字段是只讀的,它的值隨著組成計算字段的表中的字段值的變化而變化。計算字段的格

47、式為:計算字段的格式為:= BROWSE FIELDS NAME_BIRTH=姓名+:+性別+:+DTOC(出生日期)+出生 當執行上述命令后屏幕顯示結果在計算字段后面使用在計算字段后面使用:H:H參數,窗口中顯示中文字段名參數,窗口中顯示中文字段名 BROWSE FIELDS NAME_BIRTH=姓名姓名+:+性別性別+:+ ; DTOC(出生日期出生日期)+出生出生:H=姓名和出生日期姓名和出生日期 ,宿舍,電話宿舍,電話執行上述命令后,屏幕顯示結果計算字段指定的中文名計算字段的值指定中文字段名2、記錄值替換命令、記錄值替換命令 格式:格式:REPLACE ADDITIVE , WITH

48、 ADDITIVE FOR WHILE 功能功能:不進入全屏幕編輯方式,根據命令中指定的條件和范圍,用表達式的值去更新指定字段的內容。 參數描述:參數描述: 指定要替換值的字段。WITH :指定用來進行替換的表達式或值。:指定進行替換時的記錄范圍。FOR :指定要進行替換字段值的記錄應滿足的條件。WHILE :當記錄的條件不滿足時結束替換。用以按條件中的字段建立了索引的表。說明:說明:WITH后面的表達式的類型必須與WITH前面的字段類型一致 。返返返返返返 回回回回回回3.5.7 3.5.7 3.5.7 刪除記錄刪除記錄刪除記錄刪除記錄刪除記錄刪除記錄 在VFP中刪除記錄是分為兩步來進行的,

49、第一步是將要刪除的記錄做上刪除標記,第二步才是將記錄真正從表是徹底刪除。1、邏輯刪除(為記錄做上刪除標記) 格式:格式:DELETE FOR WHILE 功能:功能:對當前表文件中指定的記錄做刪除標記。GO 7DELETEGO 4DELETE NEXT 3 LIST執行上述命令后屏幕顯示結果:2、物理刪除(清除帶有刪除標記的記錄) 格式:格式:PACK DBF MEMO 功能:功能:省略選擇項,該命令將從當前表中刪除所有帶刪除標記的記錄。選擇DBF,表示僅清除邏輯刪除的記錄而不壓縮備注文件,選擇MEMO表示僅壓縮備注文件中無用的空間而不清除被邏輯刪除的記錄。不帶任何選擇項時,PACK命令既清除

50、邏輯刪除的記錄,又壓縮備注文件。說明:說明:用PACK命令刪除的記錄是不可被恢復的。所以在使用PACK命令前一定要檢查刪除標記是否加的正確。 例:例:PACKLIST執行上述命令后屏幕顯示的結果:注意:在進行這一步操作前先備份數據3、 恢復帶刪除標記的記錄 格式:格式:RECALL FOR WHILE 功能:功能:恢復當前表中帶刪除標記的記錄,即去掉刪除標記“*”號。當省略所有的選項時,僅恢復當前記錄。(先從備份的數據中恢復Student表中的數據) RECALL ALLBROW執行上述命令后屏幕顯示的結果4、 清除所有記錄 格式:格式:ZAP 功能:功能:從當前表中清除全部記錄,僅保留表的結構。ZAP命令與DELETE ALL 和PACK兩條命令執行的結果相同,區別在于ZAP執行的速度更快,當表中的記錄很多時尤為明顯。 返返返返返返 回回回回回回3.6 3.6 3.6 3.6 3.6 3.6 數組與表的字段之間的相互數據傳遞數組與表的字段之間的相互數據傳遞數組與表的字段之間的相互數據傳遞數組與表的字段之間的相互數據傳遞數組與表的字段之間的相互數據傳遞數組與表的字段之間的相互數據傳遞 1、單條記錄數據賦值給數組元素格式:SCATTER FIELDS /FIELDS LIK

溫馨提示

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

評論

0/150

提交評論