第3章 建立數據表_第1頁
第3章 建立數據表_第2頁
第3章 建立數據表_第3頁
第3章 建立數據表_第4頁
第3章 建立數據表_第5頁
已閱讀5頁,還剩149頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

第3章建立數據表關系數據庫里的數據信息可以看成是基于關系模型設計出來的一些相互關聯的簡單二維數據表的集合,二維數據表在這里簡稱表。數據庫可以比喻為零配件倉庫,表可以比喻為倉庫里的貨架,具體的數據可比喻為貨架上放的具體各種零配件。表是整個關系數據庫的基礎,是數據庫中其它對象操作的數據源,建設Access2003數據庫的過程就象先建好一個零配件倉庫,然后將設計好的貨架搬進去,最后將零配件搬到各自對應的貨架中去,針對數據表的主要內容如下:1、創建空數據庫(或按模版建一原始數據庫)。2、創建表放入數據庫。3、建立相互之間有關系的表的關聯。4、在各個表中放入數據5、表中數據的各種處理方法。6、以表為數據源設計、創建數據庫中的其它對象。(Access2003中包括表在內共有7種對象)。3.1表的組成與創建Access2003的主要數據均存放在表中,一般衡量表的質量會涉及到數據冗余度、共享性和完整性。由于數據庫中存放的數據是有限的,Access2003對于在其中建立的表有一些規定。如圖3.1對表的限定。

3.1.1表的組成Access2003的表是一種簡單的二維表,縱向的列表示事物的各種屬性,其中的數據又稱為字段,橫向的行以數據記錄形式列出表中某一完整的事物數據,橫向數據稱為元組,如圖3.2是一個反映教師信息的數據表。教師編號姓名性別工作時間系別職稱電話NJ13010001蔣正紅男198001計算機科學與技術教J13010002李峰男199808計算機科學與技術副教J13010003李雷男200508計算機科學與技術講J13010004張紅女198308計算機科學與技術教J13010005洪敘航男198712電子系教J13010006張劍鋒男199801計算機科學與技術副教J13010007黃鳳琴女199004商學院教J13010008魏平女200102計算機科學與技術副教J13010009王海男199201物理系教J13010010瑞智寧男200201電子系副教/p>

表和其中的屬性(字段)都有自己的名稱,所起名稱要符合字段代表的含義。對于每一個字段在創建表時還要規定其類型、長度,以便適合于放置相應的數據,又稱為確定表的結構。在確定表的結構時,還需要考慮到表中各字段的約束條件、表的索引以及與其它表之間的關聯問題。

1、約束條件。是對相關的數據所做的約定,以保證數據的一致性。2、索引。數據庫中的索引類似書中的目錄,建立了索引后,在對表中數據進行查找時,無需每次都從頭至尾逐個查找表中的數據。3、關聯。數據庫中存放的是某一應用領域反映客觀實體及相互關系的數據,即由一系列表構成,如果要反映兩個表之間有相互聯系,就要通過建立關聯表來關聯(表示)那兩個表的關系。

3.1.2Access2003中的數據類型所謂設計表的結構,就是規定表中各列(字段)的名稱和數據類型,之后表中數據的存儲與使用方式就被確定下來,直到被修改為止。

Access2003提供了11種數據類型,既有系統提供的標準數據類型,也有給用戶自己定義的數據類型,下圖是相關的數據類型說明。3.1.3創建表表設計好后,要放入數據庫中,稱為創建表,Access2003提供了以下五種創建表的方法。1、數據表視圖。此時打開的是一個空數據表,用戶直接在表格的各字段欄目處輸入字段名稱來創建表,這種方法比較容易,但無法對每一個字段的數據類型和屬性進行具體的設置,通常還需要在設計視圖中對這種表再次修改其字段名及屬性。

2、利用設計視圖。這是利用可視化工具來設計和編輯數據庫中的表結構,在表設計視圖界面,用戶按照自己設計好的字段名、字段類型、長度、主鍵等數據,完成對表的定義,表建立后直接可以使用,效率較高。3、利用表向導。利用系統中預先設置好的示例表模版,這些表結構中包含了一些常見的典型字段,用戶可在表向導指引下,選擇或者不選擇示例表中的類似字段來組成自己需要的表。

4、用導入表來創建。用戶可以將其它軟件系統中的電子表格、文本文件、數據庫文件等多種形式的數據導入到Access2003數據庫中來使用。5、利用鏈接表。由鏈接到其它數據庫中的某個表的方式來得到該表的使用,實際上建立鏈接只是增加一種對其它數據庫中已經存在的表的引用,而不是另外在數據庫中真正創建一個新表。

要創建表,先要打開一個已經存在的數據庫,在“數據庫”窗口選擇“表”,再單擊“新建”按鈕,打開“新建表”對話框。圖3.5新建表對話框例3.1使用數據表視圖創建“分組”表。解:按如下步驟進行操作:(1)打開“D:﹨Access﹨學生課程管理系統”數據庫。(2)在數據庫窗口中選擇表對象,點擊“新建”按鈕,出現新建表對話框。(3)選擇“數據表視圖”,選擇確定按鈕,此時會出現空數據表,在默認情況下,表的字段名顯示為字段1、字段2·······。(4)此時可以修改字段名,同時輸入表中數據,如圖3.7所示,但通常用這種方法生成表的字段名及數據類型很難體現相關數據的內容,要進入表設計視圖重新修改。圖3.7數據表視圖中修改字段名及輸入數據示例

