Access2007數(shù)據(jù)庫設(shè)計(jì)的基本內(nèi)容就是明確應(yīng)該建立哪些表以及如何和建立表與表之間的關(guān)系。創(chuàng)建Access2007表之前,應(yīng)該仔細(xì)評估需求并規(guī)劃數(shù)據(jù)庫,以確定所需的表。
一、Access2007表與主題
在Access2007中,表是具有相同主題的數(shù)據(jù)集合。依據(jù)每個不同的主題創(chuàng)建不同的表,存放不同的數(shù)據(jù)。例如學(xué)生表就是關(guān)于學(xué)生信息的主題,它包括學(xué)號、姓名、性別、入學(xué)日期等信息。
對于本文中主要介紹的示例數(shù)據(jù)庫——“教學(xué)管理”數(shù)據(jù)庫而言,所涉及的主題和所對應(yīng)的表,如表1所示。
表1 教學(xué)管理數(shù)據(jù)庫中的主題和表
主題 | 表 | 主題 | 表 |
教師基本信息 | 教師 | 學(xué)生基本信息 | 學(xué)生 |
教師授課信息 | 授課 | 選課信息 | 選課 |
課程信息 | 課程 | 成績信息 | 成績 |
系別信息 | 系別 |
|
|
二、Access2007表的結(jié)構(gòu)
Access2007的表又稱為二維表,它有若干行和列組成。下面介紹一下表的有關(guān)概念。
1、字段:表中的列稱為字段,它描述數(shù)據(jù)的某類特性。例如學(xué)生表中的學(xué)號、姓名、性別等,分別描述了學(xué)生的不同特性。
2、紀(jì)錄:表的行稱為紀(jì)錄,它由若干個字段組成。一個課程表的紀(jì)錄由課程號、課程名稱、課程性質(zhì)和考試類別等字段組成,紀(jì)錄描述了某一具體對象(課程)的全部信息。
3、值:紀(jì)錄和字段的相交處是值——存儲的數(shù)據(jù),它一般有一定的取值范圍。
4、主鍵:其值用來唯一標(biāo)識表中的每一個紀(jì)錄的一個或多個字段,又成為主關(guān)鍵字。例如學(xué)生表中學(xué)號是主鍵。
5、外鍵:引用其他表中的主鍵的字段,外鍵用于表明表之間的關(guān)系。
三、表之間的關(guān)系
表必須相互協(xié)調(diào),以便檢索相關(guān)信息。這種協(xié)調(diào)是通過創(chuàng)建表之間的關(guān)系來實(shí)現(xiàn)的。關(guān)系數(shù)據(jù)庫的工作方式是:使每個表的鍵字段(主鍵或外鍵)中的數(shù)據(jù)與其他表中的數(shù)據(jù)匹配。大多數(shù)情況下,這些匹配字段是一個表中的主鍵,并且是其他表中的外鍵。例如,通過在學(xué)生表的學(xué)號字段和選課表的相同字段之間創(chuàng)建關(guān)系,可以將學(xué)生與選課相關(guān)聯(lián)。
在關(guān)系數(shù)據(jù)庫中,表與表之間的關(guān)系有三種:
1、一對多的關(guān)系:這是最普通的關(guān)系。對于表A的每一個紀(jì)錄,表B中有幾個紀(jì)錄(可以為0)和它相關(guān);反之,對于表B的每一個紀(jì)錄,表A中至多有一個紀(jì)錄和它相關(guān)。例如
對于學(xué)生表的一個學(xué)號,在成績表中有多門課程的成績與之相對應(yīng)。
2、多對多的關(guān)系:在這類關(guān)系中,對于表A的每一個紀(jì)錄,表B中有多個紀(jì)錄(可以為0)和它相關(guān),同樣,對于表B的每有一個紀(jì)錄,表A中有多個紀(jì)錄(可以為0)和它相關(guān)。例如,學(xué)生表和課程表,每個學(xué)生可以選擇多門課程,每門課程可以有多個學(xué)生選修。對于多對多的關(guān)系,需要建立第三個表,把多對多關(guān)系轉(zhuǎn)化為兩個一對多關(guān)系。例如,對于學(xué)生表和課程表的多對多關(guān)系,增加一個成績表,轉(zhuǎn)換成為兩個一對多關(guān)系。
3、一對一關(guān)系;在此類關(guān)系類型中,對于表A的每一個紀(jì)錄,表B中至多有一個紀(jì)錄和它相關(guān),反之亦然。例如,對于學(xué)生表和學(xué)生健康表(由學(xué)號、姓名、性別、身高、出生日期等字段組成),學(xué)生表中的每一個學(xué)號與學(xué)生健康表中的一個學(xué)號相對應(yīng)。
在關(guān)系性數(shù)據(jù)庫中,大量處理的是一對多關(guān)系,也有少量的一對一關(guān)系。
四、字段的類型
字段的類型就是字段的數(shù)據(jù)類型,不同數(shù)據(jù)類型的字段用來表達(dá)不同的信息。在設(shè)計(jì)表時,必須要定義表中字段使用的數(shù)據(jù)類型。Access2007中共有文本、數(shù)字、日期/時間、查閱向?qū)Ш透郊?/span>11種數(shù)據(jù)類型。
數(shù)字性數(shù)據(jù)還細(xì)分為字節(jié)型、整型、長整型、單精度型和雙精度型等幾種類型。
不同數(shù)據(jù)類型,數(shù)據(jù)的存儲方式不同,占用的空間大小也不同。字節(jié)型占1個字節(jié),它能表示數(shù)的范圍為0~255之間的整數(shù);整型占2個字節(jié),它能表示數(shù)的范圍為-32768~32767;而長整型要占4個字節(jié),它能表示的整型數(shù)的范圍更大一些。使用哪種類型,要根據(jù)實(shí)際需要而定。比如表示人的年齡,使用字節(jié)型就可以了;表示學(xué)生成績,如果要考慮小數(shù),則要采用單精度數(shù)字類型,如只考慮整數(shù),則要采用整型數(shù)字類型。Access2007中的數(shù)據(jù)類型,如表2所示。
表2 Access2007中的數(shù)據(jù)類型
類型名稱 | 接受的數(shù)據(jù) | 大小 |
文本 | 文本或文本和數(shù)字的組合 | 最多為255字節(jié) |
數(shù)字 | 用于數(shù)學(xué)計(jì)算的數(shù)值數(shù)據(jù) | 1、2、4、8個字節(jié) |
日期/時間 | 100~9999年的日期和時間值 | 8個字節(jié) |
貨幣 | 用于數(shù)值數(shù)據(jù),整數(shù)位為15,小數(shù)位為4 | 8個字節(jié) |
自動編號 | 自動給每一條紀(jì)錄分配唯一的遞增,唯一數(shù)值 | 4個字節(jié) |
是/否 | 只包含兩者之一(Yes/No,True/False,On/Off) | 一位 |
備注 | 長文本、文本和數(shù)字的組合或具有RTF格式的文本 | 最多為65535個字符 |
OLE對象 | 用于存儲其他Windows應(yīng)用程序中的OLE對象 | 最多為1GB |
超級連接 | 用來存放連接到本地和網(wǎng)絡(luò)上的地址,為文本形式 |
|
查閱向?qū)?/span> | 實(shí)際上不是數(shù)據(jù)類型,用來實(shí)現(xiàn)查閱另外表中的數(shù)據(jù)或從一個列表中選擇的字段 | 與執(zhí)行查閱的主鍵字段大小相同 |
附件 | 圖片、圖像、二進(jìn)制文件、office文件。是用于存儲數(shù)字圖像和任意類型的二進(jìn)制文件的首選數(shù)據(jù)類型 | 壓縮的附件為2GB,未壓縮的附件大小約為700KB |