首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL Server存储过程删除表,该怎么解决

2012-06-04 
SQL Server存储过程删除表我想删除一些废表,他们有命名规律:他们均是以用户名开头,比如shanying1945,以某

SQL Server存储过程删除表
我想删除一些废表,他们有命名规律:
他们均是以用户名开头,比如shanying1945,以某几个字符结尾,比如temp
用户名一定在用户名student表中,且不在A表中

多谢。

[解决办法]

SQL code
--删除所有用户表:--select * from sysobjects where xtype='U' and category=0use masterdeclare @str varchar(max)set @str=''select @str=@str+' drop table '+quotename(name,'')+';'from sysobjects where xtype='U' and category=0 --and name not in('table','user','return','order','客户信息')print @strexec(@str)--可以在这个基础上修改
[解决办法]
你的表名和结尾的字符间,有没有规律?

比如你有一个用户名shanying1945
然后有一个表shanying1945temp

然后你再有一个用户名shanying1945t

然后shanying1945t用户名在A表中,

那么shanying1945temp表删不删?
[解决办法]
楼主的表数量很多吗,上万个不?

如果没有,保险的话还是人工排查好了.
[解决办法]
支持楼上,大批量删除表一旦语句有点错后面的事就可能会很麻烦

热点排行