从@tempTable中的存储过程填充gridview

时间:2012-01-04 08:03:30

标签: c# sql stored-procedures gridview temp-tables

我有一个带有c#和Microsoft SQL Server的项目,我想用存储过程填充我的gridview。

这个过程中有一个表声明(我需要这个@temptable来从另一个数据库中获取一些带有opendatasource的数据)。

在SQL Server Management Studio中没关系,但是当我的程序减速@tempTable时,它不会填充我的gridview(在c#项目中)(即使我不使用它)。

如何在程序中使用@tempTable在gridview中使用它?

P.S。我也试过@tmp,#tmp,## tmp表。

2 个答案:

答案 0 :(得分:1)

简单的答案是,除非创建临时表并将其保留在数据库中,否则无法像普通表那样连接到临时表。 @temptable是本地参考。

如果你知道表定义,你可以设置一个合适的数据对象;从过程中传回临时表的所有行;将结果存储在数据对象的集合中,并使该集合成为网格的数据源。

这意味着您无法使用Server Explorer中的任何拖放功能,但需要编写自己的SQL命令来检索该数据并填充该集合。

答案 1 :(得分:0)

导致连接类型的问题。它是oledbconnection并且我将它更改为sqlconnection,现在我可以在存储过程中使用表变量来在网格中选择它