




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
2023年12月18日第1頁第4章數據庫的設計與操作4.1數據庫的基本操作4.2設置數據庫4.3數據庫的操作本章小結習題42023年12月18日第2頁本章要點數據庫的建立及基本操作、設置數據庫表、永久關系及參照完整性。創建數據庫,在數據庫中添加、移去表,建立表間關系等。設置數據庫表的屬性,即設置有效性規則、觸發器、參照完整性,設置字段的顯示屬性、字段的輸入默認值等。操作數據庫,即打開/關閉數據庫,維護數據庫。2023年12月18日第3頁VisualFoxPro作為一個關系數據庫管理系統,提供了在多個表文件間定義關系的功能。在VFP中,通過使用數據庫來完成關系功能,并取得其他好處。數據庫是指存儲在外存上的有結構的數據集合。在VFP數據庫中,不存儲數據,而是存儲數據庫表的屬性,以及組織、表關聯和視圖等,并可在其中創建存儲過程。數據庫可以單獨使用,也可以將它們合并成一個項目,用項目管理器進行管理。2023年12月18日第4頁4.1數據庫的基本操作4.1.1數據庫設計的一般步驟(1)分析數據需求。確定數據庫要存儲哪些信息。(2)確定需要的表文件。—旦明確了數據庫所要實現的功能,就可以將必需的信息分解為不同的相關主題,在數據庫中為每個主題建立一個表。(3)確定需要的字段。這實際上就是確定在表中存儲信息的內容,即確立各表的結構。(4)確定各表之間的關系。仔細研究各表字段之間的關系。確定各表之間的數據應該如何進行連接。(5)改進整個設計。可以在各表中加入—些數據作為例子,然后對這些例子進行操作,看是否能得到希望的結果。如果發現設計不完備,可以對設計做一些調整。2023年12月18日第5頁4.1.2創建新數據庫1.命令方式命令格式:CREATEDATABASE<數據庫名>功能:創建一個新的數據庫。【例4-1】用命令方式創建“成績管理”數據庫。CREATEDATABASE成績管理2.菜單操作2023年12月18日第6頁4.1.3在數據庫中加入表和移去表1.在數據庫中創建數據庫表2.向數據庫中添加數據表在VFP中有如下兩種向當前數據庫添加表的方法。(1)使用命令向數據庫添加表命令格式:ADDTABLE<數據表名>功能:向已打開的數據庫中添加指定名字的數據表。【例4-2】向“成績管理”數據庫中添加“xsdb”表。OPENDATABASE成績管理ADDTABLExsdb2023年12月18日第7頁(2)使用“數據庫設計器”向數據庫添加表3.從數據庫中移去表【例4-3】以下語句用于從“成績管理”數據庫中移去“xsdb”表。OPENDATABASE成績管理REMOVETABLExsdb2023年12月18日第8頁4.1.4多表間關聯1.一對一關聯的建立命令格式:SETRELATIONTO[<關鍵字表達式1>/<數值表達式1>INTO<工作區號>/<別名>[,<關鍵字表達式2>/<數值表達式2>INTO<工作區號>/<別名>…][ADDITIVE]]功能:當前工作區中的表文件與其他工作區中的表文件通過關鍵字建立關聯菜單方式:選擇“窗口”菜單下的“數據工作期”命令。2023年12月18日第9頁2.一對多關聯的建立命令格式:SETSKIPTO[<別名1>[,<別名2>]...]功能:將當前表文件與其他工作區中的表文件建立一對多關聯。4.取消表的關聯(1)在建立關聯的命令中,如果不選用ADDITIVE選項,則在建立新關聯的同時,取消了當前表原來建立的關聯。(2)命令SETRELATIONTO,取消當前表與其它表之間的關聯。(3)命令SETRELATIONOFFINTO<別名>|<工作區號>,取消當前表與指定別名表之間的關聯。(4)關閉表文件,關聯都被取消,下次打開時,必須重新建立。2023年12月18日第10頁【例4-5】設有一個單科(計算機成績表jsj.dbf(學號(C,10),上機(N,3),筆試(N,3)),試用jsj.dbf中的成績(上機+筆試)來修改xsdb.dbf中的相應成績(計算機)。相應的命令如下:USExsdbin1USEjsjin2SELECT2INDEXON學號TAG學號SELECT1USExsdbSETRELATIONTO學號INTObREPLALL計算機WITHb->上機+b->筆試2023年12月18日第11頁4.1.5表的連接格式:JOINWITH<工作區號>/<別名>TO<新表文件名>[FIELDS<字段名表>]FOR<連接條件>功能:將不同工作區中的兩個表文件進行連接生成一個新的表文件。【例4-6】把已存在的計算機成績表和學生登記表通過學號連接起來,生成新的表文件。學生成績新表文件中包含如下字段:學號、姓名、院系、筆試及上機。SELEAUSExsdbSELEBUSEjsjJOINWITHAFOR學號=A..學號TOxscjFIELDS學號,A..姓名,A..院系,上機,筆試USExscjLIST
2023年12月18日第12頁4.2設置數據庫在數據庫表設計器中,除了可以定義字段名稱、類型和寬度等操作外,還可以為各個字段設置標題、定義字段的默認值、輸入掩碼、顯示格式、長表名、長字段名、字段級規則、記錄級規則、觸發器和表的注釋等內容。2023年12月18日第13頁4.2.1設置字段顯示屬性字段的顯示屬性是用來指定輸入和顯示字段的格式屬性,包括格式、輸入掩碼和標題的屬性。1.格式一個格式實質上是一個輸出掩碼,它決定了字段在表單、瀏覽窗口或報表中的顯示風格。如表4-1所示。如確定字段顯示時的大小寫和樣式。如果需要定義格式,可在“格式”文本框中鍵入掩碼。2023年12月18日第14頁表4-1字段的部分格式設置說明A只允許字母字符(不允許空格或標點符號)D使用當前的SETDATE格式E以英國日期格式編輯日期型數據K當光標移動到文本框上時,選定整個文本框L在文本框中顯示前導零而不是空格。此設置只用于字符型數據,且只用于文本框。T禁止輸入字段的前、尾空格!將輸入的小寫字母轉為大寫字母2023年12月18日第15頁2.輸入掩碼指定輸入掩碼就是定義字段中的值必須遵守的標點、空格和其他格式要求,以便使字段中的值具有統一的風格,從而減少數據輸入錯誤,提高輸入效率,如表4-2所示。3.標題在瀏覽窗口、表單和報表中,利用“標題”字段屬性值代替字段名的顯示。若表結構中字段名用的是英文,則可以在標題中輸入漢字,這樣顯示該字段值時會比較直觀。沒有設置標題,則將表結構中的字段名作為字段的標題。2023年12月18日第16頁4.2.2設置字段輸入默認值4.2.3定義字段有效性規則4.2.4設置永久關系與參照完整性1.創建永久關系(1)命令方式格式一:CREATETABLE<數據表名1>FOREIGNKEY<表達式>TAG<標識名>REFERENCES<數據表名2>格式二:ALTERTABLE<數據表名1>ADDFOREIGNKEY<表達式>TAG<標識名>REFERENCES<數據表名2>功能:建立數據表之間的永久關系。2023年12月18日第17頁【例4-7】對“成績管理”數據庫中的兩個數據表“xsdb”和“jsj”建立永久關系。OPENDATABASE成績管理USExsdbALTERTABLExsdbADDPRIMARYKEY學號TAG學號ALTERTABLEjsjADDFOREIGNKEY學號TAG學號REFERENCESxsdbMODIFYDATABASE2023年12月18日第18頁圖4-12創建數據表之間的永久關系2023年12月18日第19頁(2)通過“數據庫設計器”建立永久關系2.設置參照完整性(1)參照完整性的概念參照完整性(ReferentialIntegrity,RI)是指建立一組規則,當用戶插入、更新或刪除記錄時保護數據表之間已定義的關系。參照完整性應滿足如下3個規則:①在關聯的數據表間,子表中的每一個記錄在對應的父表中都必須有一個父記錄。②對子表作插入記錄操作時,必須確保父表中存在一個父記錄。③對父表作刪除記錄操作時,其對應的子表中必須沒有子記錄存在。2023年12月18日第20頁(2)設計參照完整性在VFP中,可使用“參照完整性設計器”來設置規則,控制如何在關系表中插人、更新或刪除記錄。若要打開“參照完整性設計器”,首先打開“數據庫設計器”,從“數據庫”菜單里選擇“編輯參照完整性”命令。注意:在建立參照完整性之前必須首先清理數據庫,所謂清理數據庫是物理刪除數據庫各個表中所有帶有刪除標記的記錄。只要數據庫設計器為當前窗口,主菜單欄上就會出現“數據庫”菜單,這時可以在“數據庫”菜單下選擇“清理數據庫”,該操作與命令PACKDATABASE功能相同。2023年12月18日第21頁4.3數據庫的操作4.3.1打開/關閉數據庫1.打開數據庫如果想打開一個已經存在的數據庫,則可以使用OPEN命令,也可以通過菜單進行操作。(1)命令方式命令格式:OPENDATABASE<數據庫名>功能:打開指定的數據庫文件【例4-9】用命令方式打開“成績管理”數據庫。OPENDATABASE成績管理2023年12月18日第22頁(2)菜單操作使用“文件”菜單中的“打開”命令,或單擊常用工具欄中的“打開”按鈕,將會出現一個“打開”對話框。在該對話框中,選定文件類型下拉列表中的“數據庫(*.DBC)”選項,然后選定需要打開的數據庫文件名,單擊“確定”按鈕,就可以將選定的數據庫打開。在“打開”對話框中,還有如下兩個復選項。以只讀方式打開:如果選定該選項,表示不能對打開的數據庫進行修改。獨占:如果選定該選項,表示不允許其他用戶在同一時刻使用該數據庫。2023年12月18日第23頁2.關閉數據庫如果想關閉一個已經打開的數據庫,可以使用CLOSE命令命令格式:CLOSEDATABASE或CLOSEALL功能:關閉所有打開的數據庫和表3.修改數據庫(1)命令方式命令格式:MODIFYDATABASE[<數據庫名>](2)菜單操作2023年12月18日第24頁4.3.2在項目中添加/移去數據庫1.添加數據庫2.移去或刪除數據庫4.3.3建立表間關系4.3.4使用多個數據庫1.不打開數據庫而引用其中的表。要使用一個非當前數據庫中的表,可使用USE命令和“!”。命令格式:USE<非當前庫文件名>!<表文件名>2023年12月18日第25頁2.同時打開多個數據庫,設置其中一個為當前數據庫,并在其中選擇表。(1)打開多個數據庫用戶可視需要使用OPENDATABASE命令打開多個數據庫。(2)設置當前數據庫設置當前數據庫的命令格式:SETDATABASETO
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論