例3.2使用設計視圖創建教師表解:按如下步驟進行操作:(1)打開“D:﹨Access﹨學生課程管理系統”數據庫。(2)在數據庫窗口中選擇“表”對象,單擊“新建”按鈕,會彈出“新建表”對話框,如圖3.5所示。(3)單擊“確定”按鈕,此時會出現設計視圖窗口,也可以單擊工具欄的“設計”按鈕或者雙擊“新建表”中的“設計視圖”進入表設計視圖窗口,如圖3.8所示。

圖3.8使用設計視圖創建表窗口(4)選擇字段名稱列,輸入“教師表”的第一個字段名稱“教師編號”,再選擇“數據類型”列,并單擊其下面右側的下拉箭頭按鈕,會彈出一個包括10種數據類型的下拉列表,如圖3.9所示。圖3.9設計視圖中數據類型下拉列表(5)選擇“自動編號”數據類型,然后在下半區的“常規”選項中設置其“字段大小”為長整形或某一個長度值,類似地可以對其它字段的屬性進行設置。(6)所有字段定義好之后,單擊第一個字段“教師編號”的選定器,再單擊工具欄上的“主關鍵字”按鈕,給教師表定義主鍵。(7)選擇工具欄的“保存”按鈕,這時會出現“另存為”對話框,在“表名稱”框中輸入表名“教師表”。(8)選擇“確定”按鈕,則最終完成表結構的創建,如圖3.10所示。

圖3.10使用設計視圖創建教師表例3.3使用表向導創建一個會員表,其中含有會員號、名字、電話三個字段。解:按下列步驟進行操作:(1)打開“E:\Access\學生課程管理系統”數據庫。(2)在數據庫主界面窗口中選擇“表”對象,然后雙擊“使用向導創建表”,出現表向導對話框,如圖3.11。圖3.11“表向導”對話框(3)從該對話框左邊的“示例表”中選擇“郵件列表”,這時旁邊的“示例字段”框中顯示出“郵件列表”表的所有字段,如果單擊“>>”按鈕,會將“示例字段”列表中的所有字段復制到“新表中的字段”列表里。也可以單擊“>”按鈕選擇部分被選中的字段(或雙擊該字段)復制到“新表中的字段”列表里,如果對選擇的字段不滿意可以使用“<”(撤銷某個選擇的字段)或“<<”(撤銷全部新表中的字段)按鈕取消已選的字段。如果對“示例字段”中的字段名不滿意,可以選擇圖3.11中的“重命名字段”按鈕,打開重命名字段對話框,如圖3.12所示。

圖3.12重命名字段對話框(4)單擊“下一步”按鈕,顯示出如圖3.14對話框,在“請指定表的名稱”文本框中輸入“會員表”,然后選擇“是,幫我設置一個主鍵”。圖3.14表名改為“會員表”(5)單擊“下一步”按鈕,顯示如圖3.15所示,該對話框詢問新表是否與其它表相關聯。

圖3.15表的相關性(6)如果有表要關聯,則可單擊列表框中的相關表,然后單擊“關系”按鈕進一步定義。否則單擊圖3.15中的“下一步”按鈕,顯示如圖3.16所示。圖3.16表向導完成對話框(7)在圖3.16中可以有隨后操作的三種不同選擇:a.選擇“修改表的設計”選項,可以再次修改表的結構。b.選擇“直接向表中輸入數據”選項,可以立即向表中輸入數據。c.選擇“利用向導創建的窗體向表中輸入數據”選項,將出現一個輸入數據的窗口。(8)選擇圖3.16中的完成按鈕,系統將進入上述(7)中選擇的a、b或c其中之一。3.1.4復制、重命名及刪除表對表的復制操作如下:1、打開數據庫,在窗口中選擇“表”對象。2、選擇要復制的表,比如“教師表”,選擇“編輯|復制”菜單命令,或單擊工具欄上的“復制”按鈕,或按鼠標右鍵在快捷菜單中選擇“復制”命令。3、選擇“編輯|粘貼”菜單命令,或單擊工具欄上的“粘貼”按鈕,打開“粘貼表方式”對話框,如圖3.17所示。

圖3.17“粘貼表方式”對話框

4、在“表名稱”文本框中輸入新的表名,比如圖3.17中教師備份,再可以在“粘貼選項”中選擇其中一個,然后單擊“確定”按鈕。注意:(1)“只粘貼結構”單選按鈕表示僅復制表的結構;(2)“結構和數據”單選按鈕表示復制整個表;(3)“將數據追加到已有的表”單選按鈕表示將記錄追加到另一個已有的表尾部,可用于合并數據表。對表的重命名操作如下:1、選擇“表”對象,然后單擊選擇要重命名的表,比如“教師備份”表。2、選擇“編輯|重命名”菜單命令,或從快捷菜單中選擇“重命名”命令,此時可在原文件名處輸入新表名,比如“教師備份1”。

刪除表的操作如下:1、選擇要刪除的表,選擇“編輯|刪除”菜單命令,或者從快捷菜單中選擇“刪除”命令,或者直接按Del鍵,打開是否要刪除的對話框,如圖3.18所示。

圖3.18是否刪除表選擇。2、單擊“是”按鈕,刪除表操作成功。3.2數據的輸入在創建表的結構之后,就可以輸入數據了,類似于我們日常填寫空白表格。3.2.1數據輸入與編輯數據輸入最直接、常見的方式為使用數據表視圖,由移動光標定位對數據進行增加、刪除或修改操作,可以直接利用鍵盤、鼠標進行操作,如果輸入字段的類型不匹配或不符合約束條件,則系統會提示有錯,直到用戶輸入正確后才會繼續往下操作。

