如何SQL語句就刪除表中所有的資料

2021-03-04 05:58:54 字數 6671 閱讀 4159

1樓:匿名使用者

用sql語句一次清空所有資料.找到了三種方法進行清空.使用的資料庫為ms sql server.(表之間不能有外來鍵關係)

1.搜尋出所有表名,構造為一條sql語句

declare @trun_name varchar(8000)

set @trun_name=''

select @trun_name=@trun_name + 'truncate table ' + [name] + ' ' from sysobjects where xtype='u' and status > 0

exec (@trun_name)

該方法適合表不是非常多的情況,否則表數量過多,超過字串的長度,不能進行完全清理.

2.利用游標清理所有表

declare @trun_name varchar(50)

declare name_cursor cursor for

select 'truncate table ' + name from sysobjects where xtype='u' and status > 0

open name_cursor

fetch next from name_cursor into @trun_name

while @@fetch_status = 0

begin

exec (@trun_name)

print 'truncated table ' + @trun_name

fetch next from name_cursor into @trun_name

endclose name_cursor

deallocate name_cursor

這是我自己構造的,可以做為儲存過程呼叫, 能夠一次清空所有表的資料,並且還可以進行有選擇的清空表.

3.利用微軟未公開的儲存過程(前提是使用sql server 2005以上版本)

exec sp_msforeachtable "truncate table ?"

--刪除當前資料庫所有表中的資料sp_msforeachtable @***mand1='delete from ?'sp_msforeachtable @***mand1 = "truncate table ?"

該方法可以一次清空所有表,但不能加過濾條件.

引:csdn,blog.csdn.***/feiji323/article/details/5669775

sql怎麼刪除乙個表中的所有資料

2樓:匿名使用者

1、開啟sql server 2008 並連線乙個資料庫。

2、點選工具欄的「新建查詢」按鈕,新建乙個查詢。

3、這個資料庫裡有個測試**,裡面有7條記錄。輸入「delete * from * from 測試;」

4、執行「delete * from * from 測試;」軟體提示錯誤。

5、去掉delete後面的*號,改為:delete from 測試;執行顯示「7行受影響」,也就是之前的7條記錄全部被刪除了。

6、執行,select * from 測試;查詢結果為空,再次驗證已刪除**「測試」中的所有記錄。

3樓:蔓蔓

刪除表裡的資料使用的是資料操縱語句dml中的delete語句它的語法格式:delete from 《表名》

【where 條件表示式】

刪除表裡的全部資料寫法:delete from 表名不寫where語句話是刪除表中的全部資料

如果要刪除錶用drop語句

4樓:飛出大氣層

語法:delete from 表名

解釋:在不加任何條件的情況下會刪除表中的所有的資料。

5樓:大號是賊

delete from 表的名字 where 1=1 。 加上 where 1=1這個判斷語句即表中所有資料都滿足,即可刪除全部資料

6樓:匿名使用者

delete from 表名

不是delete * from 表名

7樓:匿名使用者

delete * from table_name;

8樓:

truncate table table_name;

delete * from table_name;

9樓:匿名使用者

truncate table table_name;

或delete from table_name where 1;

10樓:

delete * from table_name;

11樓:cda資料分析師

sql檢視,通過定義 select 語句以檢索將在檢視中顯示的資料來建立檢視。select 語句引用的資料表稱為檢視的基表。檢視可以被看成是虛擬表或儲存查詢。

sql怎麼刪除乙個表中的所有資料

12樓:加百列

刪除表資料有兩種方法:delete和truncate。具體語句如下:

一、runcate table name  :

刪除表中的所有行,而不記錄單個行刪除操作。 在這個指令之下,**中的資料會完全消失,可是**本身會繼續存在。

truncate table 的語法:truncate table name ,引數 name 是要截斷的表的名稱或要刪除其全部行的表的名稱。

二、delete from tablename where 1=11、delete語法:

delete from 表名稱 where 列名稱 = 值。

2、刪除所有行:

可以在不刪除表的情況下刪除所有的行。這意味著表的結構、屬性和索引都是完整的:delete from table_name。

13樓:為江山放棄了愛

有兩種方法:

1、truncate table 刪除表中的所有行,而不記錄單個行刪除操作。

語法 truncate table name引數 name是要截斷的表的名稱或要刪除其全部行的表的名稱。

