最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

EXEC(EXECUTE)函數(shù)訪(fǎng)問(wèn)INSERTED或DELETED的內(nèi)部臨時(shí)觸發(fā)表

 更新時(shí)間:2012年01月20日 21:32:08   作者:  
近段時(shí)間,MS SQL方面,一直需要開(kāi)發(fā)動(dòng)態(tài)方面的存儲(chǔ)過(guò)程或是觸發(fā)器以及表函數(shù)。因?yàn)槌绦蛟O(shè)計(jì)一開(kāi)始就是讓用戶(hù)動(dòng)態(tài)添或是刪除一個(gè)表的字段,然而這個(gè)表的相關(guān)存儲(chǔ)過(guò)程或是觸發(fā)器以及為報(bào)表準(zhǔn)備的表函數(shù)也會(huì)隨之這個(gè)表的字段變化而變化
剛開(kāi)始時(shí),這個(gè)表的字段很少(10個(gè)以?xún)?nèi)),前開(kāi)發(fā)者把這個(gè)表的所有存儲(chǔ)過(guò)程與觸發(fā)器以及表函數(shù)全是寫(xiě)死了。用戶(hù)每添加一些字段,都需要手動(dòng)去更改這些存儲(chǔ)過(guò)程與觸發(fā)器以及表函數(shù)?,F(xiàn)在這個(gè)表的字段已經(jīng)高達(dá)300個(gè)以上,有可能還會(huì)增長(zhǎng),因此Insus.NET的業(yè)務(wù)就是把這此靜態(tài)全改寫(xiě)為動(dòng)態(tài)處理。

然而有一個(gè)問(wèn)題一直困攏至昨天,昨天是星期天本應(yīng)是休息的,但是這個(gè)問(wèn)題沒(méi)有解決,因此這天算不上休息了。

問(wèn)題就是改寫(xiě)表的觸發(fā)器,涉及到EXEC(EXECUTE)函數(shù)訪(fǎng)問(wèn)INSERTED或DELETED的內(nèi)部臨時(shí)觸發(fā)表,如:
復(fù)制代碼 代碼如下:

EXECUTE('SELECT '+ @N +' = ISNULL(['+ @I +'],0) FROM inserted')


當(dāng)你嘗試執(zhí)行上面的SQL語(yǔ)句,會(huì)得到一個(gè)異常提示:invalid object name 'inserted'。我們無(wú)法顯示訪(fǎng)問(wèn)INSERTED或DELETED的內(nèi)部臨時(shí)觸發(fā)表。

由于INSERTED或是DELETED表是動(dòng)態(tài)駐留在內(nèi)存中,而不是存儲(chǔ)在數(shù)據(jù)庫(kù)中,它不是顯式的。觸發(fā)器的執(zhí)行是在導(dǎo)致觸發(fā)器被觸發(fā)的執(zhí)行計(jì)劃中。當(dāng)我們使用EXEC(EXECUTE)或sp_executesql執(zhí)行動(dòng)態(tài)生成的SQL語(yǔ)句時(shí),它卻是另外一個(gè)單獨(dú)的執(zhí)行計(jì)劃。兩者之間的資源無(wú)法相互訪(fǎng)問(wèn),再加上計(jì)劃執(zhí)行完畢,內(nèi)存也隨之釋放資源了。

但是問(wèn)題還是需要解決,Insus.NET想起的還是臨時(shí)表??梢园袸NSERTED或DELETED表中的數(shù)據(jù),首先轉(zhuǎn)換入臨時(shí)表了。這樣子,我們就可以對(duì)臨時(shí)表的數(shù)據(jù)進(jìn)行處理了。

復(fù)制代碼 代碼如下:

SELECT * INTO #inserted FROM INSERTED
SELeCT * INTO #deleted FROM DELETED



實(shí)現(xiàn)代碼:

復(fù)制代碼 代碼如下:

DECLARE @F NVARCHAR(MAX) = CONVERT(NVARCHAR(MAX),@I) --@I動(dòng)態(tài)字段
EXECUTE ('SELECT ['+ @F +'] FROM #deleted)

相關(guān)文章

  • Sql Server 視圖數(shù)據(jù)的增刪改查教程

    Sql Server 視圖數(shù)據(jù)的增刪改查教程

    這篇文章主要介紹了Sql Server 視圖數(shù)據(jù)的增刪改查教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-01-01
  • sqlserver數(shù)據(jù)庫(kù)危險(xiǎn)擴(kuò)展刪除和恢復(fù)代碼

    sqlserver數(shù)據(jù)庫(kù)危險(xiǎn)擴(kuò)展刪除和恢復(fù)代碼

    今天為了實(shí)現(xiàn)sqlserver的復(fù)制功能,因?yàn)橐郧皠h除了很多的sqlserver的一些會(huì)導(dǎo)致不安全因素的擴(kuò)展,導(dǎo)致很多功能無(wú)法用,沒(méi)有辦法需要重新的恢復(fù)擴(kuò)展。
    2010-07-07
  • MySql 安裝時(shí)的1045錯(cuò)誤

    MySql 安裝時(shí)的1045錯(cuò)誤

    MySql安裝到最后一步的時(shí)候,出現(xiàn)1045的錯(cuò)誤有兩種解決辦法。
    2009-07-07
  • 淺述SQL Server的聚焦強(qiáng)制索引查詢(xún)條件和Columnstore Index

    淺述SQL Server的聚焦強(qiáng)制索引查詢(xún)條件和Columnstore Index

    本文主要講了強(qiáng)制使用索引條件來(lái)進(jìn)行查詢(xún),當(dāng)對(duì)于使用默認(rèn)創(chuàng)建索引進(jìn)行查詢(xún)計(jì)劃時(shí)覺(jué)得不是最優(yōu)解,可以嘗試使用強(qiáng)制索引來(lái)進(jìn)行對(duì)比找出更好得解決方案。簡(jiǎn)短的內(nèi)容,深入的理解.有興趣的朋友可以看下
    2016-12-12
  • 一個(gè)刪選數(shù)據(jù)的例子,使用GROUP、DISTINCT實(shí)例解析

    一個(gè)刪選數(shù)據(jù)的例子,使用GROUP、DISTINCT實(shí)例解析

    今天遇到的問(wèn)題,糾結(jié)了一上午,終于解決了。在此記錄下來(lái),自我認(rèn)為還有很多類(lèi)似的問(wèn)題都可以套用這段代碼
    2013-09-09
  • sql動(dòng)態(tài)行轉(zhuǎn)列的兩種方法

    sql動(dòng)態(tài)行轉(zhuǎn)列的兩種方法

    sql動(dòng)態(tài)行轉(zhuǎn)列的兩種方法,需要的朋友可以參考一下
    2013-04-04
  • SQL 窗口函示例數(shù)詳解

    SQL 窗口函示例數(shù)詳解

    窗口函數(shù)(Window Function),也叫OLAP函數(shù)(Online Anallytical Processing,聯(lián)機(jī)分析處理)或者分析函數(shù)(Analytic Function),可以對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)進(jìn)行實(shí)時(shí)分析處理,這篇文章主要介紹了SQL 窗口函數(shù)詳解,需要的朋友可以參考下
    2024-06-06
  • SQLSERVER如何查看索引缺失及DMV使用介紹

    SQLSERVER如何查看索引缺失及DMV使用介紹

    當(dāng)我們發(fā)現(xiàn)數(shù)據(jù)庫(kù)查詢(xún)性能很慢的時(shí)候,大家都會(huì)想到加索引來(lái)優(yōu)化數(shù)據(jù)庫(kù)查詢(xún)性能,在短時(shí)間之內(nèi)找到一個(gè)優(yōu)化的索引組合對(duì)人腦來(lái)講,不是一件簡(jiǎn)單的事啊,所以有了本文的出現(xiàn),感興趣的你可不要錯(cuò)過(guò)了哈
    2013-02-02
  • SQL語(yǔ)句中的ON DUPLICATE KEY UPDATE使用

    SQL語(yǔ)句中的ON DUPLICATE KEY UPDATE使用

    本文主要介紹了SQL語(yǔ)句中的ON DUPLICATE KEY UPDATE使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • SQL提取數(shù)據(jù)庫(kù)表名及字段名等信息代碼示例

    SQL提取數(shù)據(jù)庫(kù)表名及字段名等信息代碼示例

    這篇文章主要介紹了SQL提取數(shù)據(jù)庫(kù)表名及字段名等信息的方法,文中向大家分享了實(shí)例代碼,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-10-10

最新評(píng)論

黑山县| 图片| 巴里| 高州市| 图们市| 宜良县| 香格里拉县| 六枝特区| 东阳市| 二连浩特市| 台南市| 平南县| 汪清县| 桃园县| 遂溪县| 四平市| 大足县| 栾城县| 夏津县| 鸡泽县| 安远县| 松潘县| 汾阳市| 洪湖市| 新巴尔虎左旗| 深泽县| 西华县| 墨竹工卡县| 遂昌县| 宁蒗| 溧阳市| 东平县| 马鞍山市| 汉阴县| 五寨县| 樟树市| 雅安市| 鲁甸县| 剑川县| 义马市| 封丘县|