如何一個SQL語句就刪除表中所有的數據
使用 TRUNCATE TABLE 刪除所有行
若要刪除表中的所有行,則 TRUNCATE TABLE 語句是一種快速、無日志記錄的方法。該語句總是比不帶條件的 DELETE 語句要快,因為 DELETE 語句要記錄對每行的刪除操作,而 TRUNCATE TABLE 語句只記錄整個數據頁的釋放。TRUNCATE TABLE 語句立即釋放由該表的數據和索引占用的所有空間。所有索引的分發頁也將釋放。
與 DELETE 語句相同,使用 TRUNCATE TABLE 清空的表的定義,同其索引和其它相關的對象一起仍保留在數據庫中。必須使用 DROP TABLE 語句才能除去表的定義。
TRUNCATE TABLE tablename
----------------------
TRUNCATE TABLE
刪除表中的所有行,而不記錄單個行刪除操作。語法TRUNCATE TABLE name參數name
是要截斷的表的名稱或要刪除其全部行的表的名稱。注釋TRUNCATE TABLE 在功能上與不帶 WHERE 子句的 DELETE 語句相同:二者均刪除表中的全部行。但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系統和事務日志資源少。
DELETE 語句每次刪除一行,并在事務日志中為所刪除的每行記錄一項。TRUNCATE TABLE 通過釋放存儲表數據所用的數據頁來刪除數據,并且只在事務日志中記錄頁的釋放。
TRUNCATE TABLE 刪除表中的所有行,但表結構及其列、約束、索引等保持不變。新行標識所用的計數值重置為該列的種子。如果想保留標識計數值,請改用 DELETE。如果要刪除表定義及其數據,請使用 DROP TABLE 語句。
對于由 FOREIGN KEY 約束引用的表,不能使用 TRUNCATE TABLE,而應使用不帶 WHERE 子句的 DELETE 語句。由于 TRUNCATE TABLE 不記錄在日志中,所以它不能激活觸發器。
TRUNCATE TABLE 不能用于參與了索引視圖的表。示例下例刪除 authors 表中的所有數據。
怎樣用sql語言刪除一行數據
首先你要確定能夠唯一確定你那一行數據的字段或字段組合是哪些,
DELETE FROM 表名 WHERE 字段1 = '' and 字段2 = '' and 。字段1,。為能夠唯一確定某一行數據的字段組合,‘’中填寫你要刪除的字段具體值就可以了
如果有主鍵,則直接利用主鍵確定某一行就可以了。
DELETE FROM 表名 WHERE 主鍵 = ‘具體值’。
delete from ms_cf01 where brxm='張三' and id='7598';
其中: ms_cf01 為你所要刪除那條數據所屬的表。
brxm,id 為你所要刪除數據的條件。
上面的語句實現的效果是:刪除表ms_cf01中,符合brxm等于張三 且 id等于7598的行數據。
轉載請注明出處華閱文章網 » 刪除數據的sql語句