1.1.3 數據模型 數據模型就是從現實世界到機器世界的一個中間層次。是數據管理系統用來表示實體及實體間聯系的方法。
一.實體描述
1 .實體
客觀存在并相互區別的事物成為實體。如:學生、教師、課程。
2 .實體的屬性
描述實體的特性。如學生實體用學號、姓名、性別等屬性描述。
3 .實體集和實體型
屬性值的集合表示一個實體,而屬性的集合表示一種實體的類型,稱為實體型。同類型的實體的集合,稱為實體集。
二.實體間聯系及種類
實體之間的對應關系稱為聯系。如:一個學生可以選修多門課程,同一門課程可以由多名教師講授。
有三種類型:
1 .一對一聯系
如:人事部門的教師表和財務部門的工資表之間就存在一對一聯系。
2 .一對多聯系
如:部門表與教師表之間就存在一對多的聯系。
3 .多對多聯系
如:學生表和課程表之間存在多對多的聯系。
三.數據模型簡介
數據模型是數據庫管理系統用來表示實體間聯系的方法。
任何一個數據庫管理系統都是基于某種數據模型的。數據管理系統所支持的數據模型有三種:層次模型、網狀模型、關系模型。
1 .層次模型
用樹型結構表示各類實體以及實體之間的聯系。典型代表: IBM 的 IMS 。
( 1 )有且僅有一個節點無雙親,這個節點稱為“根節點”。
( 2 )其他節點有且僅有一個雙親。
特點:對一對多的層次關系描述非常自然、直觀、容易理解,但不能直接表示出多對多的聯系。
2 .網狀模型
( 1 )允許一個以上的節點無雙親。
( 2 )一個節點可以有多于一個的雙親。
典型代表: DBTG 系統,也稱 CODASYL 系統。
特點是:能直接表示非樹型結構。
3 .關系數據模型
IBM E.F.Codd 于 1970 首次提出。
用二維表結構來表示實體以及實體間聯系的模型。
特點是:理論基礎完備、模型簡單、說明性的查詢語言和使用方便。
1.2 關系數據庫
1.2.1 關系數據模型
一.關系術語
圖1-1學生表
1 .關系
一個關系就是一個二維表,每個關系有一個關系名。在 Access 中,一個關系存儲為一個表,具有一個表名。
對關系的描述稱為 關系模式 ,一個關系模式對應一個關系的結構。其格式為:
關系名(屬性名 1 ,屬性名 2 ,…,屬性名 n )
在 Access 中:
表名(字段名 1 ,字段名 2 ,…,字段名 n )
2 .元組
二維表(關系)中的每一行。對應在表中為記錄。
3 .屬性
二維表(關系)中的每一列。對應在表中為字段。
4 .域
屬性的取值范圍。如:性別只能取“男”和“女”。
5 .關鍵字
唯一地標識一元組的屬性或屬性集合。如:教師表中的編號。在 Access 中,主關鍵字和候選關鍵字就起唯一標識一個元組的作用。
6 .外部關鍵字
如果一個表的字段不是本表的主關鍵字,而是另外一個表的主關鍵字和候選關鍵字,這個字段(屬性)就稱為外關鍵字。
二.關系的特點
1 .關系必須規范化
是指關系模型中的每一個關系模式都必須滿足一定的要求。最基本的要求是每個屬性必須是不可分割的數據單元,即表中不能再包含表。
2 .在同一個關系中不能出現相同的屬性名。
3 .關系中不允許有完全相同的元組,即冗余。
4 .在一個關系中元組的次序無關緊要。
5 .在一個關系中列的次序無關緊要。
1.2 關系數據庫
1.2.2 關系運算
一.傳統的集合運算
1 .并
兩個結構相同的關系的并是由屬于這兩個關系的元組組成的集合。
2 .差
兩個結構相同的關系 R 和 S 的差是由屬于 R 但不屬于 S 的元組組成的集合。
3 .交
兩個結構相同的關系 R 和 S 的交是由既屬于 R 又屬于 S 的元組組成的集合。
二.專門的關系運算
1 .選擇
從關系中找出滿足給定條件的元組的操作。
2 .投影
從關系模式中指定若干屬性組成新的關系。
3 .聯接
將兩個關系模式拼接成為一個更寬的關系模式,生成的新的關系中包含滿足聯接條件的元組。
4 .自然聯接
在聯接運算中,按照字段值對應相等為條件進行的聯接操作。去掉重復字段。
1.3 數據庫設計基礎
1.3.1 數據庫的設計步驟
一.設計原則
1 .關系數據庫的設計應遵從概念單一化“一事一地”的原則
2 .避免在表之間出現重復字段
3 .表中的字段必須是原始數據和基本數據元素
4 .用外部關鍵字保證有關聯的表之間聯系
二.設計步驟
1 .需求分析
( 1 )信息需求
( 2 )處理需求
( 3 )安全性和完整性需求
2 .確定需求的表
遵從概念單一化“一事一地”的原則,即一個表描述一個實體或實體間的一種聯系,并將這些信息分成各種基本實體。
3 .確定所需字段
( 1 )每個字段直接和表的實體相關
( 2 )以最小的邏輯單位存儲信息
( 3 )表中的字段必須是原始數據
( 4 )確定主關鍵字字段
4 .確定聯系
對于一對多的聯系,可以將其中“一方”表的主關鍵字放到“多方”表中作為外關鍵字。“一方”用索引關鍵字,“多方”使用普通索引關鍵字。
對于一對一的聯系,兩個表中使用同樣的主關鍵字字段。
對于多對多的聯系,為了避免數據重復,一般建立第三個表,把多對多的聯系分解兩個一對多的聯系。這個第三個表可以看成紐帶。紐帶表不一定需要自己的主鍵,如果需要,可以將它所聯系的兩個表的主關鍵字做為組合關鍵字指定為主關鍵字。
5 .設計求精
檢查可能存在的缺陷和需要改進的地方,這些缺陷可能會使數據難以使用和維護。
( 1 )是否忘記了字段?
( 2 )是否存在大量空白字段?
( 3 )是否包含了同樣字段的表?
( 4 )表中是否帶有大量不屬于某實體的字段?
( 5 )是否在某個表中重復輸入同樣的數據?
( 6 )是否為每個表選擇了合適的主關鍵字?
( 7 )是否有字段很多而記錄很少的表,并且許多記錄中的字段值為空?
1.4 SQL 基本命令
SQL ( Structure Query Language ,結構化查詢語言)是在數據庫系統中應用廣泛的數據庫查詢語言,它包括了數據定義、查詢、操縱和控制 4 種功能。
SQL 中的兩個基本概念:
基本表:本身獨立存在的表。
視圖:從一個或多個基本表導出的表。它本身不獨立存儲在數據庫中,即數據庫中存放視圖的定義,而不存放視圖對應的數據。
1.4.1 SQL 基本語句
最常見的 SQL 語句是 SELECT 。
基本格式:
SELECT [ALL/DISTINCT] *|< 字段列表 >
FROM < 表名 > [WHERE < 條件表達式 >]
[ORDER BY < 列名 > {[ASC|DESC]}]
例:在 Access 中,在教師表中查詢姓名為“王”的教師,并按照姓名升序排列。命令為:
SELECT * FROM 教師 WHERE 姓名 LIKE “ 王 %” ORDER BY 姓名 ASC
1.5 Access 簡介
Access 是一種關系型的桌面數據庫管理系統,是 Microsoft Office 套件產品之一。
1992 年 11 月推出 Access 1.0 , Microsoft 先后推出 2.0 , 7.0/95 , 8.0/97 , 9.0/2000 , 10.0/2002 ,直到 Access 2003 。
特點:
1 .具有方便實用的強大功能。
2 .可以利用各種圖例快速獲取數據。
3 .可以利用報表設計工具,方便生成報表。
4 .能處理多種數據類型。
5 .采用 OLE 技術,能方便創建和編輯多媒體數據庫。
6 .支持 ODBC 標準的 SQL 數據庫的數據。
7 .設計過程自動化,大大提高了數據庫的工作效率。
8 .具有較好的集成開發環境。
9 .提供了斷點設置、單步執行等調試功能。
10 .與 Internet/Intranet 的集成。
11 .可以將數據庫應用程序的建立移進用戶環境,并最終使用戶和應用程序開發者之間的關系淡化。
數據庫的系統結構:
Access 數據庫由數據庫對象和組兩部分組成,如圖 1-2 所示。其中對象分為 7 種:表、查詢、窗體、報表、數據訪問頁、宏、模塊。
表是數據庫的核心與基礎,存放中數據庫中的全部數據。報表、查詢和窗體都是從數據庫中獲取數據信息,以實現用戶的某一特定的需要。
表是用來存儲數據的對象,是數據庫的核心與基礎。表中的列為字段,行為記錄。
查詢是用來操作數據庫中的記錄對象,利用它可以按照一定的條件或準則從一個或多個表中篩選出需要操作的字段,并可以把它們集中起來,形成所謂的動態數據集,并顯示在一個虛擬的數據表窗口中。
窗體:數據庫與用戶進行交互操作的界面。其數據源可以是表或查詢。
報表:數據的輸出方式,可以將數據庫中需要的數據提取出來進行分析、整理和計算,并將數據以格式化的方式打印輸出。
數據訪問頁:是一種特殊的 Web 頁,用戶可以在此 Web 頁與 Access 數據庫中的數據進行聯接,查看、修改 Access 數據庫中的數據。
宏:一系列操作的集合。
模塊:將 Visual Basic for Application 聲明和過程作為一個單元進行保存的集合。
1.6 啟動和關閉 Access
1.6.1 啟動 Access
“開始 / 程序 /Microsoft Access”
1.6 啟動和關閉 Access
1.6.2 關閉 Access
4 種方法:
( 1 )單擊 Access 右上角的“關閉”按鈕
( 2 )選擇“文件”菜單中的“退出”命令
( 3 )使用 Alt+F4 快捷鍵
( 4 )使用 Alt+F+X 快捷鍵
希望與更多計算機等級考試的網友交流,請進入計算機等級考試論壇
更多信息請訪問:考試吧計算機等級考試欄目