下面介紹幾種常見的編輯操作:1、刪除數據記錄將鼠標移動到相應記錄的行上并選定,按Del鍵,此時系統會提示是否真正刪除。2、修改數據記錄用鼠標或鍵盤選定相應記錄中要修改的字段位置,直接輸入新值替換原來的值即可。3、數據記錄的復制復制功能可以提高錄入數據的效率,方法是在表對象的數據表視圖中找到需要復制的記錄,單擊鼠標左鍵,再單擊右鍵,從快捷菜單中選擇“復制”命令,然后選擇存放新紀錄的行,從單擊右鍵的菜單中選擇“粘貼”,可以將選中的記錄粘貼到位,要注意的是只有復制操作符合數據約束條件時才能執行成功。

4、數據的查找如果要查看表中的記錄,可以打開相應的表,從頭至尾按順序瀏覽,但是如果表中記錄很多,用戶只要查看幾條感興趣的數據記錄,此時可利用“查找”對話框來查找符合給定條件的記錄,如果要將找到的某些內容進行替換,則可使用“替換”對話框,如圖3.19所示。圖3.19“查找和替換”對話框例3.4在學生表中找出所有姓李的學生。解:可以利用通配符進行查找,即可在查找對話框中的查找內容處輸入李*。操作步驟如下:

1.打開學生課程管理系統數據庫。

2.選擇表對象,打開學生表。

3.在編輯菜單中選擇查找項,此時彈出查找和替換對話框。

4.在對話框的查找內容欄中輸入“李*”。(其中*表示通配任何個數的字符,即所有李姓學生的名字),在查找范圍選項中選擇“姓名”,匹配選項中選擇整個字段,搜索選項中選擇全部,如圖3.21所示。

圖3.21.在學生表中逐個查找姓李的學生

5.單擊“查找下一個”按鈕,可找到第一個李姓學生,再逐次單擊“查找下一個”按鈕,可以逐個找到表中后續的李姓學生,如果已經顯示過表中最后一個李姓學生,再往下查找時,系統會提示“MicrosoftOfficeAccess已完成搜索記錄,沒有找到搜索項”。此時結束查找。

3.2.2導入、導出數據表和鏈接外部數據表Access2003可以和其他數據庫或文件進行數據交換,提供了數據表的導入、導出和鏈接外部數據表的功能。一、導入數據表操作這是一種從Access2003外部將數據文件從不同格式轉換并復制到Access2003中的方法,比如被導入的數據源文件類型可以是另一個Access的數據庫、Excel文件(xls)、IE(HTML)、DBASE等。例3.5將其他目錄下的Excel文件“11計科2011下成績.xls”)輸入到“學生成績管理系統”數據庫中,數據表名稱改為“11級成績”。解:按以下操作步驟:1。有三種方法導入:(1)在“新建表”對話框中選擇導入表選項雙擊或選擇“確定”按鈕;(2)在數據庫窗口內任意空白位置單擊鼠標右鍵,從快捷菜單中選擇“導入表”命令;(3)在數據庫窗口中選擇“文件|獲取外部數據|導入”菜單命令。可選用上述(1)~(3)任意之一,則系統會顯示“導入”對話框,在“查找范圍”中指定文件夾,在“文件類型文本框中選擇“MicrosoftExcel”選項,如圖3.22所示。

圖3.22在導入對話框選擇文件類型2、選擇“11計科2011下成績.xls”文件,再單擊導入按鈕,如圖3.23所示。

圖3.23選擇Excel文件3、按步驟依次操作,最好單擊“完成”按鈕,顯示“導入數據表向導”結束提示框,提示數據導入已經完成,如圖3.32所示。圖3.32結束提示框此時“學生成績管理系統”數據庫中會增加一個名為“11級成績”的數據表,其內容來自修改過的“11計科2011下成績.xls”文件。完成后的“11級成績”數據表打開后,如圖3.33所示。圖3.33存在于數據庫中的“11級成績”表二、導出數據表操作與導入相逆,Access2003可以將數據庫中的表導出到其它數據庫或文件中,比如可以將例3.5中導入的“11級成績”表導出到名為“11級成績”的Excel表格中,可以簡單操作如下:1、在數據庫中選擇“11級成績”表,單擊鼠標右鍵,從快捷菜單中選擇“導出命令”,則會顯示出“將表11級成績導出為···”對話框,如圖3.34所示。圖3.34選擇導出對象2、從“保存類型”中選擇Excel類型,“文件名”中選擇“11級成績”名稱,再設置存放目錄位置,然后單擊“導出”按鈕,則完成導出操作,如圖3.35所示。圖3.35導出“11級成績”表對話框三、鏈接表操作

Access2003還具有用鏈接表建立表的功能,其操作類似導入表,但鏈接表在數據庫中只包含鏈接數據源的有關路徑,不實際將鏈接表保存到數據庫中,不能修改鏈接表的結構,另外如果其它數據源中刪除了相關表格,則鏈接會出錯,有關導入和鏈接表的一些細節規定可以查看有關資料。3.3字段的設置設計表的重點是定義好表的結構,然后是對表中的各個字段的數據類型及相應的屬性進行細致的定義。3.3.1字段名稱及類型1、字段名稱字段的名稱可以由英文、中文、數字及一些特別符號組成,但必須符合數據庫對象的命名規則。2、字段類型每個字段中須有自己的數據類型,一旦規定了數據類型,則該字段中輸入的數據要與類型規定的值域相符合,如果輸入的數據與類型不一致,Access會提示錯誤信息,且不予保存,Access規定的數據類型見前面介紹。如果要修改字段名,可以打開表的設計視圖,在上半部分“字段名稱”列中單擊選中想要修改的字段名,將其修改為新的名稱即可。

