3

Oracle 内で OOP と TDD を使用しようとしています。はい、私はそれがクレイジーに聞こえることを知っています。そして、アドバイスが必要です。

次のコンストラクターメソッドのテストを書いています(この質問のために簡略化されています):

CONSTRUCTOR FUNCTION PERSON(p_pidm NUMBER, p_throw_exception NUMBER DEFAULT 0, p_program_id NUMBER DEFAULT 0)
RETURN SELF AS RESULT IS

BEGIN

    -- Attach constructor parameters to internal attributes
    self.throw_exception := p_throw_exception;
    self.program_id := p_program_id;

    -- TESTING STUDENT INSTANTIATION
    self.student := NEW STUDENT(self.a_pidm);

    RETURN;
END;

self.student対応するテストでは、 が の有効なインスタンスに設定されていることを確認する必要がありますSTUDENT。他の言語では、typeof メソッドを使用してこれを行いますが、PL/SQL では認識していません。

質問は、ユーザー定義型を渡してそのクラス/型名を取得できる関数/手順を知っている人はいますか?

ありがとう。

4

1 に答える 1

5

IS OF <<type>>おそらく構文を使用したいと思うでしょう。

何かのようなもの

IF l_variable IS OF( student )
THEN
  <<do something>>
END IF;
于 2013-01-22T20:13:33.167 に答える