學習不要只停留在乙個角色上
概念模型,邏輯模型,物理模型
概念模型
現實世界的模型,
e-r圖
邏輯模型
關係模型,層次模型,網狀模型,物件模型
根據邏輯模型才有了相應的資料庫管理系統
(**模式組織和管理資料)
關係模型:關係模式,二維表的結構
物理模型
資料在儲存器上的儲存形式,os
資料模型分別對應資料庫設計的三個階段
資料模型和資料結構的關係
資料結構:現實世界資訊的抽象提取;抽象資訊之間的關係;儲存器存放和查詢這種關係的形式。後者也可以成為演算法。由此我們可以知道應用程式都要應用資料結構,初資料少,開發此處花費少,後資料多且複雜,開發此處花費多且重複
(乙個系統就得重新開發一次
)性高,為此開發資料庫管理系統,來個一勞永逸。
資料模型:模型,現實版的抽象完整版,具有結構,操作和約束,即資料模式包括資料結構(老大
),資料操作和資料約束。
外模式(檢視
),模式
(邏輯表
),內模式
(儲存結構)
資料庫應用程式依賴於外模式,外模式依賴於模式,模式依賴於內模式
兩級對映:模式發生改變時,通過修改外模式—模式的對映,就可以使外模式和應用程式不用改變;內模式發生改變時,通過修改模式—內模式的對映,使模式保持不變,從而使應用程式也可以保持不變
元組:表中的一行記錄就是元組
候選鍵:能惟一標識元組,並且不含多餘屬性的屬性
(組合屬性)
主鍵:從若干個候選鍵中指定乙個作為主鍵
超鍵:除可以包含乙個候選鍵外,還可以包含其它屬性
主屬性:候選鍵中的屬性為主屬性
非主屬性:不包含在候選鍵中的屬性為非主屬性
超鍵、候選鍵和主鍵
惟一標識乙個元組;
超鍵中可能有無關的屬性,而主鍵和候選鍵中屬性都是必要的屬性;
主鍵是候選鍵中的乙個,只不過它被資料庫設計者選中而稱為主鍵而已,事實主鍵也是候選鍵 例
1 學生(
學號,姓名,性別,
課程號)
超鍵:學號,課程號,姓名;學號,課程號,性別
主鍵:學號,課程號
候選鍵:學號,課程號
主屬性:學號,課程號
候選鍵中的所有屬性
非主屬性:姓名,性別
平凡函式:屬性
a包含屬性b
非平凡函式:屬性
a和屬性
b沒有包含的關係
第一正規化滿足非平凡函式,
部分函式依賴:主鍵由多個屬性組成,多個屬性中的部分屬性可以唯一確定其它非主屬性
完全函式依賴:不存在主鍵中部分屬性推出其它非主屬性
第二正規化滿足完全函式依賴
傳遞函式:x—
>y,y!
—>x,且y
—>z
第三正規化滿足非傳遞函式
關係性資料庫設計是否合理的依據是是否滿足正規化
滿足第三正規化一定也滿足第二正規化,滿足第二正規化一定滿足第三正規化
實體,屬性,聯絡
(可含屬性)
表結構的描述,即:表字段的描述
例:課程
(課程號,課程名稱
),如果題中有要求就寫出主鍵和外來鍵,如:主鍵為課程號
實體
直接轉化為關係模式
聯絡1對
1或1對
n:可以有自己的關係模式,也可以合併在乙個實體的關係模式中 m
對n:必須有自己的關係模式
無損鏈結分解
(三正規化,函式關係)
將乙個不合理的關係模式分解為多個合理的關係模式,且資訊沒有損失
集合運算子:
∪並,—差,∩交,
x笛卡爾積 r
和s 並:
t屬於r,或,t屬於
s; 差:
t屬於r,且,非t屬於
s; 交:
t屬於r,且,t屬於
s;笛卡爾積:t為
t1和t2組成,
t1屬於r,
t2屬於s
專門的關係運算子:
6
選取,∏投影,∞連線,*自然連線,÷除
選取:單錶的行集進行選擇
投影:單錶的字段進行選擇
連線:多表行集的連線
自然連線:多表等值的行集連線,且去掉重複的列 除:
算術比較運算子:大於,大於等於,小於,小於等於,等於,不等於
邏輯運算子:∧與,
∨或,7非
非過程化語言,使用者不需要使用者指出怎麼做,只需要使用者指出做什麼
例:顯示檔案的資料
過程化語言:定義變數,指定檔案,開啟檔案,將資料讀到變數中,關閉檔案,輸出資料
非過程化語言:一條語句就可以了,不需要告訴電腦如何做
填寫
sql語句的問題
屬性是否完成;
屬性完成了,剩下的就是約束
題型
e-r圖;實體之間的聯絡型別;
e-r圖轉關係模式;聯絡的屬性;關係模式的主鍵和外來鍵;
sql語句
思路
答案在題的描述中。依據題的描述做題,寫出來不用管其是否完整(不完整也不要新增題描述之外的屬性和實體)
1、確定實體;
2、確定屬性;
3、確定聯絡和聯絡的屬性。
上面有些具體內容沒有寫,有興趣的讀者可以看看我之前關於資料庫方面的部落格。
本篇部落格主要寫的是學習的結果,學習的過程沒有寫,但想要說的是學習的過程不是很順利,如果堅持了,你就可以打通!
資料庫總結
從這張表可以看到存在冗餘,西遊記,孫悟空 和 葫蘆娃,火娃 出現兩次,在資料量更大的情況下可能出現更多次。假設用這張表,然後候選鍵為什麼?你分析一下,小朋友的id肯定是候選鍵 候選鍵的概念,請翻閱資料庫教材 之一,就可以了麼。貌似不行,因為動漫電影不由這個決定,那麼動漫人物加上作為候選鍵之一,根據這...
資料庫總結
剛剛結束了short brain 英語學習的專案,趕快利用這段時間把期末考試期間拉下的資料庫的學習趕一下吧。雖然相隔時間不長,但是我已經對資料庫的概念和了解有一些模糊了。於是翻開了以前的相關筆記複習了一下,幫我喚起了部分的記憶。我在資料庫學習的初期參考了vb課本以及 sql入門經典 並且在學習的初期...
資料庫總結
一 常見資料庫 1 oracle是甲骨文的資料庫產品2 sql server是微軟的資料庫產品3 mysql是一種開源 的關係型資料庫管理系統 資料庫管理系統 dbms 資料庫管理員 dba 資料庫系統 dbs 二 1 dml 資料操作語言 用來插入 修改和刪除資料庫中的資料2 ddl 資料定義語言...