如果要修改字段的數據類型,在設計視圖的上半部分選中相應字段名并點擊其數據類型,此時系統會顯示所有可供設置的數據類型,然后選擇要改成的新類型,注意,如果是一張沒有數據的空表,可以任意修改其字段的數據類型,但如果表中已有數據,則待改的數據類型必須是相容的,如果不相容,系統會提示用戶,不能隨意修改,否則會造成錯誤。3.3.2字段的插入、刪除和移動。1、刪除字段可以通過以下4種方法之一刪除數據表中的字段:(1)單擊“設計視圖”的行選擇器來選擇要刪除的字段,然后按下Delete鍵。(2)先將鼠標指向要刪除的字段,再在“編輯”菜單中選取“刪除行”選項。(3)先將鼠標指向要刪除的字段,再單擊工具欄中“刪除行”命令按鈕。(4)先將鼠標指向要刪除的字段,再單擊鼠標右鍵,在顯示的菜單中選擇“刪除行”選項。注意:不要隨意刪除字段,因為字段常常在查詢、窗體、報表等中還有被使用,會造成相應對象無法正常工作。

2、插入字段把光標移動到要插入字段的右邊字段,在“插入”菜單中選擇“行”選項,或者單擊工具欄上的插入行命令按鈕,則在表中添加一個新的空字段行,然后根據要求輸入該字段的定義,但如果在查詢、窗體或報表中已有對該表的使用,則需要對這些數據庫對象做相應的修改。3、移動字段如果要對表重新排列字段,只需在表的設計視圖中單擊某字段的行選擇器,選中該字段,然后單擊字段并按住鼠標左鍵將該字段拖移到所要的新位置即可。也可以利用快捷鍵“Ctrl+X”來完成。3.3.3重新設置主鍵允許對主鍵進行重定義,先刪除原主鍵,再設置其它字段為新主鍵。3.3.4字段的屬性設置當表創建好表結構后,還要對其中各字段進行屬性描述,即可在屬性區設置屬性值,字段的屬性確定以及對該字段數據的存儲、處理和顯示等。不同的字段屬性是有區別的,當在表“設計視圖”中選擇某個字段時,屏幕下半部的“字段屬性”區就會依次顯示出與該字段有關的屬性設置,如圖3.36所示。圖3.36教師編號字段屬性設置以下介紹一些常用的字段屬性設置方法。一、限制“字段大小”文本、數字和自動編號三種數據類型可用“字段大小”屬性限定其取值范圍,比如數字類型的字段大小有七種可選的屬性,可以通過對應“字段大小”行上的下拉列表來選定,如圖3.37所示。圖3.37數字類型字段大小選擇

二、字段輸出標題設置字段輸出標題是僅在表、窗體或報表輸出時對應字段所用名稱,(其它時刻字段還是用存儲在表結構中的原名稱),此項目的是針對不同的用戶,可以用他們習慣的方式看到表的列名稱及其內容,只是列的名稱有變,數據表的內容不變。三、設置系統提供的標準輸入、輸出格式Access2003對于除了OLE對象字段外的其它字段類型都設置了一些標準格式,提供給用戶選用,字段輸入輸出格式可以保證輸入、輸出的規范性,避免出錯,并且這種設置只安排數據的輸入和輸出格式,不影響數據內容。例3.6在學生表中增加“學費”字段,數據類型為數字型,輸出格式為“常規數字”。解:按如下操作步驟:1.打開學生表的設計視圖,在最后一行字段的下一行空白處輸入字段名稱為“學費”。數據類型一欄選擇“數字類型”。2.在下半區字段屬性定義的字段大小欄選擇“單精度型”,在格式選擇欄選擇“常規數字”,如圖3.44所示。圖3.44增加學費字段顯示格式設為常規數字3.在修改后的學生數據表中增加每人的學費列的數字輸入,結果如圖3.45所示。圖3.45新增學費字段的操作結果四、自定義輸入輸出格式Access2003提供用戶自定義字段的輸入輸出格式的功能,以滿足多樣化和特殊需求。但是對于不同類型的數據,自定義規定的格式符號和方法是不同的。

五、設置“默認值”利用“默認值”屬性可以減少輸入數據時的工作量,“默認值”指定了在添加記錄時對于相應的字段內容自動輸入規定的那個“默認值”,在數據表中常有一些字段的數據相同或含有相同的部分。例3.7將“教師表”的“性別”字段的“字段大小”設為1,字段的“默認值”設為“女”。解:操作步驟如下:

1.打開“教師表”的設計視圖

2.在上半區選擇“性別”字段,下半區的“字段大小”欄填入1,默認值屬性欄中輸入女。在設置“默認值”屬性時,必須與字段中所設的數據類型相匹配,設置成功后,在輸入新紀錄時,此默認值自動會插入到相應字段位置上,當然也可以輸入新值來取代它,比如例3.7中設置性別為“女”則在輸入女教師記錄時,該字段內容已存在,而當輸入的是男教師記錄時,該字段預先也自動設為“女”,此時則要將性別字段的內容由“女”改為“男”,例3.7的結果如圖3.48所示。圖3.48經例3.7后的教師表例3.8修改教師表中關于“電話”字段的格式,當字段中沒有電話號碼時,要顯示“無”,否則還是按原有號碼顯示。解:按如下步驟操作:1、打開教師表的設計視圖2、在上半區選擇“電話”字段,此時下半區的字段屬性顯示了“電話”字段的所有屬性,在其格式字段屬性框中輸入“@;\無”。

