Oracle

KDG·2021년 1월 15일
0

Oracle Database

미국 오라클(Oracle)사의 관계형 데이터베이스 관리 시스템의 이름이다. 현재 유닉스 환경에서 가장 널리 사용되는 RDBMS이다. 검색이나 업데이트용 언어로는 국제표준화기구의 표준 구조화 조회 언어와 PL/SQL을 지원

오라클 접속

  • 오라클을 설치하고 path를 설정하면 cmd 창에서 sqlplus로 오라클에 접속할 수 있다.

  • 오라클을 설치하면 기본적으로 생성되는 계정이 있다.

    • 시스템 권한을 가진 계정(SYS, SYSTEM)
      • SYS/as sysdba
      • SYSTEM/설정한 비밀번호
    • 교육용 계정(HR, scott)
      • HR/설정한 비밀번호
      • scott/TIGER
    • 계정 비밀번호는 처음 설치할 때 설정한 비밀번호

오라클 계정

  • 계정 확인 , 계정 변경
SHOW USER  : 현재 접속중인 계정 확인
conn  : 계정 변경
  • 생성된 계정 확인
SELECT * FROM ALL_USERS; : 모든 계정의 정보 확인
SELECT * FROM DBA_USERS; : 모든 계정의 정보 확인
  • 새로운 계정 생성 / 삭제
CREATE USER [계정이름] IDENTIFIED BY [계정비밀번호]; : 계정 생성

DROP USER [계정이름];  : 계정 삭제
  • 계정 비밀번호 변경
ALTER USER [계정이름] IDENTIFIED BY [새로운 비밀번호];
  • 계정 권한
  • 새로운 계정에 권한을 설정하기 위해선 관리자 계정(SYS)으로 접속해야 한다.

  • 시스템 권한 종류

    • CREATE USER : 데이터 베이스 유저 생성 권한
    • SELECT ANY TABLE : 모든 유저의 테이블 조회 권한
    • CREATE ANY TABLE : 모든 유저의 테이블 생성 권한
    • CREATE SESSION : 데이터베이스 접속 권한
    • CREATE TABLE : 뷰 생성 권한
    • CREATE PROCED USER : 프로시저 생성 권한
    • CREATE SEQUENCE : 시퀀스 생성 권한
    • SYSDBA : 데이터베이스를 관리하는 최고 권한
    • SYSOPER : 데이터베이스를 관리하는 권한
  • 권한 부여 / 제거 / 조회

GRANT CREATE [권한명1], [권한명2] TO [계정이름];  : [계정이름]에 권한 부여

REVOKE [권한명1], [권한명2] FROM [계정이름];  : [계정이름]에 부여된 권한 제거

SELECT * FROM USER_TAB_PRIVS_MADE;
SELECT * FROM USER_TAB_PRIVS_RECD;  : 계정 권한 조회

데이터 타입

  • CHAR와 VARCHAR2
    CHAR는 고정 길이의 문자열을 저장하는데 입력된 문자 길이와 상관없이 정해진 길이 만큼 메모리를 생성한다.
    ex) CHAR(10)을 지정하고 'oracle'이라는 데이터를 넣으면 아래와 같이 10칸이 생성되고 글자가 없는 메모리는 공백으로 채워진다

    VARCHAR2는 가변적인 길이의 문자열을 저장하는데 문자 길이만큼 메모리를 생성한다.
    ex) VARCHAR2(50)을 지정하고 'oracle'이라는 데이터를 입력했더라도 아래와 같이 입력된 글자의 길이만큼 메모리를 차지한다. 메모리 낭비를 줄일 수 있다.
  • NUMBER(p,s)
    p(precision)는 소수점을 포함한 전체 자리수를 의미하고, s(scale)는 소수점 이하 자리수를 지정한다.
    만약 p와 s를 모두 생략하면 입력한 데이터 값만큼 공간이 할당
    그리고 p만 지정한 경우는 정수 형태의 값만 저장되고, s까지 지정해주면 123.45와 같은 실수 형태의 값도 저장된다.

오라클에서 사용가능한 SQL문

** 참고

0개의 댓글