有兩種方法:
方法1:
truncate table 你的表名 --這樣不但將資料刪除,而且可以重新置位identity屬性的字段。
方法2:
delete from 你的表名
dbcc checkident(你的表名,reseed,0) --重新置位identity屬性的字段,讓其下個值從1開始。
刪除表中的所有行,而不記錄單個行刪除操作。truncate table 在功能上與沒有 where 子句的 delete 語句相同;但是,truncate table 速度更快,使用的系統資源和事務日誌資源更少。
transact-sql 語法約定
truncate table[ ]
table_name
[ ; ]
與 delete 語句相比,truncate table 具有以下優點:
truncate table 刪除表中的所有行,但表結構及其列、約束、索引等保持不變。若要刪除表定義及其資料,請使用 drop table 語句。
如果表包含標識列,該列的計數器重置為該列定義的種子值。如果未定義種子,則使用預設值 1。若要保留標識計數器,請使用 delete。
不能對以下表使用 truncate table:
對於具有以上乙個或多個特徵的表,請使用 delete 語句。
truncate table 不能啟用觸發器,因為該操作不記錄各個行刪除。有關詳細資訊,請參閱 create trigger (transact-sql)。
microsoft sql server 2005 能夠刪除或截斷有 128 個以上的區的表,而不必對需要刪除的所有區保持同時鎖定。有關詳細資訊,請參閱
刪除並重新生成大型物件
。database_name
資料庫的名稱。
schema_name
表所屬架構的名稱。
table_name
要截斷的表的名稱,或要刪除其全部行的表的名稱。
所需的最低許可權是對 table_name 的 alter 許可權。truncate table 許可權預設授予表所有者、sysadmin 固定伺服器角色的成員、db_owner 和 db_ddladmin 固定資料庫角色的成員,並且不可轉移許可權。但是,可以在諸如儲存過程這樣的模組中加入 truncate table 語句,然後為使用 execute as 子句的模組授予適當的許可權。有關詳細資訊,請參閱
使用 execute as 建立自定義許可權集
。以下示例刪除jobcandidate
表中的所有資料。select 語句放在 truncate table 語句之前和之後以比較結果。
use adventureworks;goselect count(*) as beforetruncatecount
from humanresources.jobcandidate;
gotruncate table humanresources.jobcandidate;
goselect count(*) as aftertruncatecount
from humanresources.jobcandidate;
go
如何刪除表中重複的記錄?
由於多種原因,在表中可能會有一些重複的記錄,有時需要刪除這些重複的記錄,那麼,如何刪除這些重複的記錄呢?現有如下的表 sql create table a 2 b number 1 表已建立。sql insert into a values 1 已建立 1 行。sql 已建立 1 行。sql 已建立...
MYSQL刪除表的記錄後如何使ID從1開始
方法1 truncate table 你的表名 這樣不但將資料全部刪除,而且重新定位自增的字段 方法2 delete from 你的表名 dbcc checkident 你的表名,reseed,0 重新定位自增的字段,讓它從1開始 方法3 如果你要儲存你的資料,介紹你第三種方法,by qinyi 用...
如何恢復刪除的微信記錄?恢復刪除記錄的方法
一,取得imei和uin破解enmicromsg.db密碼恢復 1.獲取imei imei是手機識別碼,每台手機都有乙個唯一的imei,獲取imei很簡單,只需在撥號頁面輸入 06 即可獲得15位數字的imei碼!2.獲取uin 其實,獲取uin有更簡便的方法 uin存放在system config...