1

Linux 用の DB2 9.7 を使用しています。ストアド プロシージャは PL/SQL (Oracle のプログラミング言語) で実装されているため、レコード セットは出力パラメーター (SYS_REFCURSOR) です。

CREATE OR REPLACE PROCEDURE TEST_CURSOR (
  CV_1 OUT SYS_REFCURSOR
) IS
BEGIN
    OPEN CV_1 FOR
    SELECT 1 COLUMN
      FROM DUAL;
END TEST_CURSOR;

C# コードでこのパラメーターを宣言する方法がわかりません。

DB2Parameter parameter = ((DB2Command)command).CreateParameter();

parameter.ParameterName = "cv_1";
parameter.Direction = ParameterDirection.Output;
parameter.DbType = ...
4

1 に答える 1

1

結果セットの DB2Type 列挙はありません。彼らの API では、DB2Command.ExecuteReader メソッドを使用してコマンドを実行します。PL/SQL を、sys_refcursor パラメータを持つプロシージャではなく、sys_refcursor を返す関数に変更する必要がある場合があります。

于 2010-06-27T21:37:56.167 に答える