반응형

오라클 11g를 설치하면 이제 데이터를 만들어 볼텐데요.

이전에는 DB를 설치하면 자동으로 샘플 테이블이 존재하였지만 이제는 그렇지 않습니다.

 

그래서 오라클 공부하기에 앞서 테이블 생성과 샘플 데이터를 만들어 보겠습니다.

만들 테이블 명은 EMP(직원), DEPT(부서), BONUS(연봉), SALGRADE(연봉등급) 입니다.

 

이 테이블을 만들고 데이터까지 한번 입력해 보겠습니다.

 

접속 계정 생성

일단 테이블을 만들기 전에 접속 계정을 만들어 보겠습니다.

윈도우의 커맨드 창을 실행한 뒤

sqlplus 명령어를 입력하여 오라클을 실행해줍니다.

 

여기에 권한이 필요한 system 계정으로 로그인해 줍니다.

[비밀번호를 잊어버리셨으면 이전 글을 참고해주시기바랍니다.]

 

create user [로그인 계정명] identified by [로그인 비밀번호]

 

위의 명령어를 통해 계정을 생성해 줍니다.

 

생성을 마치고 해당 내역으로 로그인한 모습입니다.

user [아이디] lacks CREATE SESSION privilege; logon denied

 

위의 메세지는 세션 권한이 없기 때문에 로그인이 되지 않는 모습인데요.

이 권한을 부여해야합니다.

 

Session 권한 처리

grant create session to [계정명]

위의 명령어를 통해 해당 계정에 권한을 부여해 줍니다.

 

Grant Succeedded.

문구가 나오게 되면 성공한 것이므로 해당 아이디로 다시 로그인하면 됩니다.

 

샘플 스크립트.txt
0.00MB

샘플 테이블 생성

첨부한 스크립트를 통해 테이블을 생성해 보겠습니다.

CREATE TABLE EMP 명령어를 입력하였지만

 

insufficient privileges 메시지와 함께 에러가 나는 모습입니다.

에러 내역은 역시나 권한이 불충분 하다는 뜻입니다.

 

grant create table to [계정명]

위의 Grant 명령어는 권한 부여 기능이며

해당 계정에 create 권한을 부여한다는 뜻입니다.

 

Table Space 생성

CREATE TABLESPACE [명칭] DATAFILE [파일경로] SIZE [사이즈] AUTOEXTEND ON NEXT [늘릴 사이즈];

 

Table Space는 DB 테이블의 공간을 나타내는 것으로 

위의 명령어를 실행하게 되면 해당 파일 경로에 물리적인 공간이 테이블 스페이스가 됩니다.

 

위의 명령어는 최초 사이즈는 50mb이며 추가적으로 10mb씩 늘어난 다는 뜻입니다.

ALTER USER [계정명] DEFAULT TABLESPACE [테이블 스페이스 명칭]

 

위의 명령어로 생성한 TABLESPACE에 내가 사용한 계정을 default로 설정한 모습입니다.

 

grant unlimited tablespace to [계정명]

위와 같이 설정하면 테이블 스페이스에 제약이 없도록 할 수 있습니다.

계정생성이 안될 경우 위와 같이 설정해 보시기 바랍니다.

 

계정 생성도 완료했고 해당 계정의 테이블 스페이스도 확보하였으니

이제 데이터를 저장해 보겠습니다.

 

데이터 입력하기

Oracle SQL Developer를 이용하여 생성한 테이블을 조회한 모습입니다.

여기에 첨부한 SQL을 이용하여 데이터를 INSERT 해줍니다.

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);

EMP 테이블에 넣을 샘플 데이터 인데요.

[첨부된 파일에는 더 많은 스크립트가 있으니 참고하시면 됩니다.]

 

INSERT 후 조회한 데이터의 모습입니다.

첨부한 스크립트에는 DEPT와 BONUS등의 정보도 포함되어 있으니

참고하여 실행해 보시기 바랍니다.

반응형

+ Recent posts