# DataBase資料庫 ![](https://i.imgur.com/aKXyHsm.png) *上圖為網頁基本架構 ## 資料庫管理系統 (Database Management System) 我們會將其簡稱為 **DBMS** DBMS 是為了管理資料庫而設計出來的電腦軟體系統 --- ## 資料庫 主要是用來儲存使用者、系統資訊等各種資料的儲存位置 而目前的資料庫主要分為兩種類型 1. 關係資料庫 (Relational Database) 所謂關係資料庫,主要是用 **關係模型** 來組織資料的, 而這些資料表之間會用關係(relation)來做關聯 資料將會被儲存在 **資料表(Table)** 當中, 每個資料表是通過 **列(column)** 與 **行(row)** 來呈現的, 一般資料庫會由多個資料表組合而成 2. 非關係型資料庫 (NoSQL Database) 只要是不同於關係資料庫的儲存方式的話, 就會被歸類在非關係型資料庫 **我們會使用到的資料庫為MySQL 而他是在關係資料庫分類當中** --- ## 主鍵(Primary Key)、外鍵(Foreign Key) 關聯資料庫使用主鍵及外鍵進行關聯 1. 主鍵:用來識別資料的唯一性,主鍵不會是重複的或是空值(NULL) 2. 外鍵:用來建立與其他資料表之間的關聯,外鍵的值會是所關聯的資料表的主鍵值 --- ## SQL語法 當我們需要與資料庫進行動作時,我們會用到以下四種方式去進行操作 1. Create 新增資料 2. Read 查詢資料 3. Update 更新資料 4. Delete 刪除資料 這些動作我們會稱做 **CRUD** Create 新增資料(Insert) ```sql INSERT INTO `table_name`(column1,column2,column3,...) VALUES (value1,value2,value3,...) ``` Read 查詢資料(Select) ```sql SELECT * FROM `table_name` WHERE 1 ``` Update 更新資料 ```sql UPDATE `table_name` SET `colum1` = value1,`colum2` = value2,`colum3` = value3 WHERE 1 ``` Delete 刪除資料 ```sql DELETE FROM `table_name` WHERE 1 ```