truncate
table
+
要清的表名,則可將表內容完全刪除而保留表結構
❷ sql清空一個表的命令,不是刪除表。
truncate table xx
ref http://database.51cto.com/art/201010/229086.htm
❸ sql怎麼刪除一個表中的所有數據
刪除表數據有兩種方法:delete和truncate。具體語句如下:
一、RUNCATE TABLE name :
刪除表中的所有行,而不記錄單個行刪除操作。在這個指令之下,表格中的資料會完全消失,可是表格本身會繼續存在。
TRUNCATE TABLE 的語法:TRUNCATE TABLE name ,參數 name 是要截斷的表的名稱或要刪除其全部行的表的名稱。
二、Delete from tablename where 1=1
1、delete語法:
DELETE FROM 表名稱 WHERE 列名稱 = 值。
2、刪除所有行:
可以在不刪除表的情況下刪除所有的行。這意味著表的結構、屬性和索引都是完整的:DELETE FROM table_name。
(3)sql清空擴展閱讀:
truncate和delete的共同點及區別:
1、 truncate和 delete只刪除數據不刪除表的結構(定義) 。
2、delete語句是dml,這個操作會放到rollback segement中,事務提交之後才生效;如果有相應的trigger,執行的時候將被觸發。
truncate是ddl, 操作立即生效,原數據不放到rollback segment中,不能回滾. 操作不觸發trigger。
3、delete語句不影響表所佔用的extent, 高水線(high watermark)保持原位置不動 。truncate 語句預設情況下見空間釋放到 minextents個 extent,除非使用reuse storage; truncate會將高水線復位(回到最開始)。
4、速度,一般來說: truncate >delete 。
❹ 怎樣清空SQL Server以前的數據
delete from 表名
刪改表中以前的數據。。。
❺ sql 資料庫怎麼清空一個表中的內容!
如果你還想重建這個表,為免麻煩的話
insert into 新表 select * from 舊表 where 1=2
這就相當於你把表的結構復制到新表,但沒復制數據
(因為1=2不可能為真)
然後
delect from 舊表
再把新表名改成舊表名就可以了
❻ sql 如何清除一列數據
sql清除一列數據分為兩種情況,一種是將一列的數據清空,另一種是將某列名刪除。
工具:SQL Server 2008 R2
表中數據如下:
❼ 怎麼用sql語句,清空一個Table中的所有記錄
通常的做法是: truncate table 表名,這樣清除表數據的時候順帶把表的主鍵id也會重置為從1開始。
另外一種是不帶條件的刪除: delete from 表名
❽ sql 刪除語句
1、delete 語句用於刪除表中的行。delete語句執行刪除的過程是每次從表中刪除一行,並且同時將該行的刪除操作作為事務記錄在日誌中保存
語法:DELETE FROM 表名稱 WHERE 列名稱 = 值,
如:刪除student表中姓名為張三豐的學生信息-delete from studentwhere name=『張三豐』;
2、drop (刪除表):刪除內容和定義,釋放空間。簡單來說就是把整個表去掉.以後要新增數據是不可能的,除非新增一個表。
drop語句將刪除表的結構被依賴的約束(constrain),觸發器(trigger)索引(index);依賴於該表的存儲過程/函數將被保留,但其狀態會變為:invalid。
3、truncate (清空表中的數據):刪除內容、釋放空間但不刪除定義(保留表的數據結構)。與drop不同的是,只是清空表數據而已。
注意:truncate 不能刪除行數據,要刪就要把表清空。
(8)sql清空擴展閱讀:
資料庫操作中,經常要用到刪除表和刪除表數據,在實際應用中,三者的區別是明確的。
當你不再需要該表時, 用 drop;
當你仍要保留該表,但要刪除所有記錄時, 用 truncate;
當你要刪除部分記錄時(always with a WHERE clause), 用 delete。
truncate 與delete 比較:
1、truncate table 在功能上與不帶 WHERE 子句的 delete語句相同:二者均刪除表中的全部行。
2、truncate 比 delete速度快,且使用的系統和事務日誌資源少。
3、truncate 操作後的表比Delete操作後的表要快得多。
❾ 如何用sql語句來清空一個資料庫
類似這樣:
獲取所有表名 ,根據表名來刪除表
--變數@tablename保存表名
declare @tablename nvarchar(100)
--將用戶表全部保存到臨時表#tablename中
SELECT [name] into #tablename FROM sysobjects
WHERE type = 'U';
--當#tablename有數據時
while(select count(1) from #tablename)>0
begin
--從#tablename中取第一條
select top 1 @tablename=[name] from #tablename;
--進行表刪除操作,表名為變數,所以此處用到動態sql
exec('drop table '+@tablename);
--將此表名記錄從#tablename中刪除
delete from #tablename where [name]=@tablename;
end
--最後刪除臨時表#tablename
❿ sql清空臨時表
你這不是臨時表
create table #tempTable (id int identity(1,1),name varchar(20))
insert into #temptable(name)values('1')
insert into #temptable(name)values('1')
insert into #temptable(name)values('1')
select * from #temptable--看這里id是從1開始的
delete #temptable
DBCC CHECKIDENT (#temptable, RESEED, 0)--關鍵
insert into #temptable(name)values('2')
insert into #temptable(name)values('3')
insert into #temptable(name)values('3')
select * from #temptable--id重新從1開始