存储过程怎样返回一个表?

stevedai 2003-05-03 06:27:33
我想用 ADO.NET(C#)通过调用存储过程的方式,进行对数据库的访问,想返回一个DataSet or DataReader 对象,但是用存储过程怎样做到?
比如,我要访问一个表(UserInfo),用存储过程 返回一个表的信息,然后用ADO.NET执行,怎么做?
...全文
67 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
whbjtam 2003-05-05
  • 打赏
  • 举报
回复
这就是procedure和function的区别:

function返回表时,可用在from后。
whbjtam 2003-05-05
  • 打赏
  • 举报
回复
不用procedure

用function

sincere1314 2003-05-04
  • 打赏
  • 举报
回复
这个好像用存储过程不好实现吧!
不是任何SQL语句都能用存储过程能实现的
它在增加,删除,更新记录等方面应用较多
而在信息浏览方面不行
stevedai 2003-05-04
  • 打赏
  • 举报
回复
问题时,首先,我想对数据库的所有访问都通过存储过程,再写数据库连接代码时,不写任何SQL语句,直接调用存储过程,其次,我想用它来返回一个表等,存储过程好像只能返回整数值,表示操作结果,
CREATE PROCEDURE GetUserInfo
@UserID varchar(10)
AS
SELECT *
FROM UserInfo
WHERE UserID=@UserID
像上面的存储过程,我想在c#中
SqlConnection connection =new .....
SqlCommand command =new SqlCommand(GetUserInfo,connection)
.....
我怎样获得数据,
如果这样
string sql="select * from userInfo";
SqlDataAdapter a=new SqlDataAdapter(sql,connection);
DataSet dataset=new DataSet();
a.Fill(dataset,"UserInfo");
.......
这样是可以,但用存储过程怎么办???
caiyunxia 2003-05-04
  • 打赏
  • 举报
回复
在过程后面加
select * from 需要返回的表
herofyf 2003-05-04
  • 打赏
  • 举报
回复
用select返加一个表的所有记录,然后用sqlcommand.executenoreader命令去执行,用其返回 的值构造一个dataset中的datatable
horse2902 2003-05-03
  • 打赏
  • 举报
回复
关注中!
pengdali 2003-05-03
  • 打赏
  • 举报
回复
直接 exec 过程名 就OK了

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