FAQ

질문과 답변으로 그동안 알지 못했던 내용들을
확인 해보세요.
유용한 정보와 기술로
알차게 준비되어 있습니다.
서브 비주얼
총 105건

Oracle 버전별 강제 종료 API(abort_execution) 지원 여부 차이 때문입니다.

Oracle 12c 이상: DBMS_DEBUG.ABORT_EXECUTION API를 공식 지원하므로, 
중지 버튼 클릭 시 PL/SQL 실행을 즉시 깔끔하게 강제 종료시킵니다.

Oracle 11g 이하: abort_execution을 지원하지 않거나 매우 불안정합니다. 
따라서 디버거가 강제로 예외(Exception) 신호를 주입하여 프로세스를 정지시키는데, 
이 과정에서 PL/SQL 내부의 EXCEPTION (WHEN OTHERS THEN) 블록을 타게 됩니다.

참고: 11g 이하 환경에서 디버깅 중지 시 EXCEPTION 블록이 
실행되는 것은 오라클 엔진 구조상 정상적인 동작입니다.

Debug Session ID 연동 오류로 인한 현상으로, Orange v7 Build 392 , Orange v8 build 152 이상으로 업데이트해야 합니다.

Target 세션과 Debug 세션 간에 Debug Session ID를 주고받아 동기화하는
과정에서 ID 매핑 오류가 발생하면 두 세션이 서로의 응답을 기다리며 무한 대기(Hang)에 빠지게 됩니다.

또 내부로직의 NVL 처리를 통해 디버깅중 멈춤 발생현상을 최소화 하였으므로 
위에 게시된 최신버전의 Orange 으로 update를 권장드립니다. 

Orange v7 Build 392 , Orange v8 build 152 이상 업데이트 부터 유효하지 않는 break point 는 설정할수 없도록 
패치 되었습니다. ( 실제로 break point 사용 가능한 라인에만 사용가능 )

dbms_debug 패키지의 get_line_map에 등록된 실행 가능 라인(Executable Line)이 아니기 때문입니다.
break point를 사용할 때, Message 탭에 브레이크 포인트 사용 가능라인이 표기됩니다. 
대략적인 규칙은 아래와 같습니다.

설정 불가 라인: 주석, 빈 줄, 변수 선언부(DECLARE), BEGIN, END; 등 실제 기계어 코드가 생성되지 않는 라인
브레이크포인트가 걸리지 않는다면 해당 라인이 실제 실행 구문(대입문, SQL문, 조건문 등)인지 확인해야 합니다.

기존 사용하신 계정으로 로그인후 Site License Server를 시작하여 주시기 바랍니다.

Site License 는 H2DB 라는 파일 서버를 사용하며, 접속된 계정 하위 폴더에 생성되므로,

잘 사용하던 Site License Server 의 제품 목록 및 활성화 목록이 초기화 된것 처럼 보일 경우,

기존 사용하던 계정이 아닌 다른 계정으로 시작하셨을 수 있어, 확인이 필요합니다.

Orange는 Online Update를 지원하고 있습니다. 따라서 http://www.warevalley.com 에 대해 접근이 가능한 PC의 경우, 온라인을 통한 최신 Update가 가능합니다.

 


1. EOS 된 관계로, 최신 업데이트 파일 및 설치파일에 대해 전달이 불가합니다.

자세한 사항은 공지사항을 참고하여 주시기 바랍니다.

 

Orange 구버전 공식 지원 종료 안내

 


그러나, DB 보안 등의 이유로 내부망에서 사용할 경우, 업데이트 파일을 전달받았을때, 업데이트방법은 다음과 같습니다.
구버전(Orange 7.0 이전 버전) 의 경우, License 구매 인증을 받으신 후 업데이트 파일을 전달 받을 수 있습니다.


 

1. 회사 명의 구매자일 경우 해당 회사 명의 메일을 통해, 개인 명의 구매자일 경우, 
  구매당시 사용하셨던 메일을 통해, orange@warevalley.com 으로 라이선스 구매시 발급 받으신 인증서와 함께, 패치파일을 요청하시면 됩니다. 


