1. 테이블 생성
1-1. 테이블 생성
CREATE TABLE 테이블명
(컬럼1, 타입
,컬럼2, 타입 )
CREATE TABLE PROFESSORS
(
PCODE CHAR(3) NOT NULL
, PNAME VARCHAR2(20) NOT NULL
, DEPARTMENT VARCHAR2(30)
, HIREDATE DATE NOT NULL
, POSITION VARCHAR2(15)
, SALARY NUMBER(10)
, CONSTRAINT TABLE1_PK PRIMARY KEY (PCODE )
);
1-2. PK 설정
PK 설정은 2가지가 있다. 테이블을 생성할 때 설정해주냐, 테이블을 생성하고 설정해주냐이다.
위의 테이블생성에는 테이블을 생성할 떄 PK를 설정해주고 있다. 그렇다면 테이블 생성이후에 PK설정은 어떻게 하는지 알아보겠다.
ALTER TABLE 테이블명 ADD CONSTRAINT PK명 PRIMARY KEY (컬럼명)
ALTER TABLE PROFESSORS ADD CONSTRAINT PK_PCODE PRIMARY KEY (PCODE);
1-3. 테이블 설명
테이블에 관한 설명을 넣어줄 수도 있다.
COMMENT ON COLUMN PROFESSORS.PCODE IS '교수 번호';
.
.
.
COMMENT ON COLUMN PROFESSORS.SALARY IS '급여';
1-4. 명령어를 사용하지 않고 테이블 만들기

테이블 마우스 우클릭

테이블에 필요한 컬럼명, 데이터유형, PK설정, NULL체크, 설명 등을 입력해주고 테이블을 만들 수 있다.

DDL을 눌러주면 생성하는 테이블의 명령문을 볼 수 있다.
2. 테이블 삭제
DROP TABLE 스키마.테이블명 CASCADE CONSTRAINTS
(CASCADE CONSTRAINTS를 붙이면 삭제할 테이블의 기본키와 UNIQUE 키를 참조하는 제약조건도 자동으로 삭제된다.) --다른 테이블에 제약조건이 걸려있으면 삭제가 언될 수 있다.
DROP TABLE PROFESSORS;
DROP TABLE PROFESSORS PURGE;
테이블을 실수로 삭제했다면 ROLLBACK 을 통해 되돌릴 수 있다.
하지만 PURGE를 붙여서 삭제할경우 자동 COMMIT이 되기 때문에 ROLLBACK을 통해 되돌릴 수 없다.
3. 테이블 수정
3-1. 컬럼 추가
ALTER TABLE 테이블명 ADD (컬럼명 타입)
ALTER TABLE PROFESSORS ADD (SUM_SAL NUMBER)
3-2. 컬럼 타입 변경
ALTER TABLE 테이블명 MODIFY (컬렴명 타입)
ALTER TABLE PROFESSORS MODIFY (SUM_SAL NUMBER(8));
3-3. 컬럼명 변경
ALTER TABLE 테이블명 RENAME COLUMN 변경전컬럼명 TO 변경후컬럼명
ALTER TABLE PROFESSORS RENAME COLUMN SUM_SAL TO SUM_SAL2
3-4. 컬럼 삭제
ALTER TABLE 테이블명 DROP COLUMN 컬럼명
ALTER TABLE PROFESSORS DROP COLUMN SUM_SAL2
4. 테이블 복사
CREATE TABLE 테이블명
AS SELECT 컬럼명, 컬럼명
FROM 복사할 테이블명
CREATE TABLE PROFESSORS
AS SELECT *
FROM PROFESSORS2;
--------------------------
CREATE TABLE PROFESSORS
AS
SELECT D.DEPTNO //서브쿼리르 사용해 복사가능
FROM DEPT D //복사할 컬럼명을 명시해줘야함(*쓰면안됨)
,EMP E
WHERE D.DEPTNO = E.DEPTNO ;'DataBase > Oracle' 카테고리의 다른 글
| [Oracle/오라클] 입력(Insert), 삭제(Delete), 수정(Update) (0) | 2022.10.10 |
|---|---|
| [Oracle/오라클] 권한부여(GRANT), 권한제거(REVOKE) (0) | 2022.10.07 |