SQL中删除某数据库所有trigger及sp
SQL中删除某数据库所有trigger及sp
编写人:CC阿爸
2014-6-14
在日常SQL数据库的操作中,如何快速的删除所有trigger及sp呢
以下有三种方式可快速处理。
--第一种
--事务的处理方法
Begin Transaction
Begin try
declare @SQL varchar(max)
set @SQL=''
select @SQL=@SQL+name+',' from sysobjects where xtype='TR' and name<>'DropDatabase'
If ISNULL(@SQL,'')!=''
Begin
set @SQL='Drop Trigger '+LEFT(@SQL,len(@SQL)-1)
select @SQL as aa
--exec(@SQL)
end
commit Transaction
End Try
Begin Catch
rollback tran
End Catch
--第二种方法
--采用光标的方式
--DECLARE cursorname cursor for select 'drop PROCEDURE '+name from sys.objects where name like 'xx%' and xtype = 'P' --删除对应的存储过程
DECLARE cursorname cursor for select 'drop Trigger'+name from sys.objects where name like '%' and type = 'TR' --删除对应的触发器
open cursorname
declare @curname sysname
fetch next from cursorname into @curname
while(@@fetch_status=0)
begin
--exec(@curname)
select @curname as aa
fetch next from cursorname into @curname
end
close cursorname
deallocate cursorname
--第三种方法
--简易办法,查询出来后,再在数据库中执行
select 'drop Trigger '+name from sys.objects where name like '%' and type = 'TR'
select 'drop PROCEDURE '+name from sys.objects where name like '%' and type = 'P'
SQL中删除某数据库所有trigger及sp的更多相关文章
- SQL Server删除distribution数据库二
以前总结过一遍博文SQL Server删除distribution数据库,里面介绍了如何删除distribution数据库.今天介绍一个删除distribution的特殊案例, 在这之前,我不知道这个 ...
- SQL中如何修改数据库名、表名、列名?
文章目录 1.SQL中如何修改数据库的名字? 2.SQL中如何修改表的名字? 3.SQL中如何修改列的名字? 4.SQL中如何修改列的数据类型?(未完成,待续) 1.SQL中如何修改数据库名? 语法 ...
- SQL Server删除distribution数据库
在数据库服务器删除复制(发布订阅)后,如何删除掉数据库distribution呢?如果你通过SSMS工具去删除数据库distribution,你会发现根本没有删除选项. 下面介绍一下删除distrib ...
- SQL Server 删除当前数据库中所有数据库 ,无视约束
Sql Server中清空所有数据表中的记录 清空所有数据表中的记录: exec sp_msforeachtable @Command1 ='truncate table ?' 删除所有数据表: e ...
- SQL中删除重复的行(重复数据),只保留一行 转
方法一:使用在T-SQL的编程中 分配一个列号码,以COL1,COL2组合来分区排序,删除DATABASE重复的行(重复数据),只保留一行 // COL1,COL2是数据库DATABASE的栏位 de ...
- SQL中删除同一字段中重复的值
/////////////////////目地:ZDJZ_DIS中 name字段有重复的值,删除重复的值 DELETE * FROM ZDJZ_DIS WHERE NAME IN (select NA ...
- SQL 中怎么查询数据库中具有的表、存储过程、试图数目、总触发器数、作业数
用户表:select count(*) 总表数 from sysobjects where xtype='u' 刚才那个是用户表,下面这个是系统表加用户表: select count(*) 总表数 f ...
- 用SQL语句创建和删除Access数据库中的表;添加列和删除列
用SQL语句创建和删除Access数据库中的表;添加列和删除列 Posted on 2009-08-11 13:42 yunbo 阅读(1240) 评论(0) 编辑 收藏 用SQL语句创建和删除Acc ...
- SQL Server中使用msdb数据库的存储过程sp_delete_backuphistory和sp_delete_database_backuphistory来删除备份和恢复历史数据
根据微软文档对sp_delete_backuphistory存储过程的介绍,SQL Server在每次备份和恢复数据库后,会向msdb系统数据库的备份和恢复历史表写入数据,如果SQL Server经常 ...
随机推荐
- Dynamics CRM 2011 权限管理(转)
http://www.cnblogs.com/LeoTang/p/3344265.html Dynamics CRM 2011 权限管理 CRM系统基于角色的权限主要通过部门.角色.用户.团队来 进行 ...
- Delphi Socket 阻塞线程下为什么不触发OnRead和OnWrite事件
//**********************************************************************************//说明: 阻塞线程下为什么不触 ...
- I2C协议(转)
1.I2C协议 2条双向串行线,一条数据线SDA,一条时钟线SCL. SDA传输数据是大端传输,每次传输8bit,即一字节. 支持多主控(multimastering),任何时间点只能有一 ...
- nyoj 108 士兵杀敌(一)
点击打开链接 士兵杀敌(一) 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 南将军手下有N个士兵,分别编号1到N,这些士兵的杀敌数都是已知的. 小工是南将军手下的军师, ...
- PHP截取IE浏览器并缩小原图的方法
这篇文章主要介绍了PHP截取IE浏览器并缩小原图的方法,涉及PHP调用com组件实现图像截取的相关技巧,需要的朋友可以参考下 本文实例讲述了PHP截取IE浏览器并缩小原图的方法.分享给大家供大家参考, ...
- SparseArray,dip & px
SparseArray-用Array的方式实现Integer-Object的map 优:节约内存,因为避免了装箱/拆箱,数据结构不依赖Entry 劣:速度不及HashMap dip.px dip(de ...
- TCP和HTTP的关系
TCP和HTTP的关系 首先简单地看看tcp,TCP连接是通过4个值来识别的: <源IP地址 源端口号 目的IP地址 目的端口号> 这四个值定义了一个TCP连接,两条不同的TCP连接中这四 ...
- Flex AdvancedDatagrid使用
首先我先来看下利用Advanced Datagrid做出的效果,然后我们再对其中所利用的知识进行讲解,效果图如下: 我们来看下这个效果我们所用到的关于Advanced Datagrid的相关知识: 一 ...
- Type-base dispatch
In the previous section we added two Time objects, but you also might want to add an integer to a Ti ...
- 旅行计划-DAG上最长路
http://www.luogu.org/problem/show?pid=1137 题目描述 小明要去一个国家旅游.这个国家有N个城市,编号为1-N,并且有M条道路连接着,小明准备从其中一个城市出发 ...