2. 전달되는 패치파일 링크를 다운로드 받아 임의의 폴더에 압축을 해제하십시오.
   • 설치 파일은 각 Edition 별 ( Standard / DBA ) 로  전달될 것이며, 각각 DB에 따라 Ansi 와 Unicode 로 구분되어있을수 있습니다.
   • 기설치된 폴더의 폴더명에 Unicode라는 명칭이 붙거나, Orange.exe가 아닌 OrangeU.exe로 존재할 경우, cab 파일또한 U가 붙은 파일로 다운로드 받으시기 받습니다.
   • 명칭 예제 : 
     orange6.152.ora.stdu.cab - Orange for Oracle 6.0 build 152 버전으로 Standard Edition (Unicode) 버전 패치파일
     orange6.152.tib.dba.cab - Orange for Tibero 6.0 build 152 버전으로 DBA Edition (Ansi ) 버전 패치파일

 

3. 기 설치된 폴더에 압축을 해제한 폴더를 (하위 Config 폴더 등을 포함하여) 덮어써주시기 바랍니다. 


4. Orange 를 실행하여 Help -> About Orange에 최신 build 버전으로 표시되는지 확인하시면 됩니다.

 

M
T
G
음성 기능은 200자로 제한됨

Orange는 Online Update를 지원하고 있습니다. 따라서 http://www.warevalley.com 에 대해 접근이 가능한 PC의 경우, 온라인을 통한 최신 Update가 가능합니다.

그러나, DB 보안 등의 이유로 내부망에서 사용할 경우, 업데이트 파일을 전달받았을때, 업데이트방법은 다음과 같습니다.

  1. warevalley 홈페이지의 Download 페이지로 이동하여, Trial & Manual로 목록을 변경하신후, 기 설치한 Orange에 맞는 설치 파일을 다운로드 받습니다.

  • 설치 파일은 각 Edition 별 ( Standard / DBA ) 별로 구성되어있으며, 각각 Ansi 와 Unicode 로 구분되어있습니다.

  • 기설치된 폴더의 폴더명에 Unicode라는 명칭이 붙거나, Orange.exe가 아닌 OrangeU.exe로 존재할 경우, cab 파일또한 U가 붙은 파일로 다운로드 받으시기 받습니다.

  • 명칭 예제 : 
    orange7.342.ora.stdu.cab - Orange for Oracle 7.0 build 342 버전으로 Standard Edition (Unicode) 버전 패치파일
    orange7.342.tib.dba.cab - Orange for Tibero 7.0 build 342 버전으로 DBA Edition (Ansi ) 버전 패치파일
    ade2.2.b168.x64.stdU.cab - Orange Ade 2.0 build 168 버전으로 Standard Edition (Unicode) 버전 패치파일
  1. 다운로드 받은 설치파일을 실행하여 설치하십시오.

  2. Orange 를 실행하여 Help -> About Orange에 최신 build 버전으로 표시되는지 확인하시면 됩니다.

Orange Ade 를 이용하여 Cubrid DB 접속 사용 시 간헐적인 세션 끊어짐 현상에 대해 설명드립니다.

Orange Ade의 오토 커밋 기능이 OFF 인 상태에서
트랜잭션 시작 후 Commit 혹은 Rollback 을 하지 않은 상태로 세션을 지속하게 되었을 시
Cubrid 서버의 Session Timeout 설정에 따라 세션이 종료될 수 있습니다.
설정은 Cubrid 서버의 cubrid_broker.conf 파일에서 설정 가능합니다

기본값은 300 sec 로 설정되어 있으며
Orange Ade의 오토 커밋 기능을 켜둔 상태라면 해당 증상은 나타나지 않습니다.

관련된 설정 내용은 아래 URL로 접속하여 Session Timeout 에 대해 확인하시면 됩니다.

Orange for Tibero 7.0에 Client폴더로 제공되는 Tibero 7 ODBC Driver 의 경우, 
기존 배포된 Orange에 포함된 7.0.0.7209 버전과,
현재 tibero 홈페이지에서 제공하는 Tibero Client Installer 에 포함되어있는,
libtbcli.dll ( version : 7.0.0.20093 ) 에 대해서 한글 깨짐 현상이 발생되고 있습니다.

확인결과 Orange 7.0 for Tibero Unicode 버전에서는 정상적으로 처리되었으나,
Ansi 의 경우 Tibero 7 ODBC Driver를 사용할 경우에만 한글이 깨지고 있으며
DB 접속 전 ODBC Driver를 이전 버전 ( Tibero 4/5/6 ODBC Driver ) 으로 사용시
정상 처리되는 것을 확인하였습니다.

따라서 해당 ODBC (Tibero 7 ODBC)사용을 위해서는
Tibero ODBC로 문의하셔서 정상적인 Tibero 7 ODBC Driver를 받으시는것이 방법이며, 

그렇지 않을 경우, Orange for Tibero Unicode 버전을 사용하시거나,
이전 버전의 ODBC(Tibero 4/5/6 ODBC Driver)를 사용 하시기 바랍니다.

해당 현상확인 결과, CHARACTERSET – KO16MSWIN949 / NCHARACTERSET – AL16UTF16의 경우,
정상적으로 중국어 입력이 불가한 것으로 판단되었습니다.

OCI를 사용하여 직접 SQL 문장(INSERT INTO 테이블 VALUES ('값'))을 실행할 경우, 중국어 문자 입력이 정상적으로 이루어지지 않을 수 있습니다. 이는 OCI의 문자셋 처리 방식과 관련이 있습니다.

1. OCI의 문자셋 처리 방식
OCI에서는 NLS_LANG 환경 변수를 사용하여 클라이언트 문자셋을 설정합니다.
OCI에서는 문자셋을 기반으로 문자열을 해석하는데, SQL 문장 내부의 문자열 리터럴('중국어문자')이 클라이언트 문자셋으로 변환된 후 서버로 전달됩니다.
서버에서 NLS_CHARACTERSET에 따라 해당 문자열을 다시 변환하여 저장하는 과정에서,
클라이언트 문자셋과 서버 문자셋이 일치하지 않으면 문자 손실이 발생할 수 있습니다.

특히, VARCHAR2 타입은 NLS_CHARACTERSET(예: KO16MSWIN949)으로 저장되므로, 중국어 입력이 제대로 저장되지 않을 가능성이 높습니다.
NVARCHAR2는 NLS_NCHAR_CHARACTERSET(예: AL16UTF16)으로 저장되지만,
SQL 문장에서 직접 N'중국어' 입력 시에도 클라이언트 문자셋과의 불일치로 인해 깨질 수 있습니다.

2. JDBC와의 차이점
JDBC에서는 oracle.jdbc.defaultNChar=true / charactersetEncoding등의 Connection Property를 통해,
NVARCHAR2 컬럼에 대한 처리를 명확하게 지정할 수 있습니다.
따라서, JDBC는 바인드 변수를 사용하지 않더라도 비교적 정상적으로 중국어를 입력할 수 있습니다.
하지만 OCI에서는 이러한 설정이 제한적이며, 직접 SQL 문장을 통한 입력 시 깨질 가능성이 높습니다.

3. 해결 방법: 바인드 변수 사용
따라서 OCI 환경에서 중국어를 올바르게 입력하려면 반드시 바인드 변수를 사용해야 합니다.
OCI는 OCIStmtBindByName 또는 OCIStmtBindByPos를 통해 명시적으로 문자열의 문자셋을 지정할 수 있으므로, 바인드 변수를 사용하면 입력이 정상적으로 처리됩니다.

 

Orange 에서 Insert 구문에 대해서도 중국어에 대해 직접 입력대신, Bind 변수 사용시 정상적으로 입력되는 것을 확인하실수 있습니다.

 

예를 들어,

SELECT A, B, C WHERE C=N'중국어';  대신

SELECT A, B, C WHERE C=:a; 입력후 :a 에 대해 '중국어' 를 입력하시면 정상적으로 사용 가능합니다.

 

 

해당 현상은 사내에서 증상 재현을 하여 시도해본 결과 아래와 같았습니다.

MySQL ODBC Driver 8.0.40  ==> 오류

MySQL ODBC Driver 8.0.32  ==> 오류

MySQL ODBC Driver 8.0.22 ==> 정상 출력


innodb status 외에 다른 메타 정보를 조회 시에도 비슷한 증상이 발생할수 있으며, 

Orange -Option > Common -> Session -> Long Size를 적절하게 조정 하였음에도 ( 기본값 80이 아닌 큰 값 ) 

값이 출력되지 않는다면 ODBC Driver의 버전 교체를 시도해 보시기 바랍니다.


웨어밸리 회원가입 시 무상 제공!

Orange v7.0은 최초 설치 후 라이센스 매니저를 통해 트라이얼을
요청할 수 있습니다, 28일간의 트라이얼 사용 후, 구입 문의 바랍니다.

  • 대표전화
    1660-1675

  • 기술 문의
    02-6931-1734

  • 오렌지 문의
    070-8666-8175

  • 라이선스 문의
    02-6931-1728