[微精通:網頁設計Vue + Node.js + MySQL] 5.1.MySQL & SQL (下)

想要永久保存資料,我們就必須使用資料庫,顧名思意,就是資料的倉庫。此為下半部份。

 

image/svg+xml { id : 1 , name : ' 瘋狂傑克 ' , age : 3.3 , isVegetarian : true , typeImgSrc : “z1.png" } use ZombieDB ; INSERT INTO Zombie ( Name , age, isVegetarian, typeImgSrc ) VALUES ( ' 瘋狂傑克 ' , 3 . 3 , 1 , ‘z1.png' ) ; SELECT LAST_INSERT_ID (); INSERT INTO Zombie ( Name , age, isVegetarian, typeImgSrc) VALUES ( ' 懶懶瑪琍 ' , 10 , 1 , 'z2.png' ); INSERT INTO Zombie ( Name , age, isVegetarian, typeImgSrc) VALUES ( ' ⼤提姆 ' , 5 , 0 , 'z3.png' ); INSERT INTO Zombie ( Name , age, isVegetarian, typeImgSrc) VALUES ( ' 史提夫 ' , 2 , 0 , 'z4.png' ); INSERT INTO Zombie ( Name , age, isVegetarian, typeImgSrc) VALUES ( ' 功夫李 ' , 1 , 1 , 'z5.png' ); use ZombieDB; SELECT * FROM Zombie ; SELECT id , Name FROM Zombie; use ZombieDB; UPDATE Zombie SET name = ' 懶懶瑪琍 ' , age = 11 , isVegetarian = 1 , typeImgSrc = 'z3.png' WHERE id = 2 ; use ZombieDB; DELETE FROM Zombie WHERE id = 1 ; 1. 建立殭屍資料庫 1. ’Schemas' 按右鍵在選 'Create Schema…’ ,在 MySQL Schema 即是⼀個資 料庫 Database 的意思,只是 MySQL Schema 結構來表⽰。 2. 資料庫名稱取名為 ’ZombieDB’ Character Set 字元集選 ’utf8' ,讓資料 庫⽀援萬過編碼,如此就可以輸入中⽂。 3. 按下 ’Apply' 後會產 ⽣建立資料庫的 SQL 指令。 3. 按下 ’Apply’ 執⾏ SQL 指令, 沒問題就會出現執⾏完成的訊息。 4. 按下 ’Close’ 後,就可 以在 Schemas 中看到 ZombieDB 這個資料庫。 2. 建立殭屍資料表 1. 打開 ZombieDB 資料 庫,對 'Tables' 按右鍵, ’Create Table...' 2. 這是 JavaScript 中的 殭屍物件,我們將要保相同 的結構建立在資料表中。 3. 依序建立 id name age isVegetarian typeImgScr 等四 個欄位,就像你在 Excel Numbers 中定義欄位⼀樣。 4. Datatype 資料型別即表⽰能存放的資料類 別,依序為 INT 整數、 VARCHAR(45)45 個字 元、 FLOAT 有⼩數的浮點數、 TINYINT(1) ⽤⼀ 個整數字元存放布林值的 true/false 值, 1 true 0 表⽰ false ,最後使⽤ VARCHAR(45)45 個字元存放 typeImgSrc 5. id 這欄 PK 會打勾, PK Primary Key 鍵,在資料庫中是⽤來識別⼀筆資料的主要鍵 值,因此不可重複。 NN 表⽰ Not Null ,不為空 值、⼀定要有值的意思。最後是 AI Auto Increment 表⽰⾃動新增,意謂著當新增⼀些 資料時, id 就會⾃動加 1 產⽣新的 id 值。 7. 按下 ’Apply’ 就會產⽣建立資料的 SQL 指令。 6. 最後輸入表格名稱 name ’Zombie' 8. 按下 ’Apply' 執⾏ SQL 令,會看到執⾏成功的訊息。 9. 按下 ’Close’ 後,即可以在 Schema\ZombieDB\Tables 找到 Zombie 資料表。 3. INSERT ,完成 'C' 殭屍資料的建立 w5_1_2 - insert.sql 1. 使⽤ use 指令使⽤ ZombieDB 資料庫。 3. 若要邁立新的資料,可 以使⽤ INSERT INTO 指令。 3. INTO 後⽅是要寫入資料的表格 - Zombie 4. 接著是⼀個⼩括號 (()) ,其 中放入要寫入資料欄位。注意, 其中沒有 id 欄位,原因是 id 被我 們設定為會產⽣新值的欄位。 5. 接著是⼀個 VALUES 關鍵字,後⾯⼀樣是⼀個⼩括號 (()) ,其中放入要寫入欄位的值,它與上⾯的欄位位置是對 應的,在此寫入第⼀個 殭狂傑克 ' 僵屍的資料。 2. 每⼀個完整的 SQL 皆可使⽤分號 (;) 做節束。 6. 表格中若有⾃動新增的值,如 id ,這時可透過 LAST_INSERT_ID() 函式取得⾃動產⽣的值,如此就做到讓 MySQL ⾃動產⽣不會重複的 id 值。 7. 依此類推,新增其他 4 隻殭屍資料。 8. 點選新 SQL 視窗鈕,在將上述的 SQL 貼到其中。 9. 接下來按下這個閃電的符號執⾏ SQL 10. 下⽅即是我們成功執⾏每個執令的訊息。 11. 中間的這個資訊,是我們使⽤ SELECT LAST_INSERT_ID() 所查 詢出來的資訊,即是建立第 1 隻殭 屍, MySQL ⾃動為我們編號的 1 4. SELECT ,完成 'R' 殭屍資料的讀取 w5_1_2 - select.sql 1. 透過 SELECT FROM 指令讀取 Zombie 表格中的殭屍資料。 2. 星號 (*) 表⽰獨取所有欄位的資料。 3. 當然,也可以只讀取想要的欄位,如 id Name 1 2 1 2 4. 執⾏後在第 1 SELECT 指令查訊⾴ - Zombie 1 ,會看到所有 的殭屍資料。 5. 在第 2 SELECT 指令 查詢⾴籤也會看到所有殭 屍資料,但只會有 id name 這兩個資訊。 5. UPDATE ,完成 'U' 殭屍資料的更新 w5_1_2 - update.sql 1. UPDATE SET 指令可以更新資料庫中的資料, UPDATE ⾯接的是要更新的表格 Zombie 2. SET 後⾯是要更 新的欄位與值,依序 的使⽤指派運算式 (=) 將右邊的值更新 ⾄左邊的欄位中。 3. 其中以逗號 (,) 隔開多個更新的動作。 4. 上述的更新動作,在透過 WHERE 做⼀個範圍的限 定,在此 id=2 表⽰限定當 id 2 資料進⾏更新動 作。 id 不重複的特定,加上 WHERE 的限制,這確保 了⼀次只會更新我們要的那筆殭屍資料。 5. 執⾏ UPDATE SQL 6. 再次查詢,你會發現 id 2 的殭屍資料變更為我們 更新後的殭屍資料。 6. DELETE ,完成 'D' 殭屍資料的刪除 w5_1_2 - delete.sql 1. DELETE FROM 會刪除表格中的資料, FROM 後⾯接的是要刪除的表格 Zombie 2. 透過 WHERE 限定要刪除的資料,在此 id 1 的資料將被刪除。 3. 執⾏ DELETE SQL 4. 再次查詢,你會發現 id 1 的殭屍資料不⾒了。

留言