• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    SQLServer中對所有的用戶表生成觸發器

    來源:懂視網 責編:小采 時間:2020-11-09 15:49:56
    文檔

    SQLServer中對所有的用戶表生成觸發器

    SQLServer中對所有的用戶表生成觸發器:測試的時候比較重要,我們可以知道當前交易影響了哪些表 --用于記錄 用戶 在當前表上什么時候、做的什么操作:update、insert、delete create table TriggerRecord ( operdt datetime,--觸發時間 opertp varchar(10),--操作類型:u
    推薦度:
    導讀SQLServer中對所有的用戶表生成觸發器:測試的時候比較重要,我們可以知道當前交易影響了哪些表 --用于記錄 用戶 在當前表上什么時候、做的什么操作:update、insert、delete create table TriggerRecord ( operdt datetime,--觸發時間 opertp varchar(10),--操作類型:u

    測試的時候比較重要,我們可以知道當前交易影響了哪些表 --用于記錄 用戶 在當前表上什么時候、做的什么操作:update、insert、delete create table TriggerRecord ( operdt datetime,--觸發時間 opertp varchar(10),--操作類型:update、insert、delete ope

    測試的時候比較重要,我們可以知道當前交易影響了哪些表

    --用于記錄用戶在當前表上什么時候、做的什么操作:update、insert、delete
    create table TriggerRecord
    (
    operdt datetime, --觸發時間
    opertp varchar(10), --操作類型:update、insert、delete
    opertb varchar(50) --表名
    )
    --這個表于用保存生成的觸發器語句,在過程中循環執行
    --因為Sqlserver不允許在一個批次同時執行多條create trigger語句
    create table T(sqlTrigger varchar(500))
    --循環執行存于表中觸發器的存儲過程
    create proc loopExecTrigger
    as
    begin
    declare @sql varchar(500)
    declare cur cursor for select sqlTrigger from T
    open cur
    fetch cur into @sql
    while @@fetch_status=0
    begin
    execute(@sql)
    fetch cur into @sql
    end
    close cur
    deallocate cur
    delete T
    end

    --用于生成插入語句的觸發器,并將觸發器語句保存到表中
    select 'insert into T values(''create trigger T_'+name+' on '+name+' for insert as insert into TriggerRecord values(getdate(),''''insert'''','''''+name+''''');'')' from sysobjects where type='U' and name not in('T','TriggerRecord')
    --將以上生成的語句拷貝出來執行

    --用于生成更新語句的觸發器,并將觸發器語句保存到表中
    select 'insert into T values(''create trigger T_'+name+'_U on '+name+' for update as insert into TriggerRecord values(getdate(),''''update'''','''''+name+''''');'')' from sysobjects where type='U' and name not in('T','TriggerRecord')
    --將以上生成的語句拷貝出來執行

    --用于生成刪除語句的觸發器,并將觸發器語句保存到表中
    select 'insert into T values(''create trigger T_'+name+'_D on '+name+' for delete as insert into TriggerRecord values(getdate(),''''delete'''','''''+name+''''');'')' from sysobjects where type='U' and name not in('T','TriggerRecord')
    --將以上生成的語句拷貝出來執行

    --執行通過上面語句生成的語句后,再執行存儲生成觸發器的存儲過程
    exec loopExecTrigger

    --生成刪除全部以T開頭的觸發器的語句
    select 'drop trigger '+name+';' from sysobjects where type='TR' and name like 'T_%'

    馮立彬的博客

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    SQLServer中對所有的用戶表生成觸發器

    SQLServer中對所有的用戶表生成觸發器:測試的時候比較重要,我們可以知道當前交易影響了哪些表 --用于記錄 用戶 在當前表上什么時候、做的什么操作:update、insert、delete create table TriggerRecord ( operdt datetime,--觸發時間 opertp varchar(10),--操作類型:u
    推薦度:
    標簽: 創建 生成 用戶
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 成人精品视频成人影院| 国产在线精品一区二区三区不卡| 久久er热视频在这里精品| 亚洲av无码成人精品国产| 亚洲国产精品国自产电影| 国产精品无码无片在线观看| 无码人妻精品一区二区三区99不卡| 中文字幕亚洲精品| 97久久精品无码一区二区| 亚洲精品美女久久777777| 老年人精品视频在线| 国产精品美女网站在线观看| 国产成人精品综合网站| 老司机亚洲精品影院无码| 亚洲国产精品视频| 久久99精品久久久久久水蜜桃| 88国产精品无码一区二区三区| 2022年国产精品久久久久| 久久精品无码专区免费东京热 | 精品国产乱码久久久久久郑州公司| 久久久久亚洲精品天堂久久久久久 | 四虎影视永久在线观看精品| 香港aa三级久久三级老师2021国产三级精品三级在 | 久久精品国内一区二区三区| 国产AV午夜精品一区二区入口| 无码精品A∨在线观看| 中文精品久久久久人妻不卡| 完整观看高清秒播国内外精品资源| 国内精品久久久久久久久| 国产午夜精品理论片| 国产精品片在线观看手机版| 国产成人综合精品一区| 91精品国产品国语在线不卡| 777欧美午夜精品影院| 91精品观看91久久久久久| 国产va免费精品| 国产欧美日本亚洲精品一5| 国产线视频精品免费观看视频| 精品久久久久国产免费| 欧美ppypp精品一区二区| 亚洲国产精品成人午夜在线观看|