3、單擊工具欄上的“視圖”按鈕,在其下拉菜單中選擇教師表的“數據表視圖”,得到如圖3.50的數據表,當電話字段沒有輸入內容時均顯示“無”,而當光標移到時,則不顯示“無”而將等待輸入電話號碼,圖中“電話”列中有一空白欄為當前光標正處位置。圖3.50顯示修改字段后的數據表可以利用一些系統規定的符號在類型為文本的字段中自定義格式屬性。六、設置輸入掩碼設置輸入掩碼是為了屏蔽非法輸入,減少輸入數據時的人為錯誤,它是用來預先設置用戶輸入字段數據的標準格式,該屬性可用于數字、文本、貨幣和日期/時間類型的字段,通過規定一些特殊字符來設置“輸入掩碼”。例3.9對教師表中的“辦公電話”字段設置“輸入掩碼”,要求只能輸入4位區號,8位電話號碼,最多3位分機號碼,區號用括號,分機號與電話號碼之間用“-”分隔。解:按如下操作步驟:

1.打開“教師表”,選擇設計按鈕,屏幕顯示“教師表”的設計視圖。2.選擇“辦公電話”字段,比如屏幕下半區字段屬性會顯示有與該字段相關的所有屬性,選擇“輸入掩碼”屬性框,輸入“(9999)00000000-999”,表示應該輸入4位區號,(不能多也不能少于4位),8位電話號碼(必須是8位數字)和3位分機號。如圖3.53所示。圖3.53設置辦公電話字段的“輸入掩碼”屬性3、保存設置再切換到“教師表”的數據表視圖。

圖3.54辦公電話設置“輸入掩碼”的教師表內容其中分機號碼可以有,也可以沒有,也可以不到3位數字,當光標移到該字段的空白欄時,顯示“(_)__-__”格式。七、“有效性規則”和“有效性文本”這兩個屬性用于限定字段數據輸入的范圍,可防止錯誤的數據輸入到表中。“有效性規則”預先給相關字段規定一個比較或邏輯表達式,當每次輸入數據時,系統檢查該字段新輸入的數據是否滿足“有效性規則”規定的表達式,如果滿足就正常接收該數據,如果不滿足,則給出有錯提示。“有效性文本”作為提示信息用于配合“有效性規則”,在“有效性文本”屬性設置時,其中輸入一段當輸入的數據不符合“有效性規則”時,所顯示的出錯提示信息,提示用戶直到輸入正確數據為止,如果不進行設置,系統會提示默認顯示信息。

例3.10在課程表中設置“學分”字段的有效輸入為1至6的整數,出錯時給予提示。解:可以對“學分”字段設置“有效性規則”為:“>0And<=6”,將出錯提示信息“學分只能是1—6之間的整數”設置到“有效性文本”欄中,操作步驟如下:

1.在數據庫主窗口中,選擇表對象。

2.單擊選擇“課程表”,選擇“設計”按鈕,屏幕顯示“課程表”的設計視圖。

3.選擇上半區的“學分”字段。

4.在下半區的字段屬性區里的“有效性規則”文本框中輸入“>0And<=6”,在“有效性文本”文本框中輸入“學分只能是1—6之間的整數”。如圖3.60所示。圖3.60設置“有效性規則”和“有效性文本”

5.保存本次設計

6.切換到“課程表”數據表視圖,此時如果在學分字段輸入一個超出范圍的數字,比如輸入大于6的7,當進入下一字段輸入或保存時,屏幕上會有出錯提示框,如圖3.61所示。圖3.61“有效性規則”起作用提示出錯八、索引建立一個索引是為了提高對表中數據的查詢速度,設置索引并不改變數據在數據表中的物理存儲順序,而只是規定了一種邏輯上的排序,當數據類型是“數字”、“文本”、“日期/時間”或“貨幣”時,可以建立索引。同一個表中可以建立一個或多個索引,可以對一個字段創建一個索引,也可以用字段組合(多個字段參與)創建一個索引。當使用多字段組合建立索引排序時,先按建索引時的第一個字段進行排序,只有在第一個字段遇到重復值時,這些有重復值的記錄啟用第二個索引字段進行排序。Access2003常用以下方式創建索引(1)主鍵索引。是一種唯一索引,可使用“有(無重復)”選項來建立,首先進入表的設計視圖,選擇要成為主鍵的字段,然后在菜單中選擇“表工具”|“設計”|“主鍵”,或者單擊工具欄中的設置或取消主鍵按鈕,完成建立主鍵索引。如果要取消主鍵,也是點擊已經是主鍵字段的該按鈕,它是一種開關鍵,如圖3.62所示。圖3.62建立主鍵索引

(2)對單個字段創建索引。首先進入表的設計視圖,選中要建索引的字段,然后在字段屬性區中選擇索引選項,單擊復選框,可以找到索引選項,如果選擇“無”,則該字段無索引;如果選擇“有(有重復)”,則建立一個允許重復值存在的索引;如果選擇“有(無重復)”,則對該字段建立一個唯一索引。如圖3.63所示。

圖3.63對某字段選擇索引(3)進入表的設計視圖,單擊鼠標右鍵選擇設計視圖的標題欄,在快捷菜單中選擇“索引”,或者單擊工具欄中的“索引”按鈕,這時可以查看到該表中已經建立的索引,此時也可以直接創建新索引或修改已經創建的索引。如圖3.64是成績表上的索引。

