개요
Oracle에서 Tibero로의 DBLink를 사용해 Tibero에 형 변환 후 update 시 제약이 있을 경우 적용할 수 있는 우회 방안을 안내합니다.
참고
본 문서에서는 PL/SQL 형태로 바꾸어 변형된 값을 인자로 받아 수행했습니다.
방법
1. 테스트 테이블 생성
CREATE TABLE T3_TIB (DT_CD VARCHAR(20), DT_STAMP VARCHAR(20) ,DT DATE);
INSERT INTO T3_TIB VALUES (‘1′,’20201300’, SYSDATE);
INSERT INTO T3_TIB VALUES (‘1′,’20201400’, SYSDATE);
INSERT INTO T3_TIB VALUES (‘0′,’20201500’, SYSDATE);
INSERT INTO T3_TIB VALUES (‘1′,’20201600’, SYSDATE);
SQL
복사
2. 우회 쿼리 적용
--우회 전 쿼리
UPDATE T3_TIB@OT_0627
SET DT_STAMP = TO_CHAR(SYSDATE,’YYYYMMDD’)
,DT = SYSDATE
WHERE DT_CD=’1′;
--우회 후 쿼리
DECLARE
D1 CHAR(8);
D2 DATE;
BEGIN
SELECT TO_CHAR(SYSDATE,’YYYYMMDD’) INTO D1 FROM DUAL;
SELECT SYSDATE INTO D2 FROM DUAL;
UPDATE T3_TIB@OT_0627
SET DT_STAMP = D1
,DT = D2
WHERE DT_CD=’1′;
COMMIT;
END;
/
SQL
복사