2015. 11. 30. 18:15

-- 테이블 목록 조회
SELECT OBJECT_NAME

FROM USER_OBJECTS
WHERE OBJECT_TYPE ='TABLE'
ORDER BY OBJECT_NAME

-- 칼럼 목록 조회
SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE, NULLABLE

FROM COLS
-- WHERE TABLE_NAME NOT LIKE '%SYNC'
ORDER BY TABLE_NAME, COLUMN_ID

 

※ Oracle SID 확인
SQL> select instance from v$thread;

※ Oracle DB_NAME 확인
SQL> select name from v$database;

※ Oracle User 확인
SQL> select * from all_users;

※ 등록된 User 목록 보기
SQL> select username, user_id from dba_users order by username;

※ User가 소유한 모든 테이블 보기
SQL> select table_name from user_tables;

※ 사용자 정보 확인
SQL> select username, default_tablespace,temporary_tablespace from dba_users;

※ 오브젝트 조회
SQL> select * from all_objects where object_name like '명';

※ 테이블 조회
SQL> select * from all_tables where table_name like '명';

※ 시퀀스 정보 보기
SQL> select * from user_sequences;

※ 시노님 조회
SQL> select * from all_synonyms where synonym_name='명';

※ 테이블 인덱스 정보 조회
SQL> select * from user_indexes where table_name='테이블명';

※ 테이블의 컬럼 정보 조회
SQL> select * from all_tab_columns where table_name='테이블명';

※ table comment 쿼리
SQL> select * from all_tab_comments where table_name='테이블명';

※ column comment 쿼리
SQL> select * from all_col_comments where table_name='테이블명';

 

cf) http://blog.daum.net/dmno21/28

'Database' 카테고리의 다른 글

10G purge 휴지통 비우기/복원 기능  (0) 2015.05.12
sqlplus 백스페이스 사용  (0) 2014.10.19
Flashback Technology  (0) 2014.10.15
Oracle Event Tour  (0) 2014.10.10
AWR Report  (0) 2014.09.29
Posted by 아도니우스
2015. 5. 12. 08:43

   휴지통(Recycle Bin) 에 들은 테이블 조회

   SQL> show recyclebin;

            휴지통의 모든 내용이 비워집니다.

   SQL> purge recylcebin;

            삭제된 테이블은 되사

   SQL> flashback table 테이블명 to before drop;

           만약, 특정 테이블을 휴지통에 남기지 않고 모두 삭제하려면..

   SQL> drop table 테이블명 purge;

          purge 문 없이 그냥 drop 한 후에는

   SQL> purge table 테이블명;

'Database' 카테고리의 다른 글

Oracle schema 조회  (0) 2015.11.30
sqlplus 백스페이스 사용  (0) 2014.10.19
Flashback Technology  (0) 2014.10.15
Oracle Event Tour  (0) 2014.10.10
AWR Report  (0) 2014.09.29
Posted by 아도니우스
2014. 10. 19. 02:15

# sqlplus에서 backspace사용법

두가지 방법이 이다.

1) 쉘 환경변수에서(.bash_profile, .profile, .bashrc)에 다음 명령어 추가

stty erase ^H

-- 여기서 ^H는 키보드로 따로따로 입력하는것이 아니고 쉘상에서 백스페이스를 누르는 것임 ^?도 마찬가지

이렇게 하면 세션이 종료되고 다시 시작해도 적용됨, 걍 커맨드 상에서만 입력하면 현재 새션에서만 적용됨


2) sqlplus에서 host stty erase ^H 입력 --이것도 ^H는 마찬가지


# sqlplus의 환경설정 파일 보기

sqlplus 환경설정 파일 위치 : $ORACLE_HOME/sqlplus/admin/glogin.sql

sqlplus 의 설정변수 보기 : SQL> show all -- all 위치에 각각의 변수 명을 입력해도 볼수 있음

ed명령시 에디터 설정하기 : SQL> define_editor=vi --개인적으로 vi가 제일 편함


# 오라클 에러 메시지 혹은 기타 메시지의 한글이 깨져보이는 경우

로그인쉘의 NLS_LANG 환경변수값을 확인

'Database' 카테고리의 다른 글

Oracle schema 조회  (0) 2015.11.30
10G purge 휴지통 비우기/복원 기능  (0) 2015.05.12
Flashback Technology  (0) 2014.10.15
Oracle Event Tour  (0) 2014.10.10
AWR Report  (0) 2014.09.29
Posted by 아도니우스
2014. 10. 15. 22:56