圖3.64成績表上的索引(4)利用SQL語句創建索引。如果需要建立較為復雜的索引,可以使用輸入SQL語句建立查詢的方式進行操作,有關SQL語句的使用不做要求。建立索引是為了加快查詢速度,系統在表中進行插入、刪除與修改時會自動維護索引,此時會降低操作的速度,故建立索引要適當。建立主鍵的無重復索引是維護實體完整性的重要措施,當表的主鍵是單一字段時,系統會自動為此字段創建“有(無重復)”索引,而復合主鍵要用手工建立。

3.4建立表之間的關聯關系數據庫中存儲數據不是孤立的,很多數據之間是有聯系的,它們代表著現實世界中實體間的相互關系,關系數據庫中的各個“表”代表著不同的實體,那么如何來反應表之間的聯系呢,關系數據庫Access2003提供了表關聯功能來方便地實現有關表之間關系的建立。

3.4.1建立表間關系的優越性可以建立表間關系是關系數據庫的一大特點,可以簡單、真實地反應客觀事物之間的聯系。1.減少數據冗余 有時候如果把數據只放在一個表中,會造成該表中有大量重復的字段數據,此時可以把此類數據另建一個表,然后通過建立兩表之間的關系來訪問。2.保持參照完整性 這是為了使關系數據庫里相關表中的數據同步且避免互相間的沖突,可以在“教師”表和“專業介紹”表建立關系的前提下,設置這兩個表之間的參照完整性,這可以保證兩個表中的信息互相匹配。

兩個表要建立關聯關系,它們之間要有相關聯的字段才行。以下是三種表之間對應關系字段通常采用的關聯方法。(1)創建一對一關系,相關聯的字段在兩個表中都是主鍵或唯一索引。(2)創建一對多關系,相關聯的字段在一個表中是主鍵或唯一索引,在另一個表中是外鍵。(3)多對多關系是另外增加第3個表,變成原來兩個表與第3個表的兩個一對多的關系,第3個表的主鍵包含兩個字段,在另外兩個表中分別是外鍵。3.4.2表間關聯關系的建立方法 只有按照客觀現實中的含義,將有關系的表之間建立關聯之后才有實際意義,才能發揮關系數據庫的巨大作用,在建立表間關聯前,先要給有關表建立主鍵或索引,關閉所有打開的表,建立關系的兩個表通過各自相匹配的字段進行關聯,通常是用兩個表中同名的字段(列),也可以不同名,但必須有相同的字段類型和相同的“字段大小”屬性。例3.11定義“學生課程管理系統”數據庫中教師表、學生表、成績表、課程表之間的關聯關系。解:按以下操作步驟:1.打開學生課程管理系統數據庫。2.單擊工具欄上的“關系”按鈕,或者選擇“工具|關系”菜單命令,此時可以打開“關系窗口”,然后選擇工具欄上的顯示表按鈕,打開“顯示表”對話框,如圖3.65所示。圖3.65“顯示表”對話框3.在顯示表對話框中,單擊“學生表”,再單擊“添加”按鈕,然后用同樣的方法將“成績表”、“教師表”、“課程表”添加到“關系”窗口中,如圖3.66所示。圖3.66“關系”窗口4.在“關系”窗口中,各表中字段名加粗的字段是其主鍵或聯合主鍵,選定“課程表”中的“教師編號”字段,按下鼠標左鍵將其拖曳到“教師表”中的“教師編號”字段上,放開鼠標,屏幕上顯示“編輯關系”對話框,如圖3.67所示。圖3.67“編輯關系”對話框5.用同樣的方法建立其它表間的關聯關系。如圖3.68圖3.68部分表間關聯關系

6.選擇“關閉”按鈕,系統會提示是否保存布局的修改,選擇“是”按鈕,即保存了剛剛建立的各表間關系,或者先單擊“保存”,再選“關閉”,則直接退出。3.3.4子數據表在兩個表建立了關聯關系以后,當其中之一是一對多關系中的主表時,系統會在此主表中創建與另一個表有關的子數據表,如圖3.69所示。圖3.69建立關聯后的教師表圖3.70打開子數據表3.4.4實施參照完整性在建立表之間的關聯關系時,為了保持以后相關操作時的數據完整性,系統提供了參照完整性功能選項來保證數據庫中建立關聯的表間關系的有效性,主要涉及以下三個方面:1.如果修改主表中的數據導致了關聯子表中出現無法對應的孤立記錄時,提示不允許改變主表的該數據。2.如果主表中的記錄在關聯子表中有匹配記錄,則主表中該記錄不可刪除。3.當主表中沒有相應記錄時,相關聯子表中不可添加相關記錄。如果選勾了“實施參照完整性”復選框后,當選擇“級聯更新相關字段”有效時,表示以后在更新主表中主鍵值時,系統會自動更新相關聯表中相關記錄的字段值;而當選擇“級聯刪除相關記錄”有效時,表示以后在刪除主表中記錄時,系統會自動刪除相關聯表的所有相關記錄。例3.12在“學生課程成績管理系統”數據庫中,對“學生表”和“成績表”兩個表中的學號設置為同步更新。解:“學生表”和“成績表”是一對多關聯關系,可以選擇“字段參照完整性”、“級聯更新相關字段”和“級聯刪除相關記錄”,三個復選框有效。

