기술 정보
home
채널 소개
home

DBLINK 우회 방안 (Sequence 호출)

문서 유형
기술 정보
분야
인터페이스/연동
키워드
dblink
1 more property

개요

Oracle에서 Tibero로의 DBLink를 사용해 sequence 호출 시 제약이 있을 경우 적용할 수 있는 우회 방안을 안내합니다.

방법

1. Function 생성

 Tibero에 sequence 에 대한 function을 view로 생성합니다.

2, View 호출 및 사용 형태 적용

Oracle to Tibero Link 시 sequence가 아닌 view 를 호출하여 사용하는 형태로 변형합니다.
-- 테스트 시퀀스 생성 CREATE SEQUENCE SEQ_TEST_0627 –시퀀스이름 EX_SEQ INCREMENT BY 1 –증감숫자 1 START WITH 1 –시작숫자 1 MINVALUE 1 –최소값 1 MAXVALUE 1000 –최대값 1000 NOCYCLE –순환하지않음 noCACHE; -- 테스트 테이블 생성 CREATE TABLE T2_TIB (SEQ NUMBER, TEXT VARCHAR(20)); INSERT INTO T2_TIB VALUES (SEQ_TEST_0627.NEXTVAL,’테스트’); -- 우회 전 쿼리 SELECT SEQ.NEXTVAL@OT_0627 AS SEQ_TIB,TEXTAS TEXT_TIB FROM DUAL; -- 우회 후 쿼리 -- 시퀀스 호출 함수 생성 CREATE OR REPLACE FUNCTION SEQ_TEST_0627_FUNC RETURN NUMBER IS V_NEXTVAL NUMBER; BEGIN SELECT SEQ_TEST_0627.NEXTVAL INTO V_NEXTVAL FROM DUAL; RETURN V_NEXTVAL; END SEQ_TEST_0627_FUNC; -- 함수 호출 VIEW를 생성 CREATE OR REPLACE VIEW SEQ_TEST_0627_VIEW AS SELECT SEQ_TEST_0627_FUNC AS NEXTVAL FROM DUAL; SELECT (SELECT NEXTVAL FROM SEQ_TEST_0627_VIEW@OT_0627) AS SEQ_TIB,TEXTAS TEXT_TIB FROM DUAL;
SQL
복사