創(chuàng)建數(shù)據(jù)表之間的關(guān)聯(lián)
對于數(shù)據(jù)庫中各相關(guān)數(shù)據(jù)表之間的聯(lián)系必須通過建立關(guān)聯(lián)來實(shí)現(xiàn)。
數(shù)據(jù)表是和關(guān)系相對應(yīng)的,所以數(shù)據(jù)表之間的聯(lián)系也可以分為一對一、一對多和多對多三類。但是在實(shí)際處理時,往往把一個多對多的聯(lián)系分解成兩個一對多的聯(lián)系處理。
1.創(chuàng)建關(guān)聯(lián)
在VFP中,表間的聯(lián)系有“永久性關(guān)聯(lián)” 和“臨時性關(guān)聯(lián)”兩種:臨時性關(guān)聯(lián)只是在使用時臨時建立的表間聯(lián)系,一旦關(guān)閉數(shù)據(jù)表則臨時性關(guān)聯(lián)也就消失了;永久性關(guān)聯(lián)是被存放在數(shù)據(jù)庫中的數(shù)據(jù)表間聯(lián)系,它將隨數(shù)據(jù)庫長期保存,隨著數(shù)據(jù)庫的打開而打開、關(guān)閉而關(guān)閉。
在創(chuàng)建數(shù)據(jù)表之間的關(guān)聯(lián)時,當(dāng)前表叫做父表,要關(guān)聯(lián)的表叫做子表。必須保證兩個要建立關(guān)聯(lián)的數(shù)據(jù)表中存在同名字段;同時要求每個數(shù)據(jù)表事先分別對該字段建立了索引。
www.ExamW.CoM 。1) 建立表間的一對一關(guān)系。首先,要使兩個表都具有同一屬性的字段;其次,定義父表與子表中同名宇段為主索引字段或候選索引字段。由于兩個表中的同一屬性的字段值都是惟一的,因此兩個表之間的關(guān)聯(lián)就是“一對一” 的。
。2) 建立表間的一對多關(guān)系。首先,要使兩個表都具有同一名稱、屬性的字段;其次,定義父表中該字段為主索引字段或候選索引字段(其字段值是惟一的) ,子表中與其同名的字段為普通索引字段。由于兩個表中的同一屬性的字段值是一對多的關(guān)系,因此可以創(chuàng)建兩個表之間的“一對多” 的關(guān)系。
2.調(diào)整或刪除關(guān)聯(lián)
修改主要有兩個方面:
。╨) 刪除關(guān)聯(lián)。在數(shù)據(jù)庫設(shè)計器對話框窗口中,用鼠標(biāo)左鍵單擊關(guān)聯(lián)線,該連線變粗了則說明它已經(jīng)被選中。如果要刪除可敲[Del]鍵,也可以單擊鼠標(biāo)右鍵在彈出對話框窗口中單擊“刪除關(guān)系” 選項。
。2) 編輯關(guān)聯(lián)。在數(shù)據(jù)庫設(shè)計器對話框窗口中,用鼠標(biāo)左鍵單擊關(guān)聯(lián)線,該連線變粗了則說明它已經(jīng)被選中。在主菜單“數(shù)據(jù)庫”選項的下拉菜單中單擊“編輯關(guān)系”選項,也可以單擊鼠標(biāo)右鍵在彈出對話框窗口中單擊“編輯關(guān)系” 選項,這樣將會打開其對話框窗口。
可以在“表” 和“相關(guān)表” 的下拉列表框中重新選擇新的相應(yīng)索引字段。
創(chuàng)建視圖
在數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計中,用戶的局部概念模式是全局概念模式的子集,叫做用戶模式、外模式,它是從用戶的觀點(diǎn)看到的數(shù)據(jù)庫,所以也叫做用戶的視圖。
在 VFP中,視圖是數(shù)據(jù)庫的一個部分,分為本地視圖和遠(yuǎn)程視圖兩類。本地視圖是利用本地數(shù)據(jù)庫表、自由表及其他視圖建立在本地服務(wù)器上的視圖。遠(yuǎn)程視圖是利用遠(yuǎn)程服務(wù)器中的數(shù)據(jù)建立的視圖。視圖也以文件的形式保存在存儲器中,文件擴(kuò)展名為。VUE.視圖是一種特殊類型的數(shù)據(jù)表,它往往由一個或多個表(或視圖) 中的部分字段或部分記錄組成。雖然從用戶的角度看,視圖也像數(shù)據(jù)表一樣有自己的名字,相應(yīng)的字段、記錄,具備了一般數(shù)據(jù)表的特征,可是在實(shí)際存儲器中并沒有這樣的數(shù)據(jù)實(shí)體;在數(shù)據(jù)庫中僅存放了與關(guān)聯(lián)數(shù)據(jù)表相應(yīng)的連接關(guān)系和操作要求。所以該視圖可稱為“虛表” 或邏輯表。一般建立視圖的目的有三個:
、贁(shù)據(jù)庫系統(tǒng)是供多用戶使用的,不同的用戶只能查看與自己相關(guān)的一部分?jǐn)?shù)據(jù),以保障數(shù)據(jù)的安全和完整。視圖可以為每個用戶建立自己的數(shù)據(jù)集合。
②為了保證數(shù)據(jù)表具有較高的范式,往往將一個數(shù)據(jù)集合分解成多個相關(guān)的數(shù)據(jù)表。而在使用多個表的數(shù)據(jù)時,將各表中有用的數(shù)據(jù)集中到一個視圖是最方便的辦法。
③簡化對數(shù)據(jù)庫的操作管理。只要事先將各表中相關(guān)數(shù)據(jù)項集中放在一個視圖中,通過視圖就可以同時更新各表中的數(shù)據(jù)。