PL SQL のストアド プロシージャには、カスタム オブジェクト タイプのパラメータが含まれています。Delphiでパラメータを渡すにはどうすればよいですか? これをデルファイで定義する方法は?
1 に答える
オブジェクト データ型は非常にオラクル固有の概念であり、通常、Delphi の dbExpress や dbGo (ADO) など、複数のデータベースをサポートするライブラリではこれがサポートされていません。
使用しているデータアクセスレイヤーに関する情報が含まれていないため、この特定のレイヤーがOracleオブジェクトをサポートしているかどうか、およびこれがどのように機能するかについて具体的に説明することはできないため、これは一般的なアドバイスです.
幸いなことに、Delphi には Oracle 固有のデータ アクセス ライブラリがあり、それらすべてに Oracle オブジェクトの何らかのサポートが含まれている可能性があります。IIRC 私が知っているすべてのライブラリは無料ではありません。
たとえば、allroundautomations Direct Oracle Access製品を使用すると、Oracle データベースに対してオブジェクトTOracleObject
を読み書きするために使用するクラスがあります。
たとえば、ストアド プロシージャを でTOracleQuery
呼び出し、メソッドを呼び出すプロシージャにオブジェクトをSetComplexVariable
渡し、TOracleObject
インスタンスをパラメータとして渡すことができます。
詳細については、DOA マニュアルTOracleQuery.SetComplexVariable
を参照してください (メソッド リファレンスを検索してください)。