1. 程式人生 > >查看數據庫中存在觸發器的表

查看數據庫中存在觸發器的表

ase strong 遷移 ron 類型 disabled triggers objects 狀態

這次在項目中,我們為了做數據庫同步,采用了觸發器機制,為數據庫做遷移時,我們需要獲取數據庫中那些表使用了觸發器,方便制作數據庫安裝包。

構思:

觸發器在MSSQL作為一個對象進行管理,那麽我們就可以通過sysobjects表進行查詢獲取,
所以我們就編寫了一下觸發器獲取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’ ——tr代表類型 觸發器
ORDER BY [表]

查看數據庫中存在觸發器的表