操作步驟如下:1、打開“學生課程管理系統”數據庫。2、選擇工具欄上的關系按鈕,或選擇“工具|關系”菜單命令,此時可以打開如前述圖3.66的“關系”窗口。3、在“學生表”和“成績表”的一對多關系連線上雙擊鼠標左鍵,或選中“學生表”和“成績表”的一對多關系連線,然后選擇“關系|編輯關系”菜單命令。此時會顯示“編輯關系”窗口。4、在“編輯關系”窗口中選勾“實施參照完整性”、“級聯更新相關字段”和“級聯刪除相關記錄”三個選項。5、單擊”確定”按鈕,保存相關設置。如圖3.71所示。圖3.71“編輯關系”中選勾三個選項6、分別在同一屏幕上打開“學生表”和“成績表”,將它們調整到靠近在一起,如圖3.72所示。圖3.72更改記錄袁建軍學號之前7.將“學生表”中的第一條記錄袁建軍的學號Yc082227012改為Yc082227010,再將光標移向下面的記錄,此時可以發現在“成績表”中該記錄的學號自動修改為Yc082227010,如圖3.73所示。圖3.73更改記錄袁建軍學號之后3.4.5編輯表間關系對于已經創建的表間關系,可以對其重新修改,選擇“工具|關系”菜單命令或單擊工具欄上的“關系”按鈕調出關系畫面,打開“編輯關系”對話框,就能直接進行修改。3.4.6刪除表間關系類似上述編輯表間關系,可以對已經建立表間關系的兩個表之間的線進行刪除,在快捷菜單中選擇“刪除”命令,連線消失,即已刪除了兩個表間的關系。3.4.7查閱向導通常表中字段的數據都是由用戶直接輸入,或從其它數據源導入。查閱向導可以將表中某一字段的數據內容從另一個表的字段中導入過來。例3.13將成績表中的“課程名”字段的數據內容來源設置為教師表的“系別”字段數據內容。解:本題可利用“查閱向導”功能使得成績表中的“課程名”字段數據內容通過下拉列表選擇來自于教師表中“系別”字段的數據內容,操作步驟如下:1.打開相關數據庫,選擇成績表,并單擊“設計”按鈕,得到其設計視圖。2.在其設計視圖中選擇“課程名”字段,并打開其“數據類型”下拉列表,選擇其中“查閱向導”命令如圖3.74所示。圖3.74成績表的查閱向導3.單擊“查閱向導”,得到“查閱向導”對話框,如圖3.75所示。圖3.75“查閱向導”對話框4.在圖3.75中選擇“使用查詢到查閱表或查詢中的值”,然后單擊下一步打開下一對話框,如圖3.76所示。圖3.76選擇教師表5.選擇圖中“表”單選按鈕,選擇列表框中教師表,單擊“下一步”按鈕,打開下一對話框,如圖3.77所示。圖3.77選擇“系別”字段6.在圖3.77中,從“可用字段”中選擇“系別”字段到“選定字段”區,單擊“下一步”按鈕,打開下一對話框,如圖3.78所示。圖3.78選擇按系別升序排序7.在圖3.78中選擇“系別”按系統默認的“升序”排序,單擊“下一步”按鈕,得到指定查閱列的寬度對話框,此時可以調整寬度,選擇是否隱藏鍵列復選框。如圖3.79對話框所示。圖3.79指定查閱列的寬度8.單擊“下一步”按鈕,得到如圖3.80對話框,用“系別”作為標簽,單擊“完成”按鈕,打開提示保存對話框,單擊“是”。圖3.80指定查閱列標簽9.打開成績表,單擊“課程名”字段列右邊的按鈕,顯示出下拉列表,其中可選擇的數據內容變成教師表中“系別”字段的內容。如圖3.81所示。圖3.81“課程名”字段用系別內容輸入3.5調整表的外觀主要方式有調整列寬、調整行高、改變字段順序、隱藏字段、顯示被隱藏的字段、凍結列、解凍列、設置字體、設置數據表格式等。3.5.1調整列寬有以下兩種方法:方法一:直接用鼠標拖移。打開表的數據內容窗口,移動鼠標到要調整列寬的列名邊線,當指針變成雙箭頭狀態后,按住鼠標左鍵往左或右拖動,當調整到合適的寬度時,松開鼠標左鍵即可。方法二:精確設定列寬。打開表的數據內容表窗口,移動鼠標到要調整列寬的列名上單擊鼠標右鍵,出現快捷菜單后,從中選擇“列寬”,出現“列寬”窗口后,在“列寬”欄輸入列寬的大小,然后選擇確定按鈕。3.5.2調整行高有如下兩種方法:方法一:直接用鼠標拖移。在打開的數據表中將鼠標移動到要調整行高的行邊線,當指針變成雙箭頭狀態后按住鼠標左鍵往上或往下拖動,當調整到合適的高度時,松開鼠標左鍵即可。方法二:精確設定行高。打開表的數據內容表窗口,然后移動鼠標到行選擇格上單擊鼠標右鍵,出現快捷菜單后,從中選擇“行高”,出現“行高”窗口后,在“行高”欄中輸入行高的大小,再選擇“確定”按鈕。對于調整列寬,只有被選取的列寬度會改變大小;而當調整行高時,所有的行高都會跟著統一調整。3.5.3改變字段順序在使用數據表視圖時,可以改變字段的順序,以滿足不同的查看需求,具體操作是先用鼠標選中想要移動的列名,然后拖動該列到它在表中新的列位置。注意:移動數據表視圖中的字段,不會改變設計視圖中字段的排列順序,而是僅改變它們在數據表視圖下的顯示順序,即沒有改變當初創建表結構時規定的順序。3.5.4隱藏字段當某些字段的數據不想被其他人看到,或在表的字段很多時,有的字段不需要輸入數據,則可以將一些字段隱藏起來。例3.15將成績表的姓名、學號列隱藏。解:利用隱藏字段功能,操作步驟如下:1.打開“成績表”的數據表視圖。2.單擊“姓名”字段選定器,同時按住鼠標左鍵,拖動鼠標到“學號”字段后松開,此時“姓名”、“學號”兩個字段底色變黑,表示被選中,見圖3.85所示。

