好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > MySQL刪除表操作實現(delete、truncate、drop的區別)

MySQL刪除表操作實現(delete、truncate、drop的區別)

熱門標簽:常州網絡外呼系統開發 外呼系統電銷受騙 走過哪個省地圖標注 萊西市地圖標注 巫師三血與酒地圖標注 銷售語音電話機器人 在哪里申請400電話 安徽ai電話電銷機器人有效果嗎 400電話申請信用卡

本文主要講mysql中三種刪除表的操作,delete語句、truncate語句以及drop語句的區別:

簡介

delete

1、刪除整張表的數據:

delete from table_name;

2、刪除部分數據,添加where子句:

delete from table_name where...;

3、說明

  1)、屬于DML語言,每次刪除一行,都在事務日志中為所刪除的每行記錄一項。產生rollback,事務提交之后才生效;如果有相應的 trigger,執行的時候將被觸發,如果刪除大數據量的表速度會很慢。
  2)、刪除表中數據而不刪除表的結構(定義),同時也不釋放空間。

truncate

1、只能操作表,將表中數據全部刪除,在功能上和不帶where子句的delete語句相同:

truncate table table_name;

2、說明

  1)、默認情況下,truncate通過釋放存儲表數據所用的數據頁來刪除數據,并且只在事務日志中記錄頁的釋放。所以使用的系統和事務日志資源少,可以使用reuse storage; truncate會將高水線復位(回到最開始).
  2 )、 truncate是DDL語言, 操作立即生效,自動提交,原數據不放到rollback segment中,不能回滾. 操作不觸發trigger.
  3 )、刪除內容、釋放空間但不刪除表的結構(定義)。

drop

1、drop語句將刪除表的結構,以及被依賴的約束(constrain),觸發器(trigger),索引(index);

drop table table_name;

2、說明
  1)、刪除之后,依賴于該表的存儲過程/函數將保留,但是變為invalid狀態.
  2)、drop也屬于DDL語言,立即執行,執行速度最快
  3)、刪除內容和定義,釋放空間。

區別

1、表和索引所占空間:
  當表被TRUNCATE 后,這個表和索引所占用的空間會恢復到初始大小;
  DELETE操作不會減少表或索引所占用的空間;
  DROP語句將表所占用的空間全釋放掉。

2、應用范圍:
  TRUNCATE 只能對table;
  DELETE可以是table和view。

3、執行速度: drop > truncate > delete

4、delete from刪空表后,會保留一個空的頁,truncate在表中不會留有任何頁。

5、DELETE語句執行刪除的過程是每次從表中刪除一行,并且同時將該行的刪除操作作為事務記錄在日志中保存以便進行進行回滾操作。

TRUNCATE TABLE 則一次性地從表中刪除所有的數據并不把單獨的刪除操作記錄記入日志保存,刪除行是不能恢復的。并且在刪除的過程中不會激活與表有關的刪除觸發器。執行速度快。

6、當使用行鎖執行 DELETE 語句時,將鎖定表中各行以便刪除。truncate始終鎖定表和頁,而不是鎖定各行。

7、如果有identity產生的自增id列,delete from后仍然從上次的數開始增加,即種子不變;

使用truncate刪除之后,種子會恢復到初始值。

總結

1、delete 語句可以使用where子句實現部分刪除,而truncate不可以,會將表中的整個數據全部刪除,使用時,可以按需求選擇;
2、如果想從表中刪除所有的數據,不要使用delete,可以使用truncate語句,因為這樣執行速度更快。truncate語句實際是刪除原來的表然后重新建立一個新表;
3、在沒有備份情況下,謹慎使用 drop 與 truncate。要刪除表結構使用drop;
4、對于由 FOREIGN KEY 約束引用的表,不能使用 TRUNCATE TABLE,而應使用不帶 WHERE 子句的 DELETE 語句。由于 TRUNCATE TABLE 不記錄在日志中,所以它不能激活觸發器。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • MySQL Truncate用法詳解
  • MySQL中truncate誤操作后的數據恢復案例
  • mysql 刪除操作(delete+TRUNCATE)
  • MySQL刪除數據Delete與Truncate語句使用比較
  • 詳解MySQL中DROP,TRUNCATE 和DELETE的區別實現mysql從零開始
  • MySQL用truncate命令快速清空一個數據庫中的所有表

標簽:河北 陽江 果洛 赤峰 來賓 煙臺 鞍山 黃石

巨人網絡通訊聲明:本文標題《MySQL刪除表操作實現(delete、truncate、drop的區別)》,本文關鍵詞  MySQL,刪除,表,操作,實現,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL刪除表操作實現(delete、truncate、drop的區別)》相關的同類信息!
  • 本頁收集關于MySQL刪除表操作實現(delete、truncate、drop的區別)的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 在线成人影院无名网| 成人一级毛片| 欧美黑白配系列| 公共场合高潮(h)公交车| 欧美又粗又大AAA片| 涩涩涩综合在线亚洲第一 | 国产?又黄?又爽艳乳荡乳| 好吊操这里只有精品| 深点用力我要喷出来了| 叼嘿软件直播免费下载| 国产伦精品一区二区三区妓女下载| 水浒三级艳史电影| 冲动的惩罚未删减完整版| 九色丨PORNY丨蝌蚪视频| 光棍天堂2019在线观看视频| 99视频都是精品热在线播放| 国产特黄三级三级三级| 色噜噜狠狠在爱丁香| 女人让男人桶app免费大全| 强睡邻居人妻中文字幕| 成人做爰黄AA片免费看李晨视频| 男女激情视频国产免费观看| 亚洲综合综合在线| 毛片免费看| 白丝女仆被强扒内裤| 亚洲乱妇| 嗯啊嗯哼| 我和姝姝在一起裸睡硬了| 国语自产偷拍精品视频偷最新| 欧美肥妇BwBWBWBXx小说| 老女人任你躁久久久久久老妇| 午夜dj免费高清在线观看影院| 国产女人的高潮国语对白入口| 女同做爰全过程免费的网站| 欧美日韩一道本| 日韩一区精品视频在线看| 99热在线免费| 蜜臀AV人妻精品无码国语百度云| 夫君的至爱小说| 羞羞漫画小说| 亚洲AV秘?无码一区桃乃|