2、delete from [表名] where 1=1擴充套件資料sql是structured query language(結構化查詢語言)的縮寫。sql是專為資料庫而建立的操作命令集,是一種功能齊全的資料庫語言。在使用它時,只需要發出「做什麼」的命令,「怎麼做」是不用使用者考慮的。

sql功能強大、簡單易學、使用方便,已經成為了資料庫操作的基礎,並且現在幾乎所有的資料庫均支援sql。

14樓:卸下偽裝忘勒傷

1.開啟sql server 2008 並連線乙個資料庫。

2.點選工具欄的「新建查詢」按鈕,新建乙個查詢。

3.我這個資料庫裡有個測試**,裡面有7條記錄。輸入「delete * from * from 測試;」

4.執行「delete * from * from 測試;」軟體提示錯誤。

5.去掉delete後面的*號,改為:delete from 測試;執行顯示「7行受影響」,也就是之前的7條記錄全部被刪除了。

6.執行:select * from 測試;查詢結果為空,再次驗證已刪除**「測試」中的所有記錄。

15樓:匿名使用者

有兩種辦法可以刪除表中的所有資料:

1、truncate table 刪除表中的所有行,而不記錄單個行刪除操作。

語法 truncate table name引數 name 是要截斷的表的名稱或要刪除其全部行的表的名稱。

2、delete from tablename where 1=1

16樓:匿名使用者

使用 truncate table 刪除所有行。

若要刪除表中的所有行,則 truncate table 語句是一種快速、無日誌記錄的方法。該語句總是比不帶條件的 delete 語句要快,因為 delete 語句要記錄對每行的刪除操作。

而 truncate table 語句只記錄整個資料頁的釋放。truncate table 語句立即釋放由該錶的資料和索引佔用的所有空間。所有索引的分發頁也將釋放。

與 delete 語句相同,使用 truncate table 清空的表的定義,同其索引和其它相關的物件一起仍保留在資料庫中。必須使用 drop table 語句才能除去表的定義。

17樓:cda資料分析師

sql檢視,通過定義 select 語句以檢索將在檢視中顯示的資料來建立檢視。select 語句引用的資料表稱為檢視的基表。檢視可以被看成是虛擬表或儲存查詢。

18樓:匿名使用者

postgresql 刪除資料庫可以用以下三種方式:

1、使用 drop database sql 語句來刪除。

2、使用 dropdb 命令來刪除。

3、使用 pgadmin 工具。

from 樹懶學堂

19樓:安徽新華電腦專修學院

刪除表:drop table [表名]

表中加列:alter table [表名] add [列名] [資料型別] null

20樓:花下之魂斯

給你個超牛逼的,刪除乙個使用者下所有表的資料!哈哈哈!!!

create or replace procedure p_l2_dw_fact_truncate

is ex_dup_value exception;

pragma exception_init(ex_dup_value,-1);

v_cur_truncate

21樓:匿名使用者

方法一  使用delete from 表名  --生成日誌方法二: truncate table 表名  --無日誌生成delete from [表名]

truncate table [表名]

22樓:匿名使用者

把**全選按滑鼠右鍵點選刪除就可以了。

23樓:匿名使用者

delete from 表

或者truncate table 表

是要這個?

24樓:enjoy童年

不想要id從1開始: delete table name

想要id從1開始: truncate table name

25樓:熱愛資料庫的同學

方法:可以使用 sql 的 delete from 命令來刪除 mysql 資料表中的記錄。

語法: delete from table_name [where clause] (如果沒有指定 where 子句,mysql 表中的所有記錄將被刪除)

具體用法參考:以下例項將刪除 shulanxt_tbl 表中 shulanxt_id 為3 的記錄。

from 樹懶學堂-免費資料知識學習平台

如何乙個sql語句就刪除表中所有的資料??

26樓:騷哥

使用 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語句就刪除表中所有的資料

刪除tablea表中的所有資料 delete from tablea sql怎麼刪除乙個表中的所有資料 刪除表資料有兩種方法 delete和truncate。具體語句如下 一 runcate table name 刪除表中的所有行,而不記錄單個行刪除操作。在這個指令之下,中的資料會完全消失,可是 本...

如何用SQL語句建立表

create table userinfo id int primary key not null identity 1,1 name char 20 unique,age int check age 10 char 2 建議乙個名叫userinfo的表,欄位為id 自動 1,主鍵,不為空!name...

如何使用sql語句修改表的結構比如新增字段修改

1.修改資料表名 alter table old table name rename to new table name 2.修改列名 alter table table name rename column old column name to new column name 3.修改列的資料型別...