sql server 查詢某個表的所有觸發器名稱

2021-07-26 23:50:58 字數 1183 閱讀 5989

查出所有用到某個表的sql

select   *   from   sysobjects   where   xtype='tr'   

select   *   from   sysobjects   where   xtype='tr'   and   parent_obj=object_id('表名')

xtype   char(2)   物件型別。可以是下列物件型別中的一種:     

c   =   check   約束   

d   =   預設值或   default   約束   

f   =   foreign   key   約束   

l   =   日誌   

fn   =   標量函式   

if   =   內嵌表函式   

p   =   儲存過程

pk   =   primary   key   約束(型別是   k)   

rf   =   複製篩選儲存過程   

s   =   系統表   

tf   =   表函式   

tr   =   觸發器   

u   =   使用者表   

uq   =   unique   約束(型別是   k)   

v   =   檢視   

x   =   擴充套件儲存過程  

select name **名稱 from sysobjects where xtype='u'  and id in(select parent_obj from sysobjects where xtype='tr')------查詢有觸發器的表

select name **名稱 from sysobjects where xtype='u'  and id not in(select parent_obj from sysobjects where xtype='tr')------查詢沒有觸發器的表

有多少觸發器用下面的就行:

select a.name 資料表名,sysobjects.name as 觸發器名,sysobjects.crdate as 建立時間 from sysobjects 

left join (select *from sysobjects where xtype='u')as a on sysobjects.parent_obj=a.id

where sysobjects.xtype='tr'

SQL SERVER中查詢某個表或某個索引是否存在

查詢某個表是否存在 在實際應用中可能需要刪除某個表,在刪除之前最好先判斷一下此表是否存在,以防止返回錯誤資訊。在sql server中可通過以下語句實現 if object id n 表名稱 n u is not null drop table 表名稱 注意,普通表和臨時表的使用差別 若希望刪除te...

sql server 查詢某個表的所有觸發器名稱

查出所有用到某個表的sql select from sysobjects where xtype tr select from sysobjects where xtype tr and parent obj object id 表名 xtype char 2 物件型別。可以是下列物件型別中的一種 ...

sqlserver查詢出某個表當前自增字段的最新值

通常我們在設計表的時候,會加乙個排序字段,為的是方便資料的排序,比如上移 下移。如果在給資料表插入資料的時候,想要使這個欄位的預設值跟資料庫的主鍵 主鍵是自增長 一致的話,該怎麼弄呢?先插入,然後取出剛剛插入的資料的主鍵,然後對這行資料更新,將排序的值更新為主鍵的值?理論上這樣做也能實現,但是如果併...