PL/SQL

반응형
pl/sql developer 사용자 환경 설정

1. developer restart시 마지막 저장된 설정으로 화면 로딩.

tool - preferences - user interface - options - Auto save desktop     CHECK

2. table name 자동 완성.

tool - preferences - user interface - Editor - Auto Replace - Enabled    CHECK

3. cursor line query 실행.

tool - preferences - Window Types - SQL Window - Auto Select statement     CHECK

4. editor line 표기.

tool - preferences - Window Types - Show gutter[line number]     CHECK

5. 세션별 백그라운드 컬러 설정.

tool - preferences - User interface - Appearance - Connection Indicators 설정

반응형
반응형
PL/SQL Developer 프로시저(Procedure) Debugging

 

1. 접속한 세션에 디버깅 권한 주기

grant debug connect session to '아이디';
grant debug any procedure to '아이디';

위 과정이 끝났다면 PL/SQL Developer를 이용해 프로시저나 패키지내 펑션을 디버깅 한다.

 

프로시저(또는 패키지)를 선택하고 마우스 오른쪽 버튼을 눌러Add Debug information에 체크한다. 간혹 체크가 되어 있어도 디버깅이 되지 않는 경우가 있다. 이런 경우에는 체크가 되어 있더라도 다시 Add debug information을 체크한다. 

패키지의 경우 Spec & Body로 나뉘어 있으므로 View Spec & Body를 클릭한다. (프로시저의 경우 바로 View를 클릭)
브레이크 포인트(Break Point)는 미리 지정이 가능하므로 소스에서 Ctrl + B키로 찍어놓을 수 있다. 

디버깅을 원하는 프로시저나 펑션에 우클릭 한 후, Test 버튼을 누른다.

Test 화면이 나오면 프로시저 구동을 위한 plsql 구문이 나온다. 하단에 파라미터 값을 설정하고 왼쪽 상단의 

Start Debugger(F9) 버튼을 누른다.

Step 버튼이 활성화 되면 단계별로 Debugging이 가능하다. 왼쪽 하단에 변수명을 넣으면 값이 보이고 변수 위에 마우스를 올려도 팝업으로 값을 확인할 수 있다.

      Crrl + B 클릭으로 브레이크 포인트

Run : Ctrl + R

Step Into : Ctrl + N

Step Over : Ctrl + O

Step Out : Ctrl + T

Run to next Exception

 

 

반응형
반응형
Oracle Instantclient 적용 가이드

오라클 기반 개발 환경을 로컬에 구성하려면 오라클 클라이언트를 로컬환경에 설치해야 한다.

하지만 클라이언트 설치 없이 접속이 가능하도록 "instant Client"를 오라클에서 내놓았다.. 👍🏽👍🏽

설치가 필요없고 오라클 사이트에서 개발환경에 맞는 버전을 다운받은 후 폴더에 저장하고 경로를 지정하면 아주 쉽게 Oracle 개발 환경을 구축할 수 있다.

 

1. 오라클 홈페이지에서 instant Client 다운 (환경에 맞는 32bit, 64bit)

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html" target="_blank" rel="noopener" data-mce-href="http:// http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html">http:// http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html 

 

Oracle Instant Client - Free tools and libraries for connecting to Oracle Database

 

www.oracle.com

 
2. 압축을 풀고 원하는 디렉토리에 위치
 D:/oracle_instantclient 
 
3. 환경변수 설정  

 

 기존 PATH에         -> ;D:/oracle_instantclient; 
 신규 ORACLE_HOME    -> D:/oracle_instantclient 
 신규 TNS_ADMIN 생성  -> D:/oracle_instantclient (TNSNAMES.ORA 경로 path)
 신규 NLS_LANG 생성   -> KOREAN_KOREA.AL32UTF8 / KOREAN_KOREA.KO16MSWIN949 (DB 캐릭터셋에 맞춰서)
 
⚠️ 주의사항

오라클 instantclient 를 8개월간 잘 사용했었는데 최근 신규 프로젝트에서NLS_LANG 과 관련된 문제에 직면하게 되었다. 클라이언트 버전으로 인스톨을 한 경우에는 NLS_CHARACTERSET 을 설치시에 설정을 하지만, 오라클 instantclient를 사용할 경우는 반드시 환경변수에 추가 하거나 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE 에 NLS_LANG 문자열 값으로 캐릭터 셋을 지정해 줘야 한다. 이 부분을 지나치면 오라클 패키지 및 프로시저 컴파일시에 정상적인 한글이 깨지는 상황 발생, 다른 동료가 생성한 패키지에 한글이 깨지는 경우가 발생...민폐 OTL ...꼭 챙기자!!

CHARACTERSET 조회

SELECT * FROM sys.PROPS$ WHERE NAME = 'NLS_CHARACTERSET'; 
 
4. instanClient 폴더에 TNSNAMES.ORA 파일 생성 후 저장.
EXTPROC_CONNECTION_DATA =   (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))     )     (CONNECT_DATA =       (SID = PLSExtProc)       (PRESENTATION = RO)     )   ) ALIAS =    (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = TCP)(HOST = DB 호스트)(PORT = 1521))     )     (CONNECT_DATA =       (SERVICE_NAME = DB네임)       (SRVR = DEDICATED)     )  ) 

DB Tool을 이용하여 접속이 정상적으로 되는지 테스트를 진행합니다.

현재 SQLGate, PL/SQL Developer 접속 테스트는 진행해봤고 나머지는 테스트 gogogo~!

 

반응형

+ Recent posts

반응형