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

sqlserver 動態(tài)創(chuàng)建臨時表的語句分享

 更新時間:2012年01月20日 20:12:11   作者:  
開發(fā)業(yè)務需求,需要對一個表作數(shù)據(jù)分析,由于數(shù)據(jù)量較大,而且分析時字段會隨條件相應變化而變化
因此計劃先把數(shù)據(jù)轉(zhuǎn)插入一個臨時表,再對臨時表的數(shù)據(jù)進行分析。
問題點是如何動態(tài)創(chuàng)建臨時表。原先Insus.NET使用下面代碼實現(xiàn):
復制代碼 代碼如下:

DECLARE @s NVARCHAR(MAX) = '
IF OBJECT_ID(''[dbo].[#Tb]'') IS NOT NULL
DROP TABLE [dbo].[#Tb]
CREATE TABLE [dbo].[#Tb]
(
[xxx] INT,
[xxx] NVARCHAR(50),
'+ [dbo].[Column]() + '
)'
EXECUTE(@s)


上面代碼中,有一個函數(shù)[dbo].[Column]() 是取得一系列動態(tài)字段。
其實,上面的代碼一點問題也沒有,是能正確動態(tài)創(chuàng)建一個臨時表,但是接下來代碼,我們無法再使用這個臨時表[dbo].[#Tb] ,因為run第10行代碼EXECUTE(@s)這動作之后,進程已經(jīng)結束了。這樣說法,動態(tài)創(chuàng)建出來的臨時表,也沒有什么意義了。
為了解決這個問題,Insus.NET想到了一個方法,算是能解決這個問題。既能動態(tài)創(chuàng)建,又能在創(chuàng)建之后,能繼續(xù)使用這個臨時表。

復制代碼 代碼如下:

IF OBJECT_ID('[dbo].[#Tb]') IS NOT NULL
DROP TABLE [dbo].[#Tb]
CREATE TABLE [dbo].[#Tb]
(
[xxx] INT,
[xxx] NVARCHAR(50)
)
DECLARE @tb NVARCHAR(MAX) = 'ALTER TABLE [dbo].[#Tb] ADD ' + [dbo].[Column]()
EXECUTE(@tb)


只要細心看了一下,就是可以知道,可以先按正常創(chuàng)建這個臨時表,再動態(tài)修改這個臨時表的字段。這樣做之后,程序run完第10行代碼之后,就能再繼續(xù)使用這個臨時表,如:
SELECT * FROM [dbo].[#Tb]

相關文章

最新評論

教育| 石河子市| 修武县| 若羌县| 武平县| 沂源县| 岢岚县| 巴青县| 白朗县| 育儿| 新密市| 霸州市| 吴旗县| 阿拉善盟| 杂多县| 怀来县| 华池县| 德安县| 金沙县| 武川县| 邹平县| 汝阳县| 登封市| 青浦区| 龙口市| 辽阳县| 泗洪县| 黔东| 大丰市| 邳州市| 沙雅县| 时尚| 鹤庆县| 舟曲县| 沅江市| 阜新市| 囊谦县| 桓台县| 清苑县| 昂仁县| 永泰县|