SQL删除所有表数据的方法是我们需要的,下面就教您一个可以轻松解决这个问题的方法,供您参考,如果您在SQL删除所有表数据方面遇到过类似的问题,供您参考。
有时候我们需要清空数据库中所有用户表的数据,如果一张表一张表的清空的话,遇到一个庞大的数据系统SQL删除所有表数据还要这么操作估计得崩溃了。 用游标加上用变量来引用表名就可以做到这一点. 用变量来引用表名对表操作可以用在存储过程中,根据需要动太选择引用某个表的数据或对其操作。
- //定义游标
- DECLARE tables_cursor CURSOR
- FOR
- SELECT name FROM sysobjects WHERE type = 'U' //选择用户表名
- OPEN tables_cursor //打开游标连接
- DECLARE @tablename sysname // 定义变量
- FETCH NEXT FROM tables_cursor INTO @tablename //结果集中一行一行读取表名
- WHILE (@@FETCH_STATUS <> -1) //判断游标状态
- BEGIN
- EXEC ('TRUNECATE TABLE ' + @tablename) //清空表中的数据
- FETCH NEXT FROM tables_cursor INTO @tablename //下一行数据
- END
- DEALLOCATE tables_cursor //关闭游标
以上就是SQL删除所有表数据的实现方法。
【编辑推荐】