---
# System prepended metadata

title: 資料庫小筆記01：資料庫快速初探
tags: [SQL]

---

# 資料庫小筆記01：資料庫快速初探
###### tags: `SQL`
想要找的專有名詞，都會陸續收錄在這裡



### 什麼是SQL
結構查詢語言，Structure Query Language，可以藉由使用SQL來實踐對資料的CRUD功能

### CRUD是什麼
Create 資料
Read 資料
Update 資料
Delete 資料

這些功能是RDBMS具備的功能，人類透過撰寫SQL操作RDBMS，來CRUD資料

### RDBMS Relational Database Manage System
關聯式資料庫管理系統，根據[國家教育研究院](https://terms.naer.edu.tw/detail/1679555/)，關聯式資料庫最大的特色在於：
> 將資料間的關係用平面表格的方式來組合。

光看文字有些難懂，直接舉例，如果我今天開了一家線上唱片行，一開始會建立一個**商品清單**。


| 商品編號 | 商品名稱 | 商品價格 | 商品庫存|
| -------- | -------- | -------- | -------- |
| 1     |BTS盒裝唱片 |350 |32|
| 2| 告五人最新專輯 | 340 |18|


另外如果有網友註冊我的網站會員，我也會有一個**會員清單**

| 會員編號 | 會員ＩＤ | 電子信箱 | 郵寄地址|
| -------- | -------- | -------- | -------- |
| 1     |happy1314 |happy1314@email.com |...|
| 2| AngryBanana | AngryBanana@email.com |...|


這時如果有會員購買產品，我就會產出一個訂單list，但實質得留意的是，我的訂單會跟**商品清單、會員清單**有關聯

| 訂單編號 | 會員編號 | 購買商品編號 | 郵寄地址|
| -------- | -------- | -------- | -------- |
| 1     |23 |4 |...|
| 2| 40 | 3|...|

如果會員編號改動，或是商品編號改動，那麼訂單就會大亂，因為訂單list上面的會員編號，是要連回會員清單才查得到的；而商品清單也是同樣道理。


而像**MySQL、PostgreSQL、sqlite**都是管理這種關聯式資料的系統。
