Views: 4
這兩個指令很容易出事,所以我會建議不要精神不好的時候對資料庫直接做。
CRUD我們在上一堂課已經學了C跟R,接下來學U跟D
更新資料 UPDATE
UPDATE 資料表名稱 SET 欄位1=值1,欄位2=值2,欄位3=值3 WHERE 條件
我工作生涯這個是第一名容易出事情的指令,有時後系統BUG造成的資料BUG,就需要透過這個指令先將特定資料進行緊急修正,然後再修造成問題的程式。
⚠️我有遇過同事加班太累,
UPDATE
忘記加上條件,資料就被全部更新成相同的了。
Update示範
假如我要把id=2
的資料 name
改為阿土伯
通常我會先SELECT出來該有的值,看一下是不是我要的
SELECT id,name FROM [Regist] where id = 2
加入更新資料的指令
--更新資料
UPDATE [Regist] SET Name= '阿土伯' where id = 2
說明:我避免造成的寫法是這樣
- 先寫SELECT看原始資料,然後用EXCEL備份(可以直接SELECT後的結果視窗直接複製到EXCEL存檔,通常我會把這份資料寄給承辦人確認要修改的資料是這些嗎?)。
- 寫指令時候依序序寫
UPDATE 資料表名稱
、WHERE更新條件
、設定值,務必多檢查幾次,避免犯錯。
刪除資料 DELETE
DELETE 資料表名稱 WHERE 條件
我工作生涯這個是第二名容易出事情的指令是DELETE
,第一名是UPDATE
,出事情的原因都相同,忘記加上WHERE
,刪庫跑路這個梗就是這樣來的,WHERE寫壞掉可能什麼都沒發生,但忘記寫就把資料全刪除了,DELETE 資料表名稱 ,執行!💥💥💥。
刪除第id=2的資料
DELETE [Regist] WHERE id = 2
刪除常用的就是直接指定主鍵進行刪除,這張資料表的主鍵是ID欄位,因此直接指定要刪除那個ID即可。
快速全部清空的指令TRUNCATE TABLE⚠️⚠️⚠️
TRUNCATE TABLE 資料表名稱
⚠️⚠️⚠️這個指令可以直接清除該資料表全部資料,系統會做下面幾件事。
- 把資料全部清除
- 把全部的索引資料全部清除
- 把PK跳號重新設定為1
要刪除全部資料用TRUNCATE
指令會來的比DELETE
快速方便,在開發階段時常會異動資料表結構,有些異動會需要清除全部資料,這時候就會用這個指令。
0 Comments