'Database' 카테고리의 다른 글

10G purge 휴지통 비우기/복원 기능  (0) 2015.05.12
sqlplus 백스페이스 사용  (0) 2014.10.19
Oracle Event Tour  (0) 2014.10.10
AWR Report  (0) 2014.09.29
Control file  (0) 2014.09.19
Posted by 아도니우스
2014. 10. 10. 17:45

'Database' 카테고리의 다른 글

sqlplus 백스페이스 사용  (0) 2014.10.19
Flashback Technology  (0) 2014.10.15
AWR Report  (0) 2014.09.29
Control file  (0) 2014.09.19
Oracle SQL 블록 구조  (0) 2014.09.17
Posted by 아도니우스
2014. 9. 29. 20:29

cf) ADDM (AUTOMATIC DATABASE DIAGNOSTIC MONITOR)

'Database' 카테고리의 다른 글

Flashback Technology  (0) 2014.10.15
Oracle Event Tour  (0) 2014.10.10
Control file  (0) 2014.09.19
Oracle SQL 블록 구조  (0) 2014.09.17
Oracle Function(산술, 문자열, 날짜, 날짜 포맷)  (0) 2014.09.13
Posted by 아도니우스
2014. 9. 19. 19:05

...

'Database' 카테고리의 다른 글

Oracle Event Tour  (0) 2014.10.10
AWR Report  (0) 2014.09.29
Oracle SQL 블록 구조  (0) 2014.09.17
Oracle Function(산술, 문자열, 날짜, 날짜 포맷)  (0) 2014.09.13
GRANT, REVOKE  (0) 2014.09.11
Posted by 아도니우스
2014. 9. 17. 11:08

PL/SQL은 프로그램을 논리적인 블록으로 나누는 구조화 된 블록 언어 이다.

PL/SQL 블록은 선언부(선택적), 실행부(필수적), 예외 처리부(선택적)로 구성되어 있고, BEGINEND 키워드는 반드시 기술해 주어야 한다.

