【问题标题】:TAdoDataSet, TAdoStoredProc multiple result setsTAdoDataSet、TAdoStoredProc 多个结果集
【发布时间】:2013-08-08 20:37:39
【问题描述】:

这些组件能够一次性检索多个结果集(例如,从存储过程中),并且使用 D5 我可以成功地使用 NextRecordSet 从 Sql Server 获取第二个和后续的结果集。

但是,如果我将光标位置指定为 clClient,则此 有效;如果我使用 clServer,我会收到“不返回多个结果集”错误。这是一个固有的限制(例如由客户端的 MDac 层强加)还是可以从服务器端游标成功检索多个记录集?

【问题讨论】:

    标签: sql-server delphi ado


    【解决方案1】:

    这是服务器端游标的固有限制。如以下MSDN link所述:

    服务器游标不能用于生成超过 一个记录集。

    此限制适用于生成中描述的所有语句 多个记录集。有关详细信息,请参阅Generating Multiple Recordsets。如果服务器游标与任何语句一起使用 生成多个记录集,应用程序可以返回其中一个 以下错误:

    • 无法在包含单个 SELECT 语句以外的任何内容的存储过程上打开游标。
    • sp_cursoropen。 statement 参数只能是单个 SELECT 语句或存储过程。

    【讨论】:

      猜你喜欢
      • 2013-04-15
      • 2011-06-17
      • 2011-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-14
      • 1970-01-01
      相关资源
      最近更新 更多