SQL Server 删除所有表内数据

我们有时需要将数据库内的所有表数据删除,例如调整账套,恢复损坏数据库时等,然而不能直接把表删了,因为要保留表结构以及一些约束。这里使用如下sql命令:
先将所有表的约束取消,然后执行删除所有表,最后将约束启用。非常简单直接.

EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'
EXEC sp_MSForEachTable 'ALTER TABLE ? DISABLE
......

SQL Server 数据库(数据表)损坏修复 dbcc checkdb、dbcc checktable

一般数据库损坏可以尝试使用dbcc checkdb(‘dbname’)直接处理即可,但有时直接使用此方法不会显示任何的错误信息,且不会有任何的修复动作。
然后尝试使用checktable命令则有反应且可以恢复,但数据表多的时候不可能自己手动一个个复制表名执行吧,这时候遍历所有数据表依次修复数据表是不错的解决方案。
首先需要将数据库设置为单用户连接,恢复完毕后取消单用户设置即可。

设置
......

Oracle 11G exp 导出空表操作

1、先查询一下当前用户下的所有空表
select table_name from user_tables where NUM_ROWS=0;

2、用以下这句查找空表
select ‘alter table ‘||table_name||’ allocate extent;’ from user_tables where num_rows=0

把第二步查询结果导......