PL/SQL 블록에서 사용하는 변수는 블록에 대해 논리적으로 선언할 수 있고 사용할 수 있다.

    • DECLARE
    • - Optional
    • - Variables, cursors, user-defined exceptions
  • BEGIN
    • - Mandatory
    • - SQL Statements
    • - PL/SQL Statements
  • EXCEPTION
    • - Actions to perform when errors occur
  • END
    • - Mandatory

    프로시저(Procedure)란?

    특정 작업을 수행하는, 이름이 있는 PL/SQL BLOCK 이다.

    매개 변수를 받을 수 있고, 반복적으로 사용할 수 있는 BLOCK이다. 

    프로시저 문법

     CREATE OR REPLACE procedure name

       IN argument

       OUT argument

       IN OUT argument

    IS

      [변수의 선언]

    END;

    프로시저 작성 예제 

     SQL> CREATE OR REPLACE PROCEDURE update_sal

             /* IN Parameter */

            (v_empno IN NUMBER)

            IS

            BEGIN

                UPDATE emp

                SET sal = sal * 1.1

                WHERE empno = v_empno;

                COMMIT;

           END update_sal;

           /

    프로시저 실행 예제

     SQL> EXECUTE update_sal(7369);

     PL/SQL 처리가 정상적으로 완료되었습니다.


    PL/SQL 참고사이트 : http://jhbench.tistory.com/294 

    'Database' 카테고리의 다른 글

    AWR Report  (0) 2014.09.29
    Control file  (0) 2014.09.19
    Oracle Function(산술, 문자열, 날짜, 날짜 포맷)  (0) 2014.09.13
    GRANT, REVOKE  (0) 2014.09.11
    Partition 조회  (0) 2014.09.11
    Posted by 아도니우스
    2014. 9. 13. 12:00

    * 산술함수
    abs(n) : n의 절대값
    ceil(n) : n보다 크거나 같은 최소정수
    cos(n) : n의 cosine 값
    cosh(n) : n의 hyperbolic cosine 값
    exp : e의 n지수승
    floor(n) : n보다 작거나 같은 최대정수
    mod(m,n) : m을 n으로 나눈 나머지
    power(m,n) : m의 n지수승
    sign(n) : n<0이면 -1 / n=0이면 0 / n>0이면 1
    sin(n) : n의 sine값
    sqrt(n) : n의 루트근 / n<0이면 null
    tan(n) : n의 tangent
    greatest(a,b,c..) : 그중 가장 큰 값
    least(a,b,c...) : 그중 가장 작은 값
    round(n,2) : n을 소숫점 2자리에서 사사오입한 값
    to_number : 숫자를 포함하는 char값을 number로 변환
    trunc : 소숫점이하 ~ 자리에서 잘사한 값

     

    * 문자열함수
    decode(GRADE, 'A', 4, 'B', 3, 0) : GRADE필드값이 'A'이면 4, 'B'이면 3, 아니면 0
    initcap : 단어의 첫문자를 대문자로
    instr(LOC, '') : LOC에서 처음으로 나타나는 공백의 위치를 리턴
    length : 길이를 리턴
    lower : 소문자로 변환
    upper : 소문자를 대문자로 변환
    substr(GRADE, 1, 2) : GRADE필드값의 처음 2문자 리턴
    dump : oracle 내부 저장형식
    user : 현재 oracle 에 접속한 사용자명
    replace(char1, str1, str2) : char1에서 str1을 str2로 변환

     

    * 날짜포맷
    YYYY또는 SYYY : 년의표시. S를 지정하면 기원전에 -붙는다
    YYY, YY, Y : 년의 아래 3자리, 2자리, 1자리
    SYEAR or YEAR : 년을 절차로 표시. S를 지정하면 기원전에 -
    Q : 년의 1/4
    MM : 월
    MONTH or MON : 월의 명칭 또는 3문자의 단축형
    DDD, DD, D : 년,월,주의 몇번째 날인가 표시
    DAY, DY : 요일 또는 3문자의 단축형
    AM, PM : 오전(AM)과 오후(PM)의 표시
    HH 또는 HH12 : 시각(1~12)
    HH24 : 시각(0~23)
    MI : 분
    SS : 초

     

    * 날짜함수
    add_months(D, N) : 날짜 D에 N개월을 가산한다
    greatest(D1, D2) : D1과 D2에서 늦은쪽의 날짜
    least(D1, D2) : D1과 D2에서 빠른쪽의 날짜
    last_day(HIREDATE) : HIREDATE가 포함되어 있는 월의 마지막 일
    month_between(A, B) : B부터 A까지의 월 수
    next_day(hdate, 'FRIDAY') : hdate후의 첫 금요일
    round(hdate) : hdate를 일을 단위로 하여 사사오입
    to_char(FDATE, 'YYYY-MM-DD') : FDATE날짜의 값을 우측 포맷형식으로 문자열변환
    to_date(FDATE, 'YYYY-MM-DD') : 우측 포맷형식으로 된 문자열을 날짜타입으로 변환

     

    * 존재를 테스트하는 서브쿼리 : EXISTS

    - 서브쿼리가 적어도 1행이상 리턴시 참. 아니면 거짓

     

    * 합집합, 교집합, 차집합

    UNION : 합집함. 동일한 행 리턴시 한건으로 표시

    UNION ALL : 중복된 값도 모두 표시

    INTERSECT : 교집합. 양쪽 쿼리 모두에서 리턴된 행 표시

    MINUS : 차집합. 앞의 쿼리에서는 리턴되지만 뒤의 쿼리에서는 리턴되지 않는 행을 리턴

    ※ 참고사이트 : http://ggari.tistory.com/29

    'Database' 카테고리의 다른 글

    Control file  (0) 2014.09.19
    Oracle SQL 블록 구조  (0) 2014.09.17
    GRANT, REVOKE  (0) 2014.09.11
    Partition 조회  (0) 2014.09.11
    Database Listener, Instance  (0) 2014.08.29
    Posted by 아도니우스
    2014. 9. 11. 21:25

    ORACLE/PLSQL : GRANT/REVOKE PRIVILEGES

    Learn hot to grant and revoke privileges in Oracle with syntax and examples.


    Grant PRIVILEGES ON TABLE

    Syntax

    Grant privileges ON object To user;


    REVOKE PRIVILEGES ON TABLE

    Syntax

    REVOKE privileges ON object FROM user;


    ※ 참고사이트 : http://www.techonthenet.com/oracle/grant_revoke.php

    'Database' 카테고리의 다른 글

    Oracle SQL 블록 구조  (0) 2014.09.17
    Oracle Function(산술, 문자열, 날짜, 날짜 포맷)  (0) 2014.09.13
    Partition 조회  (0) 2014.09.11
    Database Listener, Instance  (0) 2014.08.29
    DB instance 확인  (0) 2014.08.19
    Posted by 아도니우스