圖3.85選定要隱藏的列3、選擇“格式|隱藏列”菜單命令,此時“姓名”和“學號”列被隱藏,如圖3.86所示。圖3.86姓名與學號列被隱藏另外還可以直接拖移鼠標,用調整列寬的方法,將列寬調整到0,也可以隱藏字段。3.5.5取消隱藏字段可以將隱藏過的列重新顯示出來,操作步驟如下:1.在數據庫窗口中選擇表對象,打開相關表,比如雙擊例3.15中已被隱藏列的“成績表”。2.在菜單欄中選擇“格式|取消隱藏列”命令,出現“取消隱藏列”對話框,如圖3.87所示。

圖3.87“取消隱藏列”對話框

3.5.6凍結列凍結列是指將字段固定在數據表的最左邊,當數據表的字段左右滾動時,該字段固定不動在最左邊。例3.16凍結學生表中的“姓名”字段。解:可以使用凍結“姓名”列命令,操作步驟如下:1.打開“學生表”的數據表視圖。2.單擊“姓名”字段選定器,“姓名”字段底色變黑,如圖3.88所示。

圖3.88選擇要凍結的“姓名”字段3.選擇菜單欄“格式”菜單中的“凍結列”命令。4.在“學生表”中移動水平滾動條,如圖3.89所示。可以看到學號,性別字段已經被移動過去看不見了,而被凍結的姓名字段一直固定顯示在最左邊。圖3.89凍結“姓名”字段后3.5.7解凍列可以對已經凍結的列進行恢復,即用解凍列命令,對打開的數據表用鼠標從菜單欄的“格式”菜單中選擇“取消對所有列的凍結”命令,解凍后,當滾動字段時,所有字段都依次進行滾動了。3.5.8設置字體可以對數據表的字體、大小、顏色等進行設置,操作方法是在菜單欄中“格式”菜單里選擇“字體”命令,會出現相關的字體窗口,可以在字體、字形、字號、顏色列表中選擇想要的內容,選好后單擊“確定”按鈕。3.5.9設置數據表格式在數據表視圖里,有單元網格線,有默認顯示,可以進一步改變顯示方式和顏色等,還可以重新設置背景顏色等。在格式菜單中選擇數據表命令,會出現相關的對話框。3.6記錄操作Access2003提供了針對表中的數據(記錄)進行排序、篩選的各種操作。3.6.1記錄排序一般在查看數據表中的數據(記錄)時,它們是按照主鍵升序或數據輸入表時的順序(無主鍵時)排序的,而在實際應用中,會出現不同的要求,排序是選擇表中的一個或幾個字段的值對所有記錄進行重新按升序或降序排列,對于不同數據類型的字段,其排列規則有所不同。在Access2003中進行記錄排序時,要注意下列情況:1.當按升序排列字段時,如果字段值為空值,會將包含空值的記錄排在前面。2.排序后的排序次序將和表、查詢或窗體一起保存。如果用這樣的對象產生新窗體或報表,則這些新窗體或報表會繼承對象的排序次序。3.如果在安裝Access2003時選擇的語言是“中文”,則默認按“中文”順序排列數據。4.數據類型為“OLE”、“備注”和“超鏈接”對象的字段不能排序。5.數據類型為“文本”的字段中如果含有數字,將被視為字符串而非數值來排序。例3.17在教師表中按“姓名”字段順序升序排序。解:按以下操作通過排序命令實現。1.打開教師表的數據視圖。2.把鼠標指向“姓名”字段列的任意一個單元格內,或用字段選定“姓名”列底色變黑。3.選擇“記錄|排序|升序排列”菜單命令,或單擊工具欄上的升序按鈕,或用快捷菜單中的升序命令,得到如圖3.92所示的排序結果。圖3.92按“姓名”字段排序后的教師表4.選擇“保存”命令,如圖直接關閉退出,系統會提示是否保存修改結果。3.6.2篩選記錄實際使用數據表時,往往只要挑選表中部分滿足特定條件的數據進行查看或處理,并且暫時不用顯示的數據也不刪除。則可以利用篩選記錄操作在數據表中為一個或多個字段指定條件,只有符合條件的記錄被篩選出來顯示。Access2003有四種篩選方法:一、按選定內容篩選這是一種最簡單的方法,可以利用“按選定內容篩選”命令。

例3.18在教師表中篩選出性別為“女”的所有記錄。

解:可以利用“按選定內容篩選”方法,操作步驟如下:1.打開教師表數據內容視圖。2.將光標移動到教師表“性別”字段中某一為“女”的單元格中,按鼠標右鍵快捷菜單中選擇“按選定內容篩選”命令,或單擊工具欄的“按選定內容篩選”按鈕,或選擇“記錄|篩選|按選定內容篩選”菜單命令,則會顯示出所有性別為“女”的教師記錄。二、按窗體篩選這是一種快速方法,不需要瀏覽整個表的記錄就可以同時對多個字段的值設置篩選,窗體篩選將數據表變成一個只包含單個空白記錄的數據表,其中每個字段都有一個可以下拉的列表框,可以從每個下拉列表中選取一個值作為篩選的條件,如果同時選多個條件,這些條件之間可以選定是“與”關系還是“或”關系,該操作可以通過選擇工具欄中的“按窗體篩選”命令

溫馨提示

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

評論

0/150

提交評論