MySQL 刪除命令的區別

2021-10-06 01:28:35 字數 1092 閱讀 7818

mysql-刪除命令的區別

一、drop命令:

1、刪除資料庫:drop database  [if exists] 資料庫名;

例: drop database if exists aa;

2、刪除資料表:drop  table  [ if  exists ]   表名;

例:drop table if exists student;

二、delete命令:

語法:delete   from   表名  [ where  condition ];

例:delete from grade where gradename="大一";

注:condition為篩選條件,如不指定則刪除該錶的所有列資料

三、truncate命令:

truncate命令用於完全清空表資料,但表結構、索引、約束等不變

語法:truncate  [table]    table_name;

例:truncate table grade;

四、truncate命令和delete命令的區別

相同:都能刪除資料、不刪除表結構,但truncate 速度更快

不同:使用truncate table重新設定auto_increment計數器

五、三種刪除的區別

1. 速度上說:drop > truncate > delete

2. 應用範圍:truncate 只能對table;delete可以是table和view

3. truncate 和delete只刪除資料,而不刪除表的結構,而drop則刪除整個表(結構和資料)。

4. truncate計數值重置。如果想保留標識計數值,用 delete。如果要刪除表定義及其資料,使用 drop table 語句。

truncate命令速度快,而且效率高,因為:truncate table 在功能上與不帶 where 子句的 delete 語句相同:二者均刪除表中的全部行。但 truncate table 比 delete 速度快,且使用的系統和事務日誌資源少。delete 語句每次刪除一行,並在事務日誌中為所刪除的每行記錄一項。truncate table 通過釋放儲存表資料所用的資料頁來刪除資料,並且只在事務日誌中記錄頁的釋放。

Mysql刪除表的區別

delete from 表名 1 只是刪除表中某些資料,表結構還在.2 delete 可以帶where子句來刪除一部分資料.資料可根據日誌恢復 3 自增長不恢復到初始值。truncate table 表名 1 truncate語句不能跟where條件,無法根據條件來刪除,只能全部刪除資料。2 自增長...

mysql刪除使用者命令 Mysql建立 刪除使用者

mysql中新增使用者,新建資料庫,使用者授權,刪除使用者,修改密碼 注意每行後邊都跟個 表示乙個命令語句結束 1.新建使用者 登入mysql mysql u root p 密碼 建立使用者 mysql insert into mysql.user host,user,password values...

mysql刪除表的命令

mysql 刪除表的幾種情況 1 drop table table name 刪除表全部資料和表結構,會立刻釋放磁碟空間,2 truncate table table name 刪除表全部資料,保留表結構,立刻釋放磁碟空間。此時可以通過desc tablename 來檢視表結構依然是存在的,但是使用...