0

この号は、私よりも PL/SQL と T-SQL についてよく知っている人に任せたいと思います。以下は私が継承したコードで、1 時間ずれた日付を返しています。リモート クエリの select ステートメントで "to_char(i.UPDATE_DT, ''YYYY-MM-DD HH24:MI:SS.FF3'')" を削除すると、時間オフセットがなくなります。この変更がもたらす可能性のある他の影響について心配しているので、私の質問は、なぜ誰かが OpenQuery を介して Oracle 時間を文字列に変換し、select ステートメントで T-SQL convert を使用するのでしょうか? ここで何が欠けていますか? to_char がオフセットを引き起こすのはなぜですか (それが理由である場合)?

SELECT
    CSE_ID                         AS ID,
    OTHR_CSE_ID                   AS Case_Num,
    convert(datetime,UPDATE_DT,121) AS Export_Time
FROM
    OpenQuery( OracleTbl, '
    SELECT c.CSE_ID, r.OTHR_CSE_ID, to_char(i.UPDATE_DT,''YYYY-MM-DD HH24:MI:SS.FF3'') UPDATE_DT 
    FROM AE_CSES c
    INNER JOIN CSES i ON i.CASE_ID = c.CSE_ID AND i.ACTION_CD = ''INS''
    INNER JOIN OTH_CSE_REFS r ON r.CSE_ID = c.CSE_ID AND r.OTH_CS_REF_SEQ_NBR = 1 AND r.OTHER_SOURCE_TYPE = ''SIE''
    ') AS i
4

1 に答える 1

0

単純な答えですが; あるサーバーと他のサーバーの間の夏時間の問題?

于 2012-11-05T16:33:25.077 に答える