转自:http://www.2cto.com/database/201307/228708.html

编写程序,有时或为了偷懒,或为更简单地实现所需功能,使用了触发器。这可是把双刃剑,用得不好,程序出现一些莫名其妙的错误,排查到最后,可能就是触发器造成的。
 
基本原则是能不用则不用,另一方面,所谓存在即合理,既然存在,总会有使用它的场景。用到了,怎么去管理去监控?一个方法是通过SQL语句,列出所有触发器的信息。
 
语句
SELECT  OBJECT_NAME(a.parent_obj) AS [表名] ,
a.name AS [触发器名称] ,
( CASE WHEN b.is_disabled = 0 THEN '启用'
ELSE '禁用'
END ) AS [状态] ,
b.create_date AS [创建日期] ,
b.modify_date AS [修改日期] ,
c.text AS [触发器语句]
FROM sysobjects a
INNER JOIN sys.triggers b ON b.object_id = a.id
INNER JOIN syscomments c ON c.id = a.id
WHERE a.xtype = 'tr'
ORDER BY [表名]

后记
最开始只要表名、触发器名、触发器语句,很容易就写好语句,后来想把触发器状态也加上,自己没头绪,先网络搜索,竟然没能找到直接可用的信息,有找到针对SQL2000,只是自己早已不使用此版本,那么再一次自力更生吧。
 
一时也不知道还有哪个系统视图或表可以使用,同时发现SQL Server Management Studio的对象资源管理器中,可以看出触发器状态(图标不同,禁用状态的图标右下角多出一个红色的小箭头)。很自然想到利用SQL Server Profiler捕获语句,这招真是屡试不爽,果然如我所愿,找到sys.triggers这个视图,状态问题,顺利解决。

MSSQL:查看所有触发器信息的命令的更多相关文章

  1. linux查看用户登录信息2-who命令

    who命令与w命令相似,但要比w命令显示更加详细的信息.[root@rusky opt]# man who WHO(1) User Commands WHO(1) NAME who - show wh ...

  2. linux查看用户登录信息-w命令

    NAME w - Show who is logged on and what they are doing. SYNOPSIS w - [husfV] [user] DESCRIPTION w di ...

  3. 执行redis命令redis-trib.rb查看集群信息报错cannot load such file -- redis (LoadError)

    问题描述: 在执行redis-trib.rb命令查看集群状态的时候,报错: [aiprd@hadoop1 ~]$ redis-trib.rb check Traceback (most recent ...

  4. MySQL查看数据库相关信息

    使用MySQL时,需要了解当前数据库的情况,例如当前的数据库大小.字符集.用户等等.下面总结了一些查看数据库相关信息的命令   1:查看显示所有数据库 mysql> show databases ...

  5. 查看CentOS版本信息

    今天小编将给大家详细讲解查看CentOS版本信息的命令. (一) 查看已经安装的CentOS版本信息 1.cat /etc/issue 查看版本 cat  缩写concatenate  cat命令可以 ...

  6. [转]MySQL查看数据库相关信息

    原文链接:MySQL查看数据库相关信息 使用MySQL时,需要了解当前数据库的情况,例如当前的数据库大小.字符集.用户等等.下面总结了一些查看数据库相关信息的命令 1:查看显示所有数据库 mysql& ...

  7. linux查看操作系统版本信息

    linux查看操作系统版本信息  摘自:https://www.cnblogs.com/vaelailai/p/7545166.html 一.linux下如何查看已安装的centos版本信息: 1.L ...

  8. mysql 数据库信息常用命令

    Mysql查询数据库状态及信息   使用MySQL时,需要了解当前数据库的情况,例如当前的数据库大小.字符集.用户等等.下面总结了一些查看数据库相关信息的命令 1:查看显示所有数据库 mysql> ...

  9. ubuntu系统中查看本机cpu和内存信息的命令和用法

    https://zhidao.baidu.com/question/192966322.html 写出ubuntu linux系统中查看本机cpu和内存信息的命令和用法,以及如何解读这些命令 ubun ...

随机推荐

  1. 【T09】要认识到TCP是一个可靠的,但不是绝对可靠的协议

    1.稍微想一下就知道,TCP不是绝对可靠的协议,比如:网络断开,主机崩溃,无论TCP如何努力,都无法将数据传给对方. 2.考虑应用程序A向应用程序B发送数据的TCP流程,数据流从应用程序A通过他所在主 ...

  2. Win10系统的SurfacePro4如何重装系统-1 SurfacePro专用的PE

    下载SurfacePro专用的PE(普通的PE可能不支持触摸屏操作,甚至没法启动Surface,所以务必要重新制作PE),下面提供百度云下载地址,下载之后,双击EXE,会进行检测 链接:https:/ ...

  3. ubuntu16.04 npm安装

    $ sudo apt-get install python-software-properties $ curl -sL https://deb.nodesource.com/setup_6.x | ...

  4. Deep Learning.ai学习笔记_第一门课_神经网络和深度学习

    目录 前言 第一周(深度学习引言) 第二周(神经网络的编程基础) 第三周(浅层神经网络) 第四周(深层神经网络) 前言 目标: 掌握神经网络的基本概念, 学习如何建立神经网络(包含一个深度神经网络), ...

  5. MATLAB 条形图添加多个图例

    MATLAB 条形图添加多个图例: 1)只有一个图例: 2)两个图例:

  6. 阿里云 CentOS7 安装 Nginx 后,无法访问的问题

    在阿里云实例中,选择 网络与安全中的安全组.修改安全组规则. 例如:   但是还是不行 需要这样排查 netstat -anp | grep 80 iptables -L -n   firewall- ...

  7. coon's patch

    作者:桂. 时间:2018-05-23  06:11:54 链接:https://www.cnblogs.com/xingshansi/p/9070761.html 前言 早晨突然想到计算机模型的各种 ...

  8. kali 安装google chrome浏览器(离线手动)

    一.官网下载安装包 需要在google官网下载chrome安装包,安装时请仔细选择安装包,.deb的安装包适用于Debian/Ubuntu系统,.rpm适用于 Fedora/openSUSE系统. k ...

  9. easyUI的汇总列,在前端生成

    1.easyUI初始化,启用汇总列,showFooter:true 2.后台json有默认的footer的值 {"total":28,"rows":[ {&qu ...

  10. logrus日志使用详解

    1.logrus特点 golang标准库的日志框架很简单,logrus框架的特点: 1)完全兼容标准日志库 六种日志级别:debug, info, warn, error, fatal, panic ...