모든지 기록하자!

[Oracle] Oracle 시작하기( user생성 , 기본 테이블) 본문

Database

[Oracle] Oracle 시작하기( user생성 , 기본 테이블)

홍크 2021. 5. 15. 18:31
728x90

 

오라클을 설치하면 기본적으로 제공하는 테이블이 있다.

하지만 나는 어찌 된 영문인지 기본 테이블이 존재하지 않았다...

 

이참에 처음부터 기본 테이블 생성까지 해보려고 한다.

 

윈도 + R키로 실행창을 띄운 후 cmd를 입력해 명령 프롬프트를 실행한다.

system권한으로 접속하기 

sqlplus입력 후 DB에 접속한다. 

user-name에 system 입력 후 엔터

password는 오라클 최초 설치 때 설정했던 값을 입력한다.

system 권한으로 DB에 접속하게 된다.

 

SCOTT USER 새로 생성하기

-- 시스템 권한으로 접속하여 SCOTT USER를 생성 한다. 
 SQL> CREATE USER scott IDENTIFIED BY tiger
      DEFAULT TABLESPACE users
      TEMPORARY TABLESPACE temp;
  
-- 권한 부여
SQL> GRANT connect, resource TO scott;

 

다른 기본적인 실행문에 대해서도 알아보자

계정 생성

CREATE USER 유저ID IDENTIFIED BY "비밀번호";

계정 비밀번호 변경

ALTER USER "유저ID" IDENTIFIED BY "비밀번호";

계정 삭제

DROP USER "유저ID" CASCADE;

모든 계정 조회

SELECT * FROM ALL_USERS;

SELECT * FROM DBA_USERS;

다른 실행문들은 뒤에서 더 다뤄보기로 하자

SCOTT USER 잠금 해제

오라클을 설치하면 SCOTT 사용자는 사용할 수 없게 잠겨있다.

시스템 권한으로 DB에 접근한 상태로 다음 명령문을 실행한다.

SQL> ALTER USER scott 
     IDENTIFIED BY tiger 
     ACCOUNT UNLOCK;

 

exit; 입력해서 탈출 후 다시 sqlplus 실행한다.

실행창에 sqlplus를 입력해 DB에 접속한다.

user-name에 조금 전 생성했던 scott 입력 후 엔터 

비밀번호는 통상 tiger로 입력해도 빈칸으로 보이기 때문에 당황하지 말고 엔터

오라클 DB에 접속됐다는 안내문이 나온다.

 

demo경로를 직접 입력했지만 계속된 실패로 인해 SQL Developer에 직접

아래 스크립트를 실행시켜버렸다.

 

DROP TABLE EMP;
DROP TABLE DEPT;
DROP TABLE BONUS;
DROP TABLE SALGRADE;
 
CREATE TABLE EMP
       (EMPNO NUMBER(4) NOT NULL,
        ENAME VARCHAR2(10),
        JOB VARCHAR2(9),
        MGR NUMBER(4),
        HIREDATE DATE,
        SAL NUMBER(7, 2),
        COMM NUMBER(7, 2),
        DEPTNO NUMBER(2));
 
INSERT INTO EMP VALUES
        (7369, 'SMITH',  'CLERK',     7902,
        sysdate,  800, NULL, 20);
         
INSERT INTO EMP VALUES
        (7499, 'ALLEN',  'SALESMAN',  7698,
        sysdate, 1600,  300, 30);
         
INSERT INTO EMP VALUES
        (7521, 'WARD',   'SALESMAN',  7698,
        sysdate, 1250,  500, 30);
         
INSERT INTO EMP VALUES
        (7566, 'JONES',  'MANAGER',   7839,
        sysdate,  2975, NULL, 20);
         
INSERT INTO EMP VALUES
        (7654, 'MARTIN', 'SALESMAN',  7698,
        sysdate, 1250, 1400, 30);
         
INSERT INTO EMP VALUES
        (7698, 'BLAKE',  'MANAGER',   7839,
        sysdate,  2850, NULL, 30);
         
INSERT INTO EMP VALUES
        (7782, 'CLARK',  'MANAGER',   7839,
        sysdate,  2450, NULL, 10);
INSERT INTO EMP VALUES
        (7788, 'SCOTT',  'ANALYST',   7566,
        sysdate, 3000, NULL, 20);
         
INSERT INTO EMP VALUES
        (7839, 'KING',   'PRESIDENT', NULL,
        sysdate, 5000, NULL, 10);
         
INSERT INTO EMP VALUES
        (7844, 'TURNER', 'SALESMAN',  7698,
        sysdate,  1500,    0, 30);
         
INSERT INTO EMP VALUES
        (7876, 'ADAMS',  'CLERK',     7788,
        sysdate, 1100, NULL, 20);
         
INSERT INTO EMP VALUES
        (7900, 'JAMES',  'CLERK',     7698,
        sysdate,   950, NULL, 30);
         
INSERT INTO EMP VALUES
        (7902, 'FORD',   'ANALYST',   7566,
        sysdate,  3000, NULL, 20);
         
INSERT INTO EMP VALUES
        (7934, 'MILLER', 'CLERK',     7782,
        sysdate, 1300, NULL, 10);
 
CREATE TABLE DEPT
       (DEPTNO NUMBER(2),
        DNAME VARCHAR2(14),
        LOC VARCHAR2(13) );
 
INSERT INTO DEPT VALUES (10, 'ACCOUNTING', 'NEW YORK');
INSERT INTO DEPT VALUES (20, 'RESEARCH',   'DALLAS');
INSERT INTO DEPT VALUES (30, 'SALES',      'CHICAGO');
INSERT INTO DEPT VALUES (40, 'OPERATIONS', 'BOSTON');
 
CREATE TABLE BONUS
        (ENAME VARCHAR2(10),
         JOB   VARCHAR2(9),
         SAL   NUMBER,
         COMM  NUMBER);
 
CREATE TABLE SALGRADE
        (GRADE NUMBER,
         LOSAL NUMBER,
         HISAL NUMBER);
 
INSERT INTO SALGRADE VALUES (1,  700, 1200);
INSERT INTO SALGRADE VALUES (2, 1201, 1400);
INSERT INTO SALGRADE VALUES (3, 1401, 2000);
INSERT INTO SALGRADE VALUES (4, 2001, 3000);
INSERT INTO SALGRADE VALUES (5, 3001, 9999);
 
 
COMMIT;

 

사진처럼 테이블이 정상적으로 생성됐는지 확인해보자

이제 기본 테이블을 이용해 Oracle에 한발 더 다가가자!

728x90

'Database' 카테고리의 다른 글

[Oracle] WHERE절과 비교연산자와 예제  (0) 2021.05.26
[Oracle] SELECT문과 예제  (0) 2021.05.26
[Oracle] Standard Function  (0) 2021.05.25
[Oracle] 기본 입출력  (0) 2021.05.25
[Oracle] 기본 SQL  (0) 2021.05.25
Comments