1

我有一个奇怪的问题。我正在使用 Firebird for .Net 并使用 Interbase 数据库。当我尝试使用 SQL 查询填充数据集时,它可以正常工作,但是当我尝试执行 storedProc 时,它会挂在填充方法上。

这是我的代码片段:

DataTable dt = new DataTable();
 FbDataAdapter ada = new FbDataAdapter("spsGetLastOpened",        System.Configuration.ConfigurationManager.ConnectionStrings["mydb"].ConnectionString);
 ada.SelectCommand.CommandType = CommandType.StoredProcedure;
 ada.SelectCommand.Parameters.Add("@USER_KEY",2);
 ada.Fill(dt);

我搜索了人们建议的问题,如果已经与数据库建立了开放连接,就会发生这种情况,因此我创建了一个不打开连接的独立实用程序(Dataadapter 自行管理连接)。

请建议我在这里做错了什么。

亲切的问候,阿里

4

2 回答 2

0

我没有将firebird用于.Net,但我想记住一件事。您可以将存储过程作为常规 sql 语句执行

- 执行过程 SomeProc(?,...)

或用于可选过程

-select * from SomeProc(?,....)

于 2011-12-21T18:47:22.327 回答
0

对于从谷歌登陆这里的任何人.. 我不知道原因是什么,但是,当我作为交易执行时,它起作用了。我只运行了选择查询,我不明白它为什么起作用?

于 2011-12-26T01:49:25.043 回答