DELETE 刪除紀錄
※注意DELETE記得要加上WHERE使用,否則會刪掉整張表的資料。
※DELETE用於刪除一列或多列,無法刪除單一欄。
※使用DELETE必須小心,每次執行都有可能意外刪除掉必要的資料。
※使用時定要確認WHERE所下的條件精確與否。
※由於DELETE不精準,因此刪除前最好先SELECT確定刪除對象是否正確。
example:
//原始資料表
name | age | gender | city |
江小魚 | 20 | 男 | 台北 |
林瀨瑤 | 20 | 女 | 東京 |
古小三 | 22 | 女 | 台北 |
塵在天 | 26 | 男 | 高雄 |
//刪除name欄位為江小魚的資料。
DELETE FROM employess
WHERE name = '江小魚';
name | age | gender | city |
林瀨瑤 | 20 | 女 | 東京 |
古小三 | 22 | 女 | 台北 |
塵在天 | 26 | 男 | 高雄 |
example:
//原始資料表
name | age | gender | city |
江小魚 | 20 | 男 | 台北 |
林瀨瑤 | 20 | 女 | 東京 |
古小三 | 22 | 女 | 台北 |
塵在天 | 26 | 男 | 高雄 |
//刪除年齡20歲且為女性的資料。
DELETE FROM employess
WHERE age = 20 AND gender = "女";
name | age | gender | city |
江小魚 | 20 | 男 | 台北 |
古小三 | 22 | 女 | 台北 |
塵在天 | 26 | 男 | 高雄 |
回憶一下INSERT,INSERT 與 DELETE
example:
//原始資料表
name | age | gender | city |
江小魚 | 20 | 男 | 台北 |
林瀨瑤 | 20 | 女 | 東京 |
古小三 | 22 | 女 | 台北 |
塵在天 | 26 | 男 | 高雄 |
//插入一筆資料
INSERT INTO employees_info
VALUES('吳英雄', 27, '男', '高雄' );
name | age | gender | city |
江小魚 | 20 | 男 | 台北 |
林瀨瑤 | 20 | 女 | 東京 |
古小三 | 22 | 女 | 台北 |
塵在天 | 26 | 男 | 高雄 |
吳英雄 | 27 | 男 | 高雄 |
//刪除前先用SELECT確定要刪除的資料是否正確。
SELECT * FROM employees_info
WHERE name = '林瀨瑤' AND gender = '女';
name | age | gender | city |
林瀨瑤 | 20 | 女 | 東京 |
//刪除資料
DELETE FROM employees_info
WHERE name = '林瀨瑤' AND gender = '女';
name | age | gender | city |
江小魚 | 20 | 男 | 台北 |
古小三 | 22 | 女 | 台北 |
塵在天 | 26 | 男 | 高雄 |
吳英雄 | 27 | 男 | 高雄 |
閱讀階段心得:
資料庫規劃在實做上其實會有Primary Key,來代表資料表中唯一的一筆資料,確保不重複,而在employess_info設計上通常會加上一各員工編號來做Primary Key,以便識別,關於PK後面在來敘述。
閱讀到此,我想,像關於員工資料,在實際情境下,能夠刪除員工資料的人員,必定是具有管理權限的人事單位,而刪除員工資料在搜尋上因該是會以員工身分證號來找出員工編號,再以員工編號來執行刪除,若是有誤之處請指正之。
UPDATE 改變資料
※UPDATE可以修改已存在的資料。
※UPDATE可以搭配WHERE使用。
※UPDATE能夠只調整需要改變的欄位。
example:
//原始資料表
name | type | price |
可樂 | 汽水 | 25 |
芒果汁 | 果汁 | 40 |
黃色淺水艇 | 酒精 | 100 |
台灣啤酒 | 酒精 | 40 |
香蕉冰沙 | 冰沙 | 60 |
//SET用來指定將改調整的欄位與值。
UPDATE drinks_info
SET price = 35
WHERE name = '可樂' AND price = 25;
name | type | price |
可樂 | 汽水 | 35 |
芒果汁 | 果汁 | 40 |
黃色淺水艇 | 酒精 | 100 |
台灣啤酒 | 酒精 | 40 |
香蕉冰沙 | 冰沙 | 60 |
※UPDATE若沒加上WHERE使用,則所有SET提到的欄位全部都會被修改。
如上例,若沒加上WHERE則所有的price都會被改成35。
example:
//SQL中可以對欄位套用基礎數學運算。
//原始資料表
name | type | price |
可樂 | 汽水 | 35 |
芒果汁 | 果汁 | 40 |
黃色淺水艇 | 酒精 | 100 |
台灣啤酒 | 酒精 | 40 |
香蕉冰沙 | 冰沙 | 60 |
//修改所有酒精類飲料的價格,原本價格再加五元
UPDATE drinks_info
SET price = price +5
WHERE name = '酒精' ;
name | type | price |
可樂 | 汽水 | 35 |
芒果汁 | 果汁 | 40 |
黃色淺水艇 | 酒精 | 105 |
台灣啤酒 | 酒精 | 45 |
香蕉冰沙 | 冰沙 | 60 |
沒有留言:
張貼留言