SQL刪除所有表數(shù)據(jù)的方法是我們需要的,下面就教您一個可以輕松解決這個問題的方法,供您參考,如果您在SQL刪除所有表數(shù)據(jù)方面遇到過類似的問題,供您參考。
有時候我們需要清空數(shù)據(jù)庫中所有用戶表的數(shù)據(jù),如果一張表一張表的清空的話,遇到一個龐大的數(shù)據(jù)系統(tǒng)SQL刪除所有表數(shù)據(jù)還要這么操作估計得崩潰了。 用游標(biāo)加上用變量來引用表名就可以做到這一點. 用變量來引用表名對表操作可以用在存儲過程中,根據(jù)需要動太選擇引用某個表的數(shù)據(jù)或?qū)ζ洳僮鳌?/p>
- //定義游標(biāo)
- DECLARE tables_cursor CURSOR
- FOR
- SELECT name FROM sysobjects WHERE type = 'U' //選擇用戶表名
- OPEN tables_cursor //打開游標(biāo)連接
- DECLARE @tablename sysname // 定義變量
- FETCH NEXT FROM tables_cursor INTO @tablename //結(jié)果集中一行一行讀取表名
- WHILE (@@FETCH_STATUS <> -1) //判斷游標(biāo)狀態(tài)
- BEGIN
- EXEC ('TRUNECATE TABLE ' + @tablename) //清空表中的數(shù)據(jù)
- FETCH NEXT FROM tables_cursor INTO @tablename //下一行數(shù)據(jù)
- END
- DEALLOCATE tables_cursor //關(guān)閉游標(biāo)
以上就是SQL刪除所有表數(shù)據(jù)的實現(xiàn)方法。