面試題: 資料庫:delete和trancate刪除表記錄的區別
delete和trancate刪除表記錄的區別
首先說相同點,就是他們都能刪除表中的資料,區別有兩點:
1:
delete語句在刪除記錄的時候可以有選擇的刪除某些資料(使用where子句),當然,如果不新增where子句,就是刪除所有記錄
trancete語句則是清空表中所有資料
2:
delete:當表中的主鍵是自動增長(auto_increment)時,用delete刪除完資料之後,再往表中插入資料,當資料的主鍵為空,其自動增長時,並不是從1開始
truncate:而truncate則做了這件事,它不僅將資料全部清空,還將主鍵自增的值初始為1。
總的來說可以用一句話區分:
delete只刪資料,不清痕跡;trancate既刪資料,又清痕跡。
補充一點:
drop為刪除整張表的操作,慎用!
相關文章
- delete和truncate刪除的區別delete
- 單表的更新UPDATE和刪除記錄DELETE(二十六)delete
- mysql支援跨表delete刪除多表記錄MySqldelete
- MYSQL資料庫表記錄刪除解決方案MySql資料庫
- 資料庫:drop、truncate、delete的區別資料庫delete
- mysql/mariadb學習記錄——建立刪除資料庫、表的基本命令MySql資料庫
- Mysql資料庫delete刪除後資料恢復報告MySql資料庫delete資料恢復
- 面試問題記錄 二 (資料庫、Linux、Redis)面試資料庫LinuxRedis
- 聊聊關於資料庫表記錄刪除都有哪些解決方式資料庫
- 【北亞資料庫資料恢復】使用delete未加where子句刪除全表資料的Mysql資料庫資料恢復資料庫資料恢復deleteMySql
- MySQL資料庫delete資料時,不支援表別名MySql資料庫delete
- 6.12php對資料庫的刪除和批量刪除PHP資料庫
- 面試官:Redis 過期刪除策略和記憶體淘汰策略有什麼區別?面試Redis記憶體
- GBase XDM(單機/分片叢集)資料庫 刪除記錄資料庫
- 如何刪除資料庫下的所有表(mysql)資料庫MySql
- MySQL防止delete命令刪除資料的兩種方法MySqldelete
- 簡單介紹mysql如何刪除資料表和關聯的資料表刪除詳情MySql
- 【C/C++】資料庫刪除大表C++資料庫
- ORACLE刪除-表分割槽和資料Oracle
- 【北亞資料恢復】誤刪除oracle表和誤刪除oracle表資料的資料恢復方法資料恢復Oracle
- iOS面試題-load 和 initlize的區別iOS面試題
- nginx面試題-nginx和apache的區別Nginx面試題Apache
- MySQL資料庫中刪除重複記錄的方法總結[推薦]MySql資料庫
- 資料庫面試題資料庫面試題
- 幾道特別難搞的資料庫面試題資料庫面試題
- MySQL刪除資料表MySql
- 面試題記錄面試題
- MySQL資料庫表誤刪除恢復(一)MySql資料庫
- 聊聊PG資料庫的防誤刪除問題資料庫
- Java經典面試題: == 和 equals( )的區別Java面試題
- .NET面試題(29) http和https的區別面試題HTTP
- indexedDB 刪除資料庫Index資料庫
- 2.11 刪除資料庫資料庫
- Laravel 資料庫裡的資料刪除Laravel資料庫
- SRVCTL 刪除和新增資料庫服務資料庫
- MariaDB刪除重複記錄效能測試
- python 刪除大表資料Python
- 前端筆試題面試題記錄前端筆試面試題