2

SQL Server 2008 から DB2 へのリンク サーバーがあります。リンク サーバーは、Microsoft ドライバーではなく IBM ドライバーを使用します。

したがって、これは SQL Server から機能します。

exec ('call RERTEBT.GET_DEFINITION (69,'''','''')') AT MyLinkedDB2Server

これはopenQueryを使用しても機能します...別のテーブルから異なるデータを返しています

select
RPMG_ETY_CD,
     ROW_CU_DATA_IN,
ROW_EF_DT,
ROW_XPR_DT,
RPMG_ETY_NM
from 
OPENQUERY 
         (MyLinkedDB2Server,
                'select 
                      RPMG_ETY_CD,
                      ROW_CU_DATA_IN,
                      ROW_EF_DT,
                      ROW_XPR_DT,
                      RPMG_ETY_NM
                 from RERTEBT.V1RERRMM')

ただし、DB2 Sprocでデータを返すための選択を取得できません

これは失敗します -

SELECT FLT_DFN_ID, FLT_SRC_DFN_NO, FLT_VRSN_NO, FLT_STAT_CD, FLT_TY_CD, FLT_NAME 
      FROM OPENQUERY (MyLinkedDB2Server, 
                         'call RERTEBT.GET_DEFINITION 69,'''','''')')

SQL Server のリンクされたサーバーから DB2 ストアド プロシージャを呼び出してデータを返す方法について何か考えがある人はいますか、またはこれを実行できますか。DB2 がこれを行うことができない場所を読みましたが、それに関する実際のドキュメントは見たことがありません。

ありがとう

4

2 に答える 2