日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

使用SQL語句清空數據庫所有表的數據

系統 2597 0
原文: 使用SQL語句清空數據庫所有表的數據

近來發現數據庫過大,空間不足,因此打算將數據庫的數據進行全面的清理,但表非常多,一張一張的清空,實在麻煩,因此就想利用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
end
close ?name_cursor
deallocate ?name_cursor

這是我自己構造的,可以做為存儲過程調用, 能夠一次清空所有表的數據,并且還可以進行有選擇的清空表.
3.利用微軟未公開的存儲過程

exec ?sp_msforeachtable?" truncate ? table ??"

?

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

使用SQL語句清空數據庫所有表的數據


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 庄浪县| 宁河县| 咸丰县| 平山县| 漳浦县| 金秀| 巴林左旗| 金乡县| 泸定县| 潮州市| 凯里市| 凭祥市| 巢湖市| 南和县| 沅陵县| 镶黄旗| 济源市| 奎屯市| 龙海市| 内江市| 鄢陵县| 安顺市| 明水县| 衡南县| 左云县| 敖汉旗| 滁州市| 赣州市| 济源市| 茶陵县| 阜宁县| 连云港市| 孙吴县| 准格尔旗| 卢龙县| 基隆市| 五峰| 中方县| 林西县| 黄龙县| 汤阴县|