資料庫
1、鍵:主鍵是表中的標誌列。乙個鍵可能由幾列組成。
可以使用鍵作為**之間的引用。
customerid是customers表的主鍵,當它出現在其他表,例如orders表中的時候就稱它為外來鍵。
2、模式
資料庫整套**的完整設計稱為資料庫的模式。
乙個模式應該顯示**及**的列、每個表的主鍵和外來鍵。
乙個模式並不會包含任何資料,但是我們可能希望在模式裡使用示例資料來解析這些資料的含義。
例如:customers(customerid, name, address, city)
orders(orderid, customerid, amount, date)
下劃線的元素表示該元素是所在關係的主鍵,斜體元素是所在關係的外來鍵。
3、關係
外來鍵表示兩個**資料的關係。根據關係雙方所含物件的多少,可以將這些關係分為一對
一、一對多、多對多。
設計資料庫
1、考慮建模的實際物件
要建模的每一種現實世界物件都需要有自己的表。
2、避免儲存冗餘資料
要避免3種情況的更新不規則:修改、插入和刪除不規則。
3、使用原子列值
對每一行的每個屬性只儲存乙個資料。下圖books ordered不符
當兩個物件存在多對多關係時,例如訂單和書籍的關係,需要建立以下乙個新錶,order_items
4、選擇有意義的鍵
應該確認所選擇的鍵是唯一的。
5、避免多個空屬性的設計
資料庫裡有許多空值是一件糟糕的事情。它極大的浪費空間,並且在統計列總量或對其他數值列應用計算函式時可能導致錯誤。
6、資料庫**型別
簡單表:描述現實世界物件的簡單表。這些表也可能包含其他簡單物件的鍵,它們之間有一對一或一對多的關係。
關聯表:描述兩個現實世界物件的多對多關係。
web資料庫架構
乙個典型的web資料庫事務包含以下步驟:
(1)使用者的web瀏覽器發出http請求,請求特定web頁面。例如,該使用者可能以html表單的形式,要求搜尋書店裡所有由thomson編寫的圖書。搜尋結果網頁稱為result.php。
(2)web伺服器收到result.php的請求,獲取該檔案,並將它傳到php引擎,要求它處理。
(3)php引擎開始解析指令碼。指令碼中有一條連線資料庫的命令,還有執行乙個查詢(執行搜尋圖書)的命令。php開啟通向mysql資料庫的連線,傳送適當的查詢。
(4)mysql伺服器接受資料庫查詢並處理。將結果(乙個圖書的列表)返回到php引擎。
(5)php引擎完成指令碼執行,通常,這包括將查詢結果格式化成html格式。然後再將輸出的html返回到web伺服器。
(6)web伺服器將html傳送到瀏覽器。這樣使用者就可以看到他所搜尋的圖書。
MySQL資料庫基本概念
基本概念 mysql資料庫服務 是mysql軟體 mysql例項和mysql資料庫幾個部分的總稱 mysql例項 是mysqld程序以及該程序持有的記憶體資源 mysql資料庫 是一系列物理檔案的集合,稱為mysql data目錄。乙個mysql資料庫可以建立多個db,預設情況下至少會有4個db t...
MySQL資料庫基本概念介紹
三 資料庫儲存型別 四 mysql資料庫介紹 五 mysql商業版與社群版 六 mysql產品陣營 七 mysql5.7手工編譯安裝 資料 表 資料庫 關係型資料庫特點 非關係型資料庫統特點 第一陣營 5.0 5.1陣營,可說是早期產品的延續 第二陣營 5.4 5.7陣營,更好地整合了mysql a...
mysql資料庫 資料庫基本概念(2)
資料庫 資料庫語言 資料庫定義語言 ddl create alter drop 資料庫操作語言 dml insert update delete 資料庫查詢語言 dql select 資料庫控制語言 dcl grant revoke commit等 乙個資料庫可以包括 表,檢視,函式,事件,查詢,資...