当前位置:  数据库>sqlserver

清空数据库中所有表记录 记录ID恢复从0开始

    来源: 互联网  发布时间:2014-10-04

    本文导语:  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) 该方法适合表不是非常多的情况,否则表...

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 ?"

该方法可以一次清空所有表,但不能加过滤条件.

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ I/O 成员 flush():清空缓冲区
  • 在线等待:如何把vector清空,再用该清空vector是,索引是从0开始,而不是紧接着上次清空是的索引?
  • C++ Bitsets 成员 reset():清空所有位
  • [文件 重定向 清空] Linux 清空文件问题
  • C++ Vectors 成员 clear():清空所有元素
  • linux下如何清空串口的输入输出缓存
  • JSP中清空cookie代码参考
  • C#清空添加的txt文件的实例代码
  • JSP 重置按钮清空传入的表单数据实例
  • unix下用c如何清空一个文件?
  • linux 下清空串口发送接收缓冲区的函数.
  • linux 能否清空文件缓存?
  • MSSQL 清空数据库的方法
  • jquery清空textarea等输入框中内容的代码
  • 清空mysql 查询缓存的可行方法
  • 请问,下拉框怎样来清空,?
  • 如何清空键盘缓冲区?
  • 如何将一个文本文件在写入前先清空?急待回答。代码如下:
  • 在JSP中如何从内存中清空APPLICATION,
  • 怎样清空vector中的内容??急
  • 如何清空所有SESSION


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3