在這種“一對多”的情況下,完全可以通過“客戶信息表”中的“公司名稱”信息將這兩個表的內容都串起來。在主表中的每一個記錄下面都會帶著一個甚至幾個子表中的“訂單”記錄。具有“一對一”關系的兩個表之間互為對方的“子表”。
通常在建立表之間的關系以後,Access會自動在主表中插入子表。但這些子表一開始都是不顯示出來的。在Access中,讓子表顯示出來叫做“展開”子數據表,讓子表隱藏叫做將子數據表“折疊”。展開的時候方便查閱訂單信息,而折疊起來以後有可以比較方便的管理“客戶信息表”。
要“展開”子數據表,只要用鼠標單擊主表第一個字段前面一格,對應記錄的子記錄就“展開”了,並且格中的小方框內“加號”變成了“減號”。如果再單擊一次,就可以把這一格的子記錄“折疊”起來了,小方框內的“減號”也變回“加號”。如果主表很大的話,這樣一個一個地“展開”和“折疊”子數據表就顯得太麻煩了,Access為我們提供了一種操作方式,它可以一下子“展開”或“折疊”當前數據表的所有子數據表。打開一個帶有子數據表的表時,在“格式”菜單“子數據表”項的子菜單中,有三個命令“全部展開”、“全部折疊”和“刪除”,“全部展開”命令可以將主表中的所有子數據表都“展開”,“全部折疊”命令可以將主表中的所有子數據表都“折疊”起來。不需要在主表中顯示子數據表的這種方式來反映兩個表之間的“關系”時,就可以使用“刪除”命令來把這種用子數據表顯示的方法刪除。但這時兩個表的“關系”並沒有被刪除。如果想恢復在主表上顯示“子數據表”的形式,可以先打開主表,比如“客戶信息表”,單擊“插入”菜單下的“子數據表”命令,彈出“插入子數據表”對話框如下圖:
在列表框中選取“表”----“訂單信息表”,然後在“鏈接子字段”組合框中選取“訂貨單位”字段,並在“鏈接主字段”組合框中選取“公司名稱”字段,單擊“確定”按鈕就可以在主數據表“客戶信息表”中重新插入子數據表“訂單信息表”了。必須要注意的是在任何一個數據表中插入子數據表都需要在兩個表之間建立“關系”,如果這兩個表的“主鏈接字段”和“子鏈接字段”之間還沒有建立聯結的話,在單擊“確定”按鈕插入“子數據表”的時候就會詢問是否要在這兩個表之間建立相應的“關系”,只有建立“關系”以後,才能完成“插入子數據表”過程。用這樣的方式在表之間建立“關系”不像在“關系”對話框中建立的“關系”那樣直觀。所以我們提倡在關系對話框中建立好表與表之間的“關系”,由Access自動地創建子數據表。
結束語:這一課通過“客戶信息表”和“訂單信息表”將表與表之間的“關系”展現在我們面前,如果你已經掌握了表的操作,那就開始看下一課;如果你還沒有完全掌握“表”,就將這四課再好好看一看,因為表是數據庫中最重要的一個部分了。