2011-07-06 135 views
1

我正在使用存儲過程將數據從兩個不同的數據庫提取到ASP.NET應用程序。我的存儲過程如下工作 - 或檢查全局臨時表中存在的不說## temp_table - 從兩個不同的數據庫中提取數據,並將其填寫 - 如果存在,則刪除它,如果不建立新的臨時表說## temp_table 臨時表 - 從臨時表 選擇數據 - 刪除臨時表存儲過程臨時表問題?

現在的問題是,當用戶訪問同一頁面相同的存儲過程的數量正上方,然後到一些用戶得到它錯誤臨時表已經存在。 現在請有人幫我解決這個問題,或者建議我替代一些,因爲我不想在ASP代碼中編寫查詢。有人建議我使用意見。等待你的建議。

回答

0

「##」表是通過對SQL實例的所有連接訪問,而「#」表是隻能由創建它們的連接。您所描述的功能聽起來像應該使用「#」表格,而不是「##」表格。

0

您不能創建表時,必須聲明變量臨時表存儲...與列你期望填寫...申報表變量是這樣的:

declare @tmpTable table(myID int,myName varchar(50)); 

fill it like 
insert into @tmpTable 
Select * from table1 

use it like 
select * from @tmpTable 
+0

「@」臨時表會工作也是如此。 @和#表格非常相似,最好使用最終取決於正在完成的工作。 –

+0

感謝您如此快速地將解決方案發布到我的問題。我會嘗試這兩種解決方案,並明天發佈我的結果。 –

+0

這是完美的解決方案,我的問題已得到解決。謝謝 –