İstihdam yaptığım yerde #temp tablolarını kullanmaktan uzaklaşmak ve bunun yerine SPID'lerle kalıcı fiziksel tablolar kullanmak için bir hareket var. Ne zaman daha önce bir #temp tablosuna INSERTed zaman, şimdi bir INSERT INTO dbo.MyPermanentTable (SPID, ...) VALUES (@@SPID, ...)gereklidir - DELETE FROM dbo.MyPermanentTable WHERE SPID = @@SPIDörneğin bir saklı yordamın başlangıcında bir sürü ifade ile birlikte . Ayrıca, bu 'geçici verilerin depolanması için kalıcı tabloların' kullanıldığı her yerde, a WHERE SPID = @@SPID.
Bu uygulamaya doğru hareketin arkasındaki mantık, sorguların çalıştığı sunucunun genel performansını artıracağıdır (I / O ve tempdb'deki çekişmeyi azaltarak). Birkaç nedenden dolayı bu yaklaşıma meraklı değilim - çirkin, potansiyel olarak tehlikeli ve yeni şemayı kullanan sorguların performansına iyi zarar verebileceği anlaşılıyor.
#Temp tablolarını ortadan kaldırmak için bu veya benzeri yaklaşımlarla ilgili herhangi bir deneyimi olan var mı?