標籤:image img ddl語言 where 系統 圖片 單行 ddl inf
使用SSMS刪除資料
1、串連資料庫、選擇資料表-》右鍵點擊,選擇所有行(或者選擇前200行)。
2、在資料視窗中選擇資料行(注意點擊最左邊列選擇整個資料行)-》在最左側右鍵點擊-》選擇刪除-》在彈出框中點擊確定。
3、樣本結果如下:
使用T-SQL指令碼刪除資料刪除單表單行資料
文法:delete from 資料庫名.dbo.表名 where 條件;
樣本:delete from testss.dbo.test1 where id=‘12‘;
刪除單表多行資料
文法:delete from 資料庫名.dbo.表名 where 條件或者delete top(n) from 資料庫名.dbo.表名 where 條件;
樣本:
delete from testss.dbo.test1 where id>=‘14‘ and id<=‘15‘;
delete from testss.dbo.test1 where id between ‘16‘ and ‘17‘;
delete from testss.dbo.test1 where id in (‘18‘,‘19‘);
delete top(2) from testss.dbo.test1 where id>=‘20‘;
刪除表中所有資料
文法:delete from 資料庫名.dbo.表名;
樣本:delete from testss.dbo.test1;
清空表中所有資料
文法:truncate table 資料庫名.dbo.表名;
樣本:truncate table testss.dbo.test1;
truncate和delete總結
效率:truncate比delete速度快且使用的系統和交易記錄資源少。
應用範圍:truncate只能對table,delete可以是table和view。
日誌操作:delete 語句每次刪除一行,並在交易記錄中為所刪除的每行記錄一項,所以可以對delete操作進行roll back
兩者差異:
1、truncate在各種表上無論是大的還是小的都非常快,如果有rollback命令delete將被撤銷,而truncate則不會被撤銷。
2、truncate是一個DDL語言,向其他所有的DDL語言一樣,他將被隱式提交,不能對truncate使用rollback命令。
3、truncate將重新設定高水平線和所有的索引,在對整個表和索引進行完全瀏覽時,經過 truncate 操作後的表比delete操作後的表要快得多。
4、truncate不能觸發任何delete觸發器。
5、當表被truncate清空後表和表的索引講重新設定成初始大小,而delete則不能。
6、不能清空父表。
總結
delete不需要列名和萬用字元,它是刪除整行而不是刪除列,要刪除指定的列,請使用update語句,並且delete語句從表中刪除行,甚至是刪除表中所有行,而不是刪除表本身。刪除資料有風險,刪除之前應該先備份。
SQLServer刪除資料