目錄
MySQL是什麼
資料庫分為關聯式與非關聯式(NoSQL),MySQL
就是其中一種關聯式資料庫
關聯式
是指資料具有相互關聯的特性,不同的資料表間,可以透過特定的欄位將資料串起來
(join)
關聯式資料庫有一大學問是關於將資料做最有效率的儲存
,也就是如何設計、拆分資料表,這被稱為資料庫正規化
(Normalization)
What is a Relational Database?
安裝MySQL和workbench
workbench是方便操作MySQL的GUI
下方是教學
windows安裝MySQL
mac安裝MySQL
workbench的操作
操作
快捷鍵
執行全部指令: ctrl + shift + enter
執行該行指令: ctrl + enter
選擇schema: 點兩下schema名稱,之後會看到名稱變粗體,Object Info顯示Schema: ---
整理語句: ctrl + B
開新tab: ctrl + T
名詞解釋
名詞 | 解釋 | 其他 |
---|---|---|
DB server(database server) | 安裝且啟用了DBMS的伺服器(裝了DBMS且啟用的電腦也算) | |
DB(database) | table和資料的集合體 | |
DBMS(database management system) | 管理資料庫的系統,安裝在資料庫伺服器上 | ex: MySQL |
schema | 資料庫的藍圖,描述一資料庫由哪些物件組成 | MySQL的Schema等於DB |
table | 儲存資料的地方 | view |
column | 定義table儲存什麼屬性的資料 | |
row | 儲存一筆資料的地方 |
型別
只列一些常用的
字串
型別 | 說明 | 其他 |
---|---|---|
char(n) | 固定 長度的字串。最多 4,000 個字元。 |
|
varchar(n) | 可變長度的字串。最多 4,000 個字元。 |
數值
型別 | 說明 | 其他 |
---|---|---|
smallint | -32,768 到 32,767 | |
int | -2,147,483,648 到 2,147,483,647 | |
decimal(p,s) | 固定精 度和比例的數字。從 -10^38 +1 到 10^38 -1 |
p 必須是 1 到 38 之間的值,s 必須是 0 到 p 之間的值 |
float(n) | -1.79E + 308 到 1.79E + 308 的浮動精度數位資料 |
date
型別 | 說明 | 其他 |
---|---|---|
datetime | 1000-01-01 00:00:00 ~ 9999-12-31 23:59:59 | |
date | 僅存儲日期1000-01-01 ~ 9999-12-31 |
MySQL沒有陣列、物件
,所以要用JSON
的格式儲存,操作JSON的function可以看這篇
詳細可以看Day12:常用的資料庫資料型態