sql >> データベース >  >> RDS >> Oracle

Oracle PL/SQLで呼び出し元のプロシージャまたは関数の名前を取得します

    OWA_UTILというパッケージがあります (これは、古いバージョンのデータベースにはデフォルトでインストールされていません)。これにはメソッドWHO_CALLED_ME()があります これは、OWNER、OBJECT_NAME、LINE_NO、およびCALLER_TYPEを返します。呼び出し元がパッケージ化されたプロシージャである場合、プロシージャ名ではなくPACKAGE名が返されることに注意してください。この場合、プロシージャ名を取得する方法はありません。これは、プロシージャ名がオーバーロードされる可能性があるため、必ずしも有用ではないためです。

    詳細をご覧ください。

    10gR2以降、$$PLSQL_UNITもあります。 特殊機能;これにより、オブジェクト名も返されます(つまり、パッケージ化されていないプロシージャ)。



    1. 接続されているデータベースは読み取り専用です

    2. SQLite Count()をGROUP BYと組み合わせて、結果セットに「カウント」列を追加します

    3. Java Oracle localhost接続エラー(ORA-12505)

    4. FieldAから値を取得し、db関数に送信し、FieldBに値を返します