2012-01-04 60 views
1

我有一个项目与c#和Microsoft SQL Server,我想用存储过程填充我的gridview。从存储过程填充gridview在里面@tempTable

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

在SQL Server Management Studio中可以,但是当我的过程有一个@tempTable减速时(即使我不使用它的表),它不会填充我的gridview(在C#项目中)。

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

p.s.我也尝试了@tmp,#tmp,## tmp表格。

回答

0

有关连接类型的问题。这是oledbconnetion,我把它改成了sqlconnection,现在我可以在存储过程中使用表变量在网格中选择它

1

简单的答案是,除非创建临时表并将其留在数据库中,否则无法像连接普通表一样连接它。 @temptable是一个本地引用。

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

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