- 數據庫應用技術:Visual FoxPro 6.0上機指導與練習
- 魏茂林主編
- 2563字
- 2018-12-27 18:40:26
實訓7 工作區的使用
跟我做
實訓要求
- 掌握多工作區使用的方法
- 掌握建立表間臨時關系的方法
- 掌握建立表間永久關系的方法
- 學會設置參照完整性規則
實例1 分別在1、2、3工作區打開“圖書”表、“讀者”表和“借閱”表,并選擇第1工作區為當前工作區。
打開數據庫表可以在“數據工作期”按順序打開。下面介紹使用命令方式打開上述數據庫表。
鍵入命令:
OPEN DATABASE Books &&打開“Books”數據庫 SELECT 1 USE 圖書 SELECT 2 USE 讀者 SELECT 3 USE 借閱
選擇1號工作區:
SELECT 1
或
SELECT 圖書
兩個命令是等價的。
也可以使用USE命令直接指定在哪個工作區打開表。例如:
OPEN DATABASE Books &&打開“Books”數據庫 USE 圖書 IN 1 USE 讀者 IN 2 USE 借閱 IN 3
當前的工作區是1區。在USE命令中使用ALIAS短語可以指定別名。
實例2 在實例1打開3個表的基礎上,訪問表中的數據。
鍵入命令:
? 書名,B->姓名,借閱.圖書ID &&當前工作區是1區
屏幕顯示:
Windows 7應用基礎 東邪 T0002
實例3 使用SET RELATION命令建立“讀者”表和“借閱”表之間的關系。
對于“讀者”表,前面已經按“借書證號”建立了主索引,索引名為“借書證號”;對于“借閱”表,已經按“借書證號”建立了普通索引,索引名為“借書證號”。因此,在兩個表之間可以通過“借書證號”建立關系。
鍵入命令:
CLOSE DATABASE OPEN DATABASE Books &&打開“Books”數據庫 CLEAR ALL USE 讀者 IN 0 ORDER 借書證號 USE 借閱 IN 0 ORDER 借書證號 SELECT 1 SET RELATION TO 借書證號 INTO 借閱 &&以“借書證號”為關鍵字與“借閱”表建立關系
分別打開“讀者”表和“借閱”表的瀏覽窗口,將鼠標指針指向“讀者”表中不同的記錄,可以觀察到“借閱”表中記錄的變化,如圖2-22所示。

圖2-22 “讀者”表和“借閱”表記錄關聯
實例4 以“圖書”表和“借閱”表的“圖書ID”字段為關鍵字,建立兩表之間的一對多關系。
在“表設計器”中檢查“圖書”表已按“圖書ID”建立了主索引,索引名為“圖書編號”,“借閱”表已按“圖書ID”建立了普通索引。
操作步驟:
(1)在項目管理器窗口中,選擇“Books”數據庫,單擊“修改”按鈕,打開“數據庫設計器”窗口。
(2)選擇“圖書”表中的索引名“圖書編號”,將其拖到“借閱”表中對應的索引“圖書id”上。此時,可以看到它們之間出現一條連線,表示在兩個表之間建立了一對多關系,如圖2-23所示。

圖2-23 建立的一對多關系
建立表間關系后,如果要編輯已建立的關系,在“數據庫設計器”窗口,用鼠標右鍵單擊表之間的連線,此時彈出快捷菜單,選擇“刪除關系”、“編輯關系”或“編輯參照完整性”命令等,刪除或編輯對應的關系。
實例5 設置“圖書”表和“借閱”表的參照完整性:當在“借閱”表插入記錄時,如果“圖書”表(父表)中不存在對應的圖書ID關鍵字的記錄,則禁止插入記錄。
在實例4兩表建立一對多關系的基礎上,根據要求,設置參照完整性的“插入規則”。
操作步驟:
(1)如果兩個表沒有建立關系,首先建立兩表間的一對多關系。
(2)執行清理數據庫操作。
(3)打開“參照完整性生成器”對話框,在“插入規則”選項卡中選擇“限制”選項,即在插入記錄時檢查相關的“圖書”表記錄是否存在,如果不存在則禁止插入借閱記錄。
練一練
1.填空題
(1)在Visual FoxPro 6.0中,最多同時能打開______個數據庫表或自由表。
(2)使用USE命令在不同工作區打開已經打開的表,應選擇短語______。
(3)假設當前工作區是1區,執行命令“USE 讀者 IN 3”后,則當前工作區是______區。
(4)建立表間臨時關系的命令是____________。
(5)數據庫表之間的一對多關系通過父表的______索引和子表的______索引實現。
(6)在2號工作區打開數據表xs.dbf,并設置別名為student,應輸入的命令是:
USE xs______2______student
(7)在Visual FoxPro中,要設置參照完整性規則,必須事先建立表之間的______關系。
2.選擇題
(1)如果在2號工作區打開了“圖書”表后,又進入了另一工作區,當要從別的工作區返回到2號工作區時,可以使用命令( )。
A.SELECT 2 B.SELECT B C.SELECT 圖書 D.以上都可以
(2)執行下列命令序列后,FILE3所在的工作區是( )。
CLOSE DATABASE SELECT 0 USE FILE1 SELECT 0 USE FILE2 SELECT 0 USE FILE3
A.第1區 B.第2區 C.第3區 D.第4區
(3)在Visual FoxPro的數據工作期窗口,使用SET RELATION命令可以建立兩個表之間的關聯,這種關聯是( )。
A.永久性關聯 B.永久性關聯或臨時性關聯
C.臨時性關聯 D.永久性關聯和臨時性關聯
(4)在數據庫設計器中,建立兩個表之間的一對多關系是通過以下索引實現的( )。
A.“一方”表的主索引或候選索引,“多方”表的普通索引
B.“一方”表的主索引,“多方”表的普通索引或候選索引
C.“一方”表的普通索引,“多方”表的主索引或候選索引
D.“一方”表的普通索引,“多方”表的候選索引或普通索引
(5)參照完整性的更新規則中不包括的選項是( )。
A.級聯 B.限制 C.忽略 D.更新
(6)Visual FoxPro 6.0中的參照完整性規則不包括( )。
A.更新規則 B.刪除規則 C.約束規則 D.插入規則
(7)在Visual FoxPro中設置參照完整性時,要設置成:當更改父表中的主關鍵字段或候選關鍵字段時,自動更新相關子表中的對應值,應在“更新規則”選項卡中選擇( )。
A.忽略 B.限制 C.級聯 D.忽略或限制
(8)如果指定參照完整性的刪除規則為“級聯”,則當刪除父表中的記錄時( )。
A.系統自動備份父表中被刪除記錄到一個新表中
B.若子表中有相關記錄,則禁止刪除父表中記錄
C.會自動刪除子表中所有相關記錄
D.不做參照完整性檢查,刪除父表記錄與子表無關
(9)表之間的臨時關系是在兩個打開的表之間建立的,如果兩個表有一個關閉后,則該臨時關系( )。
A.轉化為永久關系 B.永久保留
C.臨時保留 D.消失
(10)參照完整性的作用是 ( )。
A.字段數據的輸入控制 B.記錄中相關字段之間的數據有效性控制
C.表中數據的完整性控制 D.相關表之間的數據一致性控制
(11)如已在學生表和成績表之間按學號建立永久關系,現要設置參照完整性:當在成績表中添加記錄時,凡是學生表中不存在的學號不允許添加,則該參照完整性應設置為( )。
A.更新級聯 B.更新限制
C.插入級聯 D.插入限制
動手做
1.在B工作區打開“讀者”表,在F工作區打開“借閱”表。
2.分別在“數據工作期”和使用SET RELATION命令以“借書證號”為關鍵字建立“讀者”表和“借閱”表的關聯,并瀏覽每個讀者的“借書證號”、“姓名”、“出生日期”、“借書日期”和“圖書ID”字段的內容。
3.在E工作區打開“圖書”表,使用SET RELATION命令與F工作區的“借閱”表以“圖書ID”為關鍵字建立關聯。
4.在數據庫設計器中設置:“圖書”表與“借閱”表的“圖書ID”建立一對多關系,“讀者”表與“借閱”表的“借書證號”建立一對多關系。
5.編輯“圖書”表與“借閱”表間關系的參照完整性規則,設置“刪除規則”中的“級聯”。
- Hands-On Internet of Things with MQTT
- Oracle SOA Governance 11g Implementation
- 大數據時代的數據挖掘
- 中國戰略性新興產業研究與發展·智能制造
- RPA(機器人流程自動化)快速入門:基于Blue Prism
- 精通數據科學算法
- Prometheus監控實戰
- 基于單片機的嵌入式工程開發詳解
- Blender 3D Printing by Example
- 貫通Java Web開發三劍客
- 奇點將至
- MPC5554/5553微處理器揭秘
- Learn Microsoft Azure
- Raspberry Pi Projects for Kids
- 大型機系統應用基礎