2013-06-04 1 views
0

Oracle에서 DBLINK를 통해 MS-SQL Server 데이터베이스의 날짜 필드 값을 업데이트하려고합니다. 나는이 쿼리를 실행할 때SQL Server 테이블의 Oracle에서 날짜/시간 값 업데이트

그러나

update [email protected] 
SET "ExpireDate" = '2013-06-04 12:00:00' 
WHERE "IdNumber" = 103; 

나는 메시지를 얻을 : 나는 또한

update [email protected] 
SET "ExpireDate" = to_date('2013-06-04 12:00:00','yyyy-mm-dd HH24:MI:SS') 
WHERE "IdNumber" = 103; 

을 시도

[Error] Execution (13: 16): ORA-28534: Heterogeneous Services preprocessing error 

을 나는 메시지를 얻을 :

[Error] Execution (14: 1): ORA-02070: database MISDOORACCESS does not support TO_NUMBER in this context 

오라클로부터이 업데이트를 어떻게 수행 할 수 있습니까?

+0

테이블에서 '선택'할 수 있습니까? 즉, dblink 자체가 구성되어 있고 올바르게 작동하고 있습니까? 값을 오라클'date' 변수에 할당하고 그것을 사용하여 업데이트를 시도 했습니까 (날짜 포맷 문제를 피하기 위해)? 그리고 오라클과 SQL Server의 버전은 무엇입니까? – Pondlife

+0

네트워크 문제가 있다고 생각합니다. 문제가 해결되면 문제가 해결됩니다. – user2451523

답변

1

CAST 기능을 사용해야합니다. 이것을 시도하십시오 :

declare 
    v_date date:=to_date('2013-06-04 12:00:00','yyyy-mm-dd HH24:MI:SS'); 
begin 
    update [email protected] set "ExpireDate"=cast(v_date as date) WHERE "IdNumber" = 103; 
    commit; 
end;