回答

收藏

从Sql Server删除所有视图

技术问答 技术问答 184 人阅读 | 0 人回复 | 2023-09-14

通过在SQL Server使用以下句子:% z9 r' z8 z* q2 j4 ]% R# @
EXEC sp_msforeachtable 'DROP TABLE ?'我知道所有的表都可以一次删除。
$ E" m" J( F  _% |有类似的观点陈述吗?我很幸运能尝试这种希望:EXEC sp_msforeachview’DROP VIEW?’ 但这行不通!
' T+ B0 V" o( V0 Z& ?                                                                $ ^8 r. y9 q+ u+ M" ?% v
    解决方案:                                                               
% j' ]! O, h" A& \, ~                                                                您不需要游标:# F+ g1 M9 n7 q5 W4 v9 B6 }5 }
DECLARE @sql VARCHAR(MAX) = @crlf VARCHAR(2) = CHAR(13)   CHAR(10) ;SELECT @sql = @sql   'DROP VIEW '   QUOTENAME(SCHEMA_NAME(schema_id))   '.'   QUOTENAME(v.name)   @crlfFROM   sys.views vPRINT @sql;EXEC(@sql);
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则