如何删除符合条件的多个表?

huntingdon 2008-04-08 06:23:38
要删除指定的表名的多个表(比如A开头的表),用%s作为表名的通配符不成功,该怎么写?

DROP TABLE
…………
...全文
85 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
huntingdon 2008-04-08
  • 打赏
  • 举报
回复
问题解决了,非常感谢!!
liangCK 2008-04-08
  • 打赏
  • 举报
回复
当然了..如果存在主外键约束..则应该先消除约束..再drop table
liangCK 2008-04-08
  • 打赏
  • 举报
回复

declare @name sysname
declare cur cursor for
select name from sysobjects where xtype='U' and name like '%s'
open cur

fetch next from cur into @name
while @@fetch_status=0
begin
exec ('drop table ['+@name+']')
fetch next from cur into @name
end

close cur
deallocate cur
huntingdon 2008-04-08
  • 打赏
  • 举报
回复
这样可以删除A开头的所有表吗?

declare @tname varchar(20)
set @tname = As%
Exec(drop table @tname )
huntingdon 2008-04-08
  • 打赏
  • 举报
回复
怎么动态SQL啊,请高手指示
liangCK 2008-04-08
  • 打赏
  • 举报
回复
这个得用动态SQL

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