dbExpress使用存储过程不能返回结果集!(200分)

  • 主题发起人 主题发起人 剑不留痕
  • 开始时间 开始时间

剑不留痕

Unregistered / Unconfirmed
GUEST, unregistred user!
我一定要使用dbExpress的数据库引擎!
可是如果:
存储过程返回一个结果查询或临时查询,如果使用Query或StoreProc查询,都会提示:
DataSet:Cursor not returned from Query!
 
TSQLQuery -> TDataSetProvider -> TClientDataSet -> TDataSource -> TDBGrid
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
你需要这三个组合才行
 
老大,你写个这样的存储过程,
CREATE PROCEDURE GetData
AS
begin
SELECT * INTO #temp FROM 一张表名
SELECT * FROM #temp
end
GO
然后试试。游标都收不到,你这三个组合,又有什么用!我又不是没有试过。
 
提供一个线索:http://www.delphibbs.com/delphibbs/dispq.asp?lid=2268230
希望能有所帮助。 [:)]
 
谢谢,可惜不能解决我的问题。
我的环境是:Windows XP、SQL Server2000,D6或D7,
在SQLServer上建一个存储过程,存储过程中查询一张表,并把结果放在临时表中,然后返回这张临时表
不管是使用StoreProc还是SQLQuery,都不能得到结果集,只会提示:查询没有返回游标。
请各位高手解决!!!!
 
Borland Delphi 帶的 DBexpress Driver 有BUG, 需要換一個。  到Borland網站上下載或
換用coreLab 的 dbexpress driver就可以了。
 
在带有返回结果集的存储过程,使用dbExpress返回确实有问题(经过测试)。不知道李维的书中是否讲到了使用SQL Server的这种类似情况?在SQL Server的联机帮助中对存储过程的说明,也表示了在存储过程中使用的临时表,超出了它的作用域时,就不能再被其它的元素所访问。
 

Similar threads

后退
顶部