OleDbDataAdapter 如何不能获取某些存储过程的记录集?

_17708668 2004-12-09 08:02:18
OleDbDataAdapter 如何不能获取某些存储过程的记录集?
代码如下:
OleDbParameter para;
OleDbDataAdapter oda = new OleDbDataAdapter( "ubp_selectPlan",g_olecn );
OleDbCommand odc = oda.SelectCommand;
odc.CommandType = CommandType.StoredProcedure;

para = odc.Parameters.Add("@planid", OleDbType.VarChar, 16);
para.Value = planid;
para = odc.Parameters.Add("@remoteserver", OleDbType.VarChar, 32);
para.Value = rserver;
para = odc.Parameters.Add("@db", OleDbType.VarChar, 32);
para.Value = rdb;

try
{
oda.Fill( dt ); //返回记录数为0,在MS 查询分析器中直接调用存储过程有结果
//用 SqlDataAdapter 却可以。在 Delphi 中TADOStoredProc也可以

//..............
}

WHY?????????????????
//.............
...全文
84 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
_17708668 2004-12-12
  • 打赏
  • 举报
回复
不好意思,上面一贴把“答案”写成了“作案”,请海涵
_17708668 2004-12-12
  • 打赏
  • 举报
回复
这个问题我自已解决了,特与大家共享,希望想知道作案的人可以找得到

//......此处代码参考问题内容

DataSet ds = new DataSet();
ds.Tables.Add( dt );

try
{
/* 参数 ds 和 dt.TableName 说明 oda 该 Fill 表 ds.Tables[dt.TableName],也就是 dt
* 参数 0 表示从存储过程获得的记录集中提取数据的偏移位置
* 参数 65536 表示所需获得的记录数,此处65536 是为了取得所有记录,应该够大了
*/
oda.Fill( ds, 0, 65536, dt.TableName );
//.........
}
catch(OleDBException e)
{
//........
}
finally
{
ds.Dispose();
oda.Dispose();
}
//.......
ZJMT 2004-12-11
  • 打赏
  • 举报
回复
up
YAOHE 2004-12-10
  • 打赏
  • 举报
回复
para = odc.Parameters.Add(new Parameters("@planid", OleDbType.VarChar, 16));

para = odc.Parameters.Add(new Parameters("@"@remoteserver", OleDbType.VarChar, 32));

para = odc.Parameters.Add(new Parameters("@"@db", OleDbType.VarChar, 32));

odc.Parameters[0].Value = planid;
odc.Parameters[1].Value = rserver;
odc.Parameters[2].Value = rdb;
_17708668 2004-12-10
  • 打赏
  • 举报
回复
我又试过用 SqlConnect 来获取上述数据集,可以得到结果集。而 Sqlconnect 使用的驱动程序和 SqlOleDb是一样的,这是为什么?
_17708668 2004-12-10
  • 打赏
  • 举报
回复
对于上述两回复:
para 只是个引用,随时可以让它指向另一个同类实例,所以源代码是没问题的。这种方式我用过一万次了。
麻烦大家再查查资料,谢谢
ld_thinking 2004-12-09
  • 打赏
  • 举报
回复
para = odc.Parameters.Add("@planid", OleDbType.VarChar, 16,"planid");
para.Value = planid;

试试

17,740

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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