在程序中生成临时表,然后调用存储过程,在存储过程中使用临时表的问题 将临时表改为普通表,用完后删除select * into newtable from your table...drop table newtable 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1、建一個全域的temp table (##),用一個字段來區分每一個連線的數據。如: Create table ##GlobalTable(SecID int,....) INSERT INTO ##GlobalTable SELECT @@SPID,...... /*@@SPID是每一條連線的ID,可根據這個來區分 */2、不要在程序中生成临时表,直接在存儲過中生成數據。在外部程中接受SP的計算結果。 例: Create Proc ProcName .... AS CREATE Table #tmp (.....) ...... SELECT * From #tmp 程式外部 Create table #tempResult(....) INSERT INTO #tempReult) EXEC ProcName3、若是SQL Server2000,則可用XML技術。 程式外部把這些數據組成XML字串,然後在存儲過中用OpenXML函數重新成結果集。 例: Create ProcName @xmlData text,..... AS Declare @myid int Create table #tmp(....) exec sp_xml_preparedocument @myid OUTPUT, @xmlData INSERT INTO #tmp SELECT * FROM OPENXML (@myid,....... 如何用 JET SQL 或 Microsoft.ACE.OLEDB.12.0 合并不同数据库中的表 查询到的 @F1 是条Insert语句,怎么样才能使用!!! 数据库死锁之后,除了重启之外有什么办法。 SqlDataReader是如何执行的? 求SQL语句 如何列转行,并且有统计项,多谢了 一个有难道的sql写法,高分求解 sqlserver2005中怎么样修改XMl值 求 SQL 语句 迷惑、困惑。。。请各位指教SQL查询语句的迷津!详情见内。 没有人回答吗?(呜呜...) 各位高手帮帮小弟,高分赠送
Create table ##GlobalTable(SecID int,....)
INSERT INTO ##GlobalTable
SELECT @@SPID,...... /*@@SPID是每一條連線的ID,可根據這個來區分 */2、不要在程序中生成临时表,直接在存儲過中生成數據。在外部程中接受SP的計算結果。
例:
Create Proc ProcName ....
AS
CREATE Table #tmp (.....)
......
SELECT * From #tmp
程式外部
Create table #tempResult(....)
INSERT INTO #tempReult)
EXEC ProcName
3、若是SQL Server2000,則可用XML技術。
程式外部把這些數據組成XML字串,然後在存儲過中用OpenXML函數重新成結果集。
例:
Create ProcName @xmlData text,.....
AS
Declare @myid int
Create table #tmp(....) exec sp_xml_preparedocument @myid OUTPUT, @xmlData
INSERT INTO #tmp
SELECT *
FROM OPENXML (@myid,.......