0

OPENQUERY に問題があります。

この単純なリンク サーバー SQL があります。

SELECT [ITEM_SERIAL].[SERIAL_NO]
       , [ITEM_SERIAL].[SUB_SEQ_NO_FIRM]
       , [ITEM_SERIAL].[ITEM_NO]
FROM [ORA]..[SSDIGICO].[ITEM_SERIAL]
ORDER BY [ITEM_SERIAL].[SERIAL_NO]

これはスムーズに実行され、問題はありません...

現在、次のようなパフォーマンスを向上させるために OPENQUERY アプローチを使用しようとしています。

SELECT * FROM OPENQUERY(ORA,'
    SELECT [ITEM_SERIAL].[SERIAL_NO]
       , [ITEM_SERIAL].[SUB_SEQ_NO_FIRM]
       , [ITEM_SERIAL].[ITEM_NO]
    FROM [SSDIGICO].[ITEM_SERIAL]
    ORDER BY [ITEM_SERIAL].[SERIAL_NO]
')

そして、何らかの理由で次のエラーメッセージが表示されます。

リンク サーバー "ORA" の OLE DB プロバイダ "OraOLEDB.Oracle" がメッセージ "ORA-00936: 式がありません" を返しました。メッセージ 7321、レベル 16、状態 2、行 1 クエリの準備中にエラーが発生しました"

なぜこのエラーが発生するのか、誰にも手がかりがありますか?

ありがとう。

4

1 に答える 1

1

Oracle では、テーブルまたは列を角括弧で囲みません。コードは次のようになります。

SELECT * FROM OPENQUERY(ORA,'
    SELECT ITEM_SERIAL.SERIAL_NO
       , ITEM_SERIAL.SUB_SEQ_NO_FIRM
       , ITEM_SERIAL.ITEM_NO
    FROM SSDIGICO.ITEM_SERIAL
    ORDER BY ITEM_SERIAL.SERIAL_NO
')
于 2013-04-05T17:32:39.853 に答える