인턴을 하면서 오라클과 관련되어 알게된 내용을 정리하기 위한 포스팅입니다.
데이터베이스를 관리하는 도구로 인턴했던 곳에서는 Toad를 사용했다.
토드를 처음 열면 다음과 같다.
상단의 아이콘 중 다음 아이콘을 보면
플러그 처럼 생긴 아이콘이 있다.
바로 DB에 연결하는 세션을 만들거나 끊는 아이콘이다.
좌측에 활성화 된 아이콘을 눌러보자.
이런 창이 뜨게 된다.
**MMAL 데이터 베이스는 테스트용 데이터 베이스이고
***P_DEV 데이터 베이스는 ***P 이라는 운영서버를 위한 개발서버이다.
이제 접속할 서버를 선택하고 User와 PW를 입력하게 되는데,
사실 처음에는 지금 왼쪽에 보는 것 같은 리스트가 없어서 처음부터 등록을 해주어야한다.
나는 지금 TNS를 사용하고 있어서 저렇게 TNS탭에서 선택해 접속하지만
Direct 탭을 눌러서 직접 서버 정보를 넣을 수도 있다.
내가 이해한 TNS는 DNS와 비슷하다.
모든 사이트의 IP주소를 숫자로 기억하기 힘드니, 그 IP주소에 도메인 이름을 붙여주듯
TNS는 접속할 DB 서버 IP주소와 포트, 서비스 이름을 매번 기억하기 힘드니
그 묶음에 하나의 별명을 붙여줘서 DB에 접속할 때는 해당 별명으로 접속할 수 있게 만들어준다.
TNS의 설정 방법은 오라클 설치 경로에 따라 다르겠지만
나의 경우에는
C:\Oracle\C:\Oracle\product\11.2.0\client_1\network\admin
다음과 같은 경로에 tns설정 파일이 있었다.
'tnsnames.ora' 라는 파일을 메모장으로 열어 수정해주면 된다.
다음과 같이 되어있다.
**MAL DB서버는 공인 IP주소로 되어있어 회사 밖에서도 접속할 수 있지만,
***PDEV DB서버는 사설IP주소로 되어있어 회사 내부 네트워크에서만 접속할 수 있다.
설정을 마치고 TNS를 설정하거나, 위 정보를 그냥 Direct에 입력해두면
다음부터는 왼쪽 DB서버 리스트에서 이전에 접속했던 것을 선택하여 접속할 수 있다.
(물론 아이디, 비밀번호를 기억하게 설정해야 한다.)
연결에 성공하면 다음과 같은 화면이 나온다.
상단에 여러 아이콘으로 버튼이 쭈르륵 있고,
하단이 3개의 창으로 나누어져 있다.
첫번째 창은 SQL 쿼리를 작성하는 텍스트 에디터 창이고
두번째 창은 SQL쿼리의 조회결과를 볼 수 있는 그리드 창
세번째 창은 아직 활용해본 적이 없어서 모르겠다.
메뉴 표시줄의 'File' 메뉴 아래에
요런 아이콘이 있다.
왼쪽은 새로운 SQL 입력 스크립트창을 띄우는 버튼이고
오른쪽은 데이터베이스의 스키마를 조회하는 버튼이다.
두번째 버튼을 매우 많이 활용했었다.
두번째 버튼을 클릭하면
다음과 같이 현재 이 DB에 존재하는 모든 테이블의 정보를 볼 수 있다.
테이블 뿐만 아니라, 시퀸스, 스케쥴러, 잡 등을 모두 한번에 볼 수 있다.
좌측의 이 부분은 필터기능이다.
검색이라고 생각해도 좋지만, 와일드카드 문자를 활용하여 검색보다 더 자세하게 설정할 수 있다.
기본값은 * 으로 '모든 이름의 테이블을 조회'하는 조건이다.
만약 TCM 이라는 글자가 들어간 테이블이 보고싶다면
'*TCM*' 다음과 같이 검색하면 되고,
TCM으로 시작하는 테이블이 보고싶다면
'TCM*' 이렇게 하면된다.
TCM으로 시작하고 이후에 한글자가 있는 테이블이 보고싶다면
'TCM?' 라고 하면된다.
다음과 같이 검색해서 테이블을 선택할 수 있다.
테이블을 더블클릭하면 테이블의 구조를 수정할 수 있다.
더블클릭하면 Alter Table 이라는 탭이 생기면서 다음과 같은 창이 뜬다.
이곳에서 PK와 컬럼의 ID는 수정할 수 없다.
PK를 수정하려면 이 테이블의 모든 PK를 지우고 이 창으로 들어와서 다시 설정해야한다.
(아니면 그냥 쿼리문으로 다 해결할 수도 있다.)
컬럼의 추가와 삭제는 하단의 Add Col, Delete Col 을 눌러서 하거나
키보드의 Insert, Delete 키를 이용해 할 수 있다.
에디터 창으로 들어와보자
다음과 같은 쿼리를 작성해보았다.
그리고 키보드의 F9를 누르면 바로 쿼리를 실행시켜볼 수 있다.
하나의 에디터에 여러개의 쿼리를 쓸 수 있다.
각 쿼리의 구분은 ; 으로 해줄 수 있고,
f9를 누르면 ;으로 구분된 쿼리중 커서 위치를 기준으로 현재 쿼리를 골라 실행시켜준다.
또는 실행할 쿼리를
이렇게 선택해서 f9를 누르면 해당 쿼리만 실행된다.
실행결과가 아래처럼 Data Grid에 뜬다.
마지막으로 커밋과 롤백이 있다.
DB에 데이터를 넣거나 수정하거나 삭제를 한 후에는
Commit을 해야 변경내용을 저장할 수 있다.
커밋하지 않고 수정한 내용은 Rollback을 해서 되돌릴 수 있다.
맨 왼쪽의 빨간 화살표가 커밋버튼
두번째 파란 화살표가 롤백버튼
세번째는 아까 말했던 새로운 세션을 연결하는 버튼
이 버튼으로 세션을 추가해도 기존 세션은 남아있기 때문에
여러 DB를 동시에 접속할 수 있다.
네번째는 현재 세션을 종료하는 버튼이다.
다음에는 토드에서 작성한 쿼리를 델파이로 옮기는 법을 포스팅할 것이다.