posts - 495,comments - 227,trackbacks - 0

          SQL SERVER的臨時表有本地臨時表和全局臨時表之分,在聯(lián)機叢書中這樣描述:

           
                 有本地和全局兩種類型的臨時表,二者在名稱、可見性和可用性上均不相同。本地臨時表的名稱以單個數(shù)字符號 (#) 打頭;它們僅對當(dāng)前的用戶連接是可見的;當(dāng)用戶從 Microsoft® SQL Server™ 2000 實例斷開連接時被刪除。全局臨時表的名稱以數(shù)學(xué)符號 (##) 打頭,創(chuàng)建后對任何用戶都是可見的,當(dāng)所有引用該表的用戶從 SQL Server 斷開連接時被刪除。


          在存儲過程中創(chuàng)建的本地臨時表,相當(dāng)于存儲過程的變量,只在存儲過程內(nèi)可見,而在前臺程序中創(chuàng)建的本地臨時表,就和微軟聯(lián)機叢書中所寫的一樣,是對當(dāng)前的用戶連接可見。了解了這些,可以在不同場合不同需求下使用不同的方法來創(chuàng)建本地臨時表,這樣,會使臨時表發(fā)揮它最大的用處。


          /*****************表變量********************/
          declare @t table(
           cataid int
          )

          insert into @t select a.cataid from f_getchlid(27,'5961051') a
          select top 10 favorites.*,multicata.cataname
          from favorites left outer join multicata on favorites.cataid=multicata.cataid
          where favorites.userid='5961051' and favorites.cataid in (
           select * from @t)


          /****************臨時表************************/
          方法一、
          select a.cataid into #t from f_getchlid(27,'5961051') a
          select top 10 favorites.*,multicata.cataname
          from favorites left outer join multicata on favorites.cataid=multicata.cataid
          where favorites.userid='5961051' and favorites.cataid in (
           select * from #t)
          drop table #t


          方法二、
          create table #t (
           cataid int
          )
          insert into #t select a.cataid from zhaoguoguang.f_getchlid(27,'5961051') a
          select top 10 favorites.*,multicata.cataname
          from favorites left outer join multicata on favorites.cataid=multicata.cataid
          where favorites.userid='5961051' and favorites.cataid in (
           select * from #t)
          drop table #t

          posted on 2006-09-28 14:21 SIMONE 閱讀(2978) 評論(0)  編輯  收藏 所屬分類: SQL SERVER
          主站蜘蛛池模板: 平乐县| 长岭县| 临清市| 邵武市| 津市市| 东乡族自治县| 丰台区| 延庆县| 义马市| 万源市| 方山县| 绥江县| 新绛县| 福州市| 九江市| 英德市| 安化县| 遂川县| 穆棱市| 巴林右旗| 鄱阳县| 青浦区| 高碑店市| 通州区| 河间市| 伽师县| 花莲市| 揭东县| 隆化县| 广河县| 横峰县| 若羌县| 崇明县| 恩平市| 托克逊县| 康平县| 晋宁县| 兴化市| 宁明县| 潼关